100000 805513144
38998401 16228409 266085559 293487744 471510400 138613792 649258082 904651590 244678415 443174087 503924246 579288498 219903162 179297759 762760972 92837851 728185679 983905980 299473031 832979751 703447123 172561293 851338358 280283392 76301701 787972981 106503336 793926222 465588788 737031746 10223209 557170071 665772697 125596289 453119441 496666505 998553944 761925187 410232350 32658729 251428088 699192037 843434874 752694637 934845298 234403474 241720121 353875498 58684334 658226495 517990003 870948437 702679027 380268581 47329287 559411886 262963032 226716394 158282803 687267549 528248999 248386189 775661119 439970282 218170641 836481172 883352404 986161528 381697066 314598427 989527516 330578253 133148031 612918368 187571720 568771623 364241177 990905697 307832417 586585308 950163463 924310110 674556802 387282865 685161447 145947338 201582548 621346353 991007167 630334325 971763480 27570329 550373562 739696291 889994590 421792433 192436959 64107728 664289737 447386862 882476317 231066021 962193414 63806210 898615570 709686264 148280295 378061882 658146750 95744309 790231290 417102725 161803001 14760722 605094937 402383823 760399158 616648325 387782420 122607742 738504859 661086542 182459321 811879274 808657589 443279766 440054657 364267562 651179683 781837604 611264841 7318043 108770127 113040541 9728836 573715985 201729474 29471553 840596424 234357068 300589286 655278913 522346051 376828438 809669473 532241608 810961396 263022367 334047487 642109685 377551482 83165755 174861215 650868918 569066070 638899677 250218012 47215407 25369268 874973441 901499208 898240643 291444621 833729878 264093593 114095396 65974087 304315649 341839641 539068439 862935486 249023966 658212515 6361501 59713413 348640522 736696768 17946790 927315300 614257049 15995938 924366791 855197428 867755486 945244958 249023354 581672539 229559936 414821311 360535328 936727117 864421744 841575470 324008029 225517066 701131459 853322483 75190537 577861785 622674191 191111117 912621558 475234667 83942070 847402593 386966664 797853505 649856557 286962752 267237606 652596690 270005503 616736397 706278138 950489132 203796820 394238098 73236001 238779827 71290204 173278805 398455387 361978422 426208982 394184975 673809080 632526200 543428443 75494302 166954479 942073559 767295200 577414192 515089178 500506956 572840213 108621970 799540300 703593998 966794845 753502136 764368838 861809586 410954773 737657374 432334530 795397845 429721802 156883416 80575422 867964907 689741537 432990748 167320289 75346527 799414355 97448428 24272888 520213104 246302748 469415993 389151496 139041799 359611606 598480178 611487789 42111126 914612111 46334737 441644348 92306482 32325846 559348499 140728404 508495770 754303342 569347511 211191870 954836174 24544950 297505866 454144958 94724292 353180852 258450458 95156566 7621743 893215497 303948352 556180393 845022603 794012563 103322168 333168073 740893834 882629225 650611064 912784883 731079882 331919036 630089532 80504840 911899142 251501912 616850879 794087395 632257366 516820467 35009951 564525064 379500494 165122107 600686449 673595708 725740752 579512650 38112254 356197004 622310122 351775004 839999338 676387509 104785743 679211619 299218049 276069426 374922150 343882499 894296302 895135359 300786708 941581498 324001495 512064795 589027311 803138330 6374337 932119601 135843278 72937303 532880861 506548805 242923777 997567943 567480496 849561934 130048441 794098453 871906299 453346200 536182567 631524715 670264474 203827847 438610170 662957462 762421392 928670172 399746815 446049714 153860136 636538439 77982885 579086879 861842083 990514082 138774884 367028558 520592024 25746593 986505130 226737720 61899848 445235646 423684695 171241127 733896538 346842577 665658691 841433264 489263176 77206186 204355097 996174885 681912947 587886860 657584597 244195446 914487120 59860697 899055558 632017580 356024973 76409349 566801993 314349097 44739264 230701383 604551032 73161111 886544824 396467905 527584891 699517901 443168106 414200960 181238388 796999015 82286318 409149228 23910674 901569414 433937475 513327551 692750540 885214184 247199385 228601375 791549064 571679591 36261869 281943880 352659870 577968736 138794570 247885871 354968642 828884781 456602610 538945209 80178475 906462504 692493832 360774611 315929334 185093535 546752744 664537933 283493558 912208624 764782770 459815350 462715407 922606196 69625501 662908698 349666184 102300653 54196971 132604160 566679294 950722627 269026870 595774637 372533848 685777795 990395385 164600642 448508048 770802453 123451693 418441470 16948131 914166958 342517712 398076456 733099686 524196594 107734254 468441579 373711741 88600628 67810143 795518437 533015256 846496786 465166834 205434937 550278892 515091890 729041515 214676343 463907865 45429402 744039867 181202953 557942608 253174972 927585533 582805995 984572974 670654873 546630557 548161902 461487855 154370002 430696633 797908467 301374107 588799417 303411531 664919807 93429660 786385370 772032077 292851513 284974521 133813915 427667035 75567091 709303971 566559863 7755777 465342895 127534378 809024973 7256036 306606496 710972320 247596811 408603043 842022321 824306122 766609944 873787042 416218226 390773663 612634045 110429772 495624744 489242298 93021582 325188888 352974040 472632178 428057238 291173000 179877366 371921231 896829176 295874744 262290679 44147401 546560149 206580971 280381632 902686239 294669700 545422708 934358174 23440378 153425935 467664167 516719514 532677806 358325045 222399807 639400205 406187823 828521260 675541841 175794425 898345654 219301171 959984230 515593942 209270141 918415656 488607132 517158528 574327097 9558536 917870995 672144696 633237059 793763687 987938813 42687271 912147066 862107521 247614743 487755617 780774516 520300258 181031745 860412546 630708694 687099759 53900491 200438593 663119396 429638740 344772313 85073388 492549901 907889665 766014848 855541162 450851638 123328556 991394318 858868116 646048063 932813323 596358899 99353896 257910178 414557463 351723405 161467866 188406793 795099258 756114825 714641568 880704730 469261521 18197152 107393795 906637651 349866513 547104419 228415451 560367589 352309122 110344248 601099028 665132401 235083004 280954648 308900668 28287495 887863499 347508663 328409134 709241939 404391087 375284449 75093374 939784190 309761841 175270205 756145955 524496983 839852649 29534341 638405685 491018460 738723036 533490178 815243118 493381636 68448334 470442882 281699438 812345420 412430202 475878009 892997788 735317074 499573661 110126813 664632444 274297001 17392598 294202028 873211471 681205886 388110780 602565791 137242872 745829722 585051334 578350434 247771952 675466700 647241224 140573554 753838264 393489671 513090519 7573530 834778421 944852558 150124998 961256107 469898939 954410756 826219167 890239935 402686812 527112628 171969168 780029010 515241654 966489262 161978403 445050935 516017208 203795234 631161549 917091996 831563951 795923161 540405881 458033726 614664349 190570711 34914145 327491562 825767874 825706345 21849950 595693649 606441805 547816577 390184445 909224887 386396664 92597680 227952089 656439160 897702947 819271974 82729694 42758104 618629090 279965737 751354899 479584818 361285840 295802488 92177510 341722187 566734147 376399562 684430417 489741059 338906705 812810065 452337184 441917362 278296864 599006459 783360142 627632398 701989188 983942392 366583956 666237769 506622953 256583369 176292379 47235328 675281043 800146263 482129966 536153585 42594707 48190980 390964302 563773798 923860089 960355436 673349413 527985564 735728581 583663725 530424355 731533179 76256420 366553678 777403738 718865136 399301268 641135049 534819187 120350952 622766321 973442290 844843029 508557926 263645084 29666598 891478768 923271280 357481714 872276322 422030208 185124866 217304997 185325318 851919889 322521722 449437099 201237637 630303874 614229545 966503753 866455635 15660257 555737751 976344260 595100915 491614828 188182433 430044281 12594672 808290365 617069232 862358810 310371396 225068723 448275854 96039883 759131495 462031733 642209750 961524407 250301391 220797174 797051851 421339328 154921332 674868527 601245163 593183363 35245639 954265928 221476427 110085493 747745196 270399908 543550344 854472996 75356594 932427893 914295603 142927115 444647736 782836515 939443674 456024757 542631606 951051690 846937247 588225902 264058128 167221336 243075401 828660389 451936163 578515946 182109144 755422074 46482404 984739073 97726813 482053093 652015747 818301159 463484120 109143923 191783239 244547139 601185482 387832748 194216934 265745522 526959244 73705604 752219764 758508847 358428434 407286277 865119284 289073267 937134721 250873729 631417689 582188139 968148194 182854897 693188260 46114122 458354056 854462051 113133398 753062100 634442247 11294299 39137905 793573275 601963162 579767556 533370422 383936291 605634269 674091379 841934376 194905183 572799784 104347372 394723805 888728463 139078991 421886040 458637982 332042410 168673394 269368280 486312667 854287109 549342496 686409181 301051614 923889987 969359561 234987184 318360924 134130265 215346090 247406810 150868540 978248442 387967632 758773499 227468654 169843490 695578289 810170247 305085373 296657863 671910810 289386168 538563015 216704752 748679388 887047319 41503333 616177575 472009779 54446269 192579556 181911073 545124977 731631929 615691961 422156782 824153282 623720361 214775244 542794142 988815715 687833885 777856465 595861701 574509044 491343824 437378776 85587661 332318966 708987430 29812578 882521960 611243814 475593506 507963251 403162181 50693571 652006050 789504292 24461296 945960171 8402443 340615819 62878046 452130868 608766397 601204912 573283500 31534088 614397168 928420955 396033264 751317287 806974936 416233695 308293618 778907642 256167848 895246955 810267682 281759972 74334699 901132795 339416656 727648211 713612847 261744226 389507731 116791414 329291588 495638137 269576838 180352682 900964200 288622234 717821283 913019528 489633518 531117816 346666808 339633100 402204011 420099307 416293476 431761427 362001070 786940675 169220307 686023226 213194809 987449326 425348862 467962419 420763576 366340900 345647838 544621152 29995405 576689807 23972184 983229646 195463203 600966683 700008597 957699835 704472019 645775131 910315658 735814658 369114343 760821471 786313354 932208290 983503347 202668175 894469949 41597563 638794209 686621555 222719721 261458719 578725256 182210892 381955423 581876315 960417596 36338510 856909446 874344449 548521777 96509799 425607122 38848251 561365030 262075253 672986942 129422293 670132057 334429123 775678408 972697557 791091903 725783228 194785880 286852597 577560551 565098335 536603603 39416732 564832424 354585247 369580128 760957625 111637301 539019776 385436273 289527781 996620891 657125311 571112744 113343166 699356575 933710153 785189059 384898605 562419177 621011198 563279871 491832727 587677771 478248445 332164018 248278818 172494073 391957992 432459177 917412468 812304962 474297331 551649687 507039029 180670572 729562971 329396311 676145296 262033334 320318441 735908430 85362534 446317402 904961087 591463819 644144576 820312837 511632157 848969297 38967558 385825968 182125938 205112042 266709910 837897268 838563803 176471304 538769559 998965578 627252282 119661721 172079652 993692572 845289687 535440250 560240334 545451466 812014574 437903848 758342175 957088295 570343718 502683780 191501610 851550615 942685325 771991563 84812810 1613584 622511996 397557357 773845176 46892855 257227924 476926816 152045436 67466662 107462811 169701154 200631099 70627192 531730787 687088264 805278229 10915557 724043861 963411821 404635333 742887700 630121939 171504899 32827680 155558650 320955762 597801790 79303093 915415390 104435854 6922634 31699045 208116625 983890296 222251242 759470819 8556126 83820263 830898416 5309070 739135965 749557525 105358616 58677673 228017606 929284870 287628918 642462744 959945424 193710972 628139574 995699180 685638889 860699712 718609388 933548417 269237609 839147904 185758824 815497719 877479184 14398032 516544724 165921451 709355964 351653494 322917767 931619161 680486475 547025445 997898406 249279064 824757973 963744708 833332629 116485158 708296016 209038463 275494272 958171866 358125588 497335451 684733561 970214745 273206088 232759122 384407931 49919763 786889868 237834712 277549667 136870728 340498023 192788144 901730523 24071943 533096772 514465390 635479472 219126118 665811337 832324155 419653677 960718190 245030768 119111094 185599361 879796348 456012255 632944257 394364655 850513970 688979294 216238966 807369776 586845795 592410250 941044551 355594804 538305848 248375360 760627888 232221298 906840854 912848440 580464849 581261999 288768467 826854194 42867016 690667206 97098764 504380908 668440380 566921177 502197152 797829172 753508125 694791260 850246048 32881089 296942449 168922123 623875526 612147459 258985839 105624059 178996210 236960274 708506125 552472334 338551283 168206035 470907985 480428319 268877419 367025192 518163536 178587707 269049182 979214976 163503759 567500136 449296615 716347650 214931219 915456549 624283247 330033365 710286764 598184046 212707835 426210890 392433000 876767680 624278943 586931831 486646854 474384959 984488187 198999979 670018010 167680768 654886911 194193506 932701525 726364708 245682450 245258746 192372531 258769086 638256206 133720438 250523982 975616369 560266699 320342372 152707812 121134155 641174420 588028263 436042675 667160735 135637374 386938879 531375879 754977777 792622472 44966792 98317469 883890161 487526482 677025222 932509552 218680640 38716302 404256778 545120694 445326143 708083870 981198530 587514034 120648447 572887002 296223911 976126317 637465488 465622337 111453136 263596816 811843400 814342599 804252287 596842236 680928784 251045006 684939679 326004265 746931598 601171984 493253703 154796122 535805981 64755888 414762339 11803686 976039247 339251649 280545996 734891389 7358100 946712615 205908383 811615882 317111649 822711457 686294 769826748 523003345 898054285 322456047 607551309 937371607 43993651 436801767 486411104 974981015 802474891 641345506 732120332 934409079 980503401 175181789 475753359 305176391 100780788 315251897 198914718 667825608 422810358 287253268 96959536 73684252 69608358 201331576 453903174 949597541 706568563 168141705 213166347 489585841 125958590 906448886 319347469 690814240 441465949 825405488 941982256 458623413 521530406 263198704 886961276 362250271 513695721 938711498 578130295 753899389 828056000 194447281 148799314 175359229 118344627 647123296 485433638 609459590 956457045 547377480 735707187 317422951 270076624 693757807 692360143 299980092 863084852 479084992 380384803 655314957 371542588 115101409 379233596 356817840 306123137 780878251 507928495 752359617 653586013 164406100 273685714 231584792 723409423 506193418 293681374 935669767 605407865 199815707 191908718 929798137 946057590 612201044 748304130 134008486 249298392 964710229 770182771 184426125 954799907 615171101 378116778 140195976 439118529 843237022 933677522 748670222 985651723 114534040 453681858 669004949 405763096 196044636 224834113 156492914 993300868 196959293 80499180 176373528 806112566 26503098 72320164 104847532 827825462 79536611 91721566 793643092 734967693 231010843 147548834 411316585 250470042 16894318 199567381 816498788 655948588 826331600 270508590 516647422 290014987 669214646 685298468 845578437 402767828 803154703 491837544 839620594 776511333 476940603 988580628 666220547 31701141 921441616 942402894 917772043 985448730 180824569 624679672 790401098 353289780 791600434 998132511 263978581 958846094 722375254 394660548 375586811 482747963 447454533 351838964 414883706 283460607 585069550 11439252 129036987 909559080 455029890 148308374 83429242 749154689 89512417 434857035 387541503 222139622 877745629 782828850 537289438 701554462 900072876 623906454 86492297 104930816 655037950 515227760 196633244 155601007 278549726 445707098 127420055 254093067 538432847 366750531 13742882 148171186 149916479 676708356 861644999 745801433 801458113 865215604 665742820 92967556 27350022 155931445 332918719 924470249 24908704 23771197 618257121 241700049 233488705 980958904 231556959 52786227 845797613 440201303 742203376 830235025 69926336 955519728 737893031 699561659 639724535 641585042 77056258 729459474 768440557 152492074 429313550 756829968 753357256 973719081 227885276 210312803 889023125 191576099 615655085 440580710 552148693 82275156 896376928 6675438 357525512 915109909 260834182 497434863 765336140 908974848 474439640 103300688 182536680 847925758 315910057 396138669 34538671 869166675 156284092 913943756 664622606 637725127 841407852 459166198 323213652 527763853 542346479 895160673 959058182 261694419 491986565 413235271 977710458 577396422 712359292 432422127 377315334 247549903 579605928 204035086 567364056 892433365 897532685 236493568 73784143 730644973 914969034 893706704 469580999 636983341 898779353 31236787 763796755 601337808 744585246 654537566 387025205 593359061 133908939 633823708 790977286 608118520 15361772 453786783 109025427 369913454 509725451 769084452 595398203 700005218 644681743 24658812 376309789 383998536 869111589 706822554 661935635 322247052 436164428 835218526 244607439 964889154 761702030 251219880 565610269 24417842 915009531 172295968 350428584 905761601 823182341 130569904 323723377 218303864 639703005 635480192 422909298 464303073 488485516 796404681 265260760 616722766 305032134 448111474 395128685 140110628 93303187 686882312 793279123 293617438 660040904 961983127 707176585 321634813 85431914 736436893 979957217 265581421 834166970 280294414 652037938 669502782 629636515 106016179 607753828 819490946 38687618 780524907 702797712 896088581 434270850 353930938 791091471 634984605 165483921 710615134 432698600 42564805 23221709 17889655 649856332 888748127 692955381 91686664 231759816 402555554 558187966 684736294 416170360 422887906 29619604 201764045 973382751 474176402 466596981 785927058 819880151 582342713 410290198 317339792 101154583 546222231 22063032 148688339 729711022 969973791 120735395 888987522 269330160 778876687 791598519 726318879 497623369 762000394 824167806 12783555 331933377 528661946 391026594 573941197 771318984 88315891 23620634 213027962 125258546 34800672 376059680 579403702 754510603 404515649 351497333 309472711 684431743 747881838 520890470 36543550 152001174 620241707 355110177 403646614 760584317 863979017 53607020 57054442 476292257 773206854 736900653 162895400 915808668 902915874 902665468 609450523 966732248 148151491 530813030 440929758 662623853 830382950 597389044 761967546 147421383 702341906 106513228 22532960 122226306 127906660 157222083 318225009 778128813 75700374 207902564 613679551 446943056 716688447 723659041 340426988 186721088 281575110 453022823 781354896 804086585 415635179 730844682 499630472 414885053 467587039 909637946 956344193 324071026 522260959 995514514 918446764 235521850 501018598 225694007 474071200 260196895 70990890 299155113 302142145 606437096 159599871 464347101 430742179 749451417 220529938 634157411 135809423 632668146 683088573 203469501 633728689 183552518 126311161 781543632 824680444 519558502 318310004 931320813 659198855 199843332 408143619 516420362 606961210 191972271 221183623 164154012 28016884 707183923 966530224 833773008 14674177 938226113 860956415 962359516 886171399 183738560 606821765 226168413 642463587 453098459 888030841 146481376 191866294 830135214 768939612 739512623 775210048 326798088 330112408 963817447 998282304 208120234 162924558 145612070 609330261 565744605 626501832 465440253 275888370 478003170 930968172 221819322 694015142 895749059 600107820 519113230 961568336 370684306 600779763 42269405 257856476 431050420 434808490 736134624 247979549 202691616 607992429 86915520 295111925 619663475 388661465 966793244 441997156 719223822 297829254 557439509 285674685 698093138 656364778 636910460 982534197 280492466 944199241 626663823 906324945 262920574 213505744 902624938 898209433 688462199 792951410 845482208 278819484 855004666 432974269 827823460 804378975 293266364 865013412 37890978 751164562 827339509 181698311 417416462 571419189 207118534 135627950 533532420 322483031 526508329 170785639 821756613 205973926 467236752 502489470 899550617 992998888 62977652 394485587 941951856 506217666 255701048 232199957 190855970 842425038 654048158 492525978 797495180 240221772 628600590 463694899 132713891 449607648 41150758 668096120 522021043 228126550 532526366 34931811 414510478 419446831 429899983 50109681 619401181 404813060 940054349 930094048 441553539 707779107 159654078 345825395 618981742 995385598 528094594 276629700 664153422 286054610 639941790 422769227 168093098 49787173 958717780 249550985 832168559 143619671 233055602 190719750 620939510 404567611 870746771 98395128 799873439 179678529 497598320 248840665 623775412 332542362 737780527 668236355 257798473 825697731 862797914 520589361 722440800 583517034 410625376 435413474 471629266 304958999 582168161 880613218 576879006 792089228 231379154 670251290 290647966 227872569 298714182 590851841 971904838 175658129 64197638 968298947 773266534 981522169 991976732 978317887 164980332 950667831 378775774 780107375 464335148 323095814 934505042 417289863 985807622 428384011 374683205 717376464 250455479 178581093 846100393 189186355 364610057 792337685 897657533 714291087 75414303 282823787 714004483 883482041 919580788 676290646 20416929 128891005 321367520 873426053 253962951 267510596 64700244 780102528 10235791 553459138 402927339 876574687 798635436 587741671 924941839 135386104 441678287 320459535 400346882 725424905 800283247 962858374 96432930 709441946 292254978 162612544 303639729 674681613 887021783 430946256 895647410 166676883 888937635 131133473 766977819 219308754 676861142 246828963 677034174 777030505 787965802 355553236 78047310 900411762 828401376 764457319 635810002 652241367 567170410 787372835 953651168 690600389 468114557 907660407 597489019 997486474 961898741 380045171 679456264 726446283 40136247 360966214 865103139 300621283 643813312 235682531 602178138 967134308 215310275 598475101 321437079 637723125 21487391 116001412 571739627 187663425 150021450 896006315 678238155 909939299 375638704 67858495 469404056 737506938 995242655 335863728 446303590 901947266 506531169 746316475 322516646 101191683 244202998 744491855 901869099 286862839 76420725 757388967 926074343 68736705 419222526 877068496 720104091 269895461 115339247 997641757 549589783 353443112 133000027 320534441 720821977 478349472 719825271 236322245 875914323 158302073 715516372 16755085 881780231 704483637 723633332 433979782 841858692 673936016 618409093 575718911 460328344 733770597 341170915 653295940 527248018 88583147 136575020 439488227 384336217 69114470 110736797 335117060 311194955 374890270 253897567 763856919 314687537 13792708 632188561 591813730 571741544 952726486 803357946 944685346 489520214 60245916 389298614 949868288 611346028 868347985 581167218 977887873 577679213 216547747 828107405 585684903 104367129 610537501 887987869 548814764 370165538 745238979 525739019 472107558 693137007 734374825 835453454 172789646 975971852 909091818 602792338 393402080 978420140 935125526 850912368 397670586 155392457 334943267 757188370 327743030 880346915 773229495 225177102 989919779 739612308 987730318 123337413 326001048 533160489 712878314 177646028 257596672 946175578 170115334 564674743 156098632 575191000 913793802 564582166 726303406 383613258 410264175 927311857 803560731 876288104 333783050 713802069 363897933 253742763 333569689 450500484 771332441 496506442 760224931 393104782 795037273 341268249 194442149 960365309 98902322 681617725 369955961 555166095 494048461 984281862 305602900 249073602 748412924 220868626 510270789 733837578 539792777 79271548 870019663 21737282 757288218 155275752 460372502 388349877 614290849 762637410 361151656 384954639 524056452 559784426 742906974 425894959 419807262 211371862 708646449 512305575 368745291 893647386 766440181 216379145 290639847 738898836 982295510 106131949 458207569 747263829 282669518 722594658 649628502 881801978 71375833 37842171 375674735 901891082 493814651 515790898 230600482 700915756 555372905 171960226 466393698 53403144 292596011 265955271 400332390 718557907 980459287 181542630 662673762 997207113 616010648 92702524 31515654 158985181 43327427 714363953 82324574 511720160 189912827 505976065 98632080 748397452 633971599 279020812 784216082 90343793 545378314 844775324 944981663 689862134 942215757 28088984 989808776 893986449 547045259 95476832 569338404 355621570 264502352 159406085 467999627 889998828 968184924 245000101 907078173 704025202 234892940 534670635 160552819 788598996 598266718 352265897 340482780 184407803 867049092 976978759 954641165 277660766 79048192 938723149 73946520 109706940 543044392 970417175 999981704 664093007 897547646 189871983 454903332 555080061 731369291 861198545 617269486 3788255 122049923 464153405 451719617 702649646 846807704 903774012 794665253 750536202 42887558 589989116 970560205 289005875 530850950 915395919 191895776 856788090 64218713 370864678 369139822 154330517 780646859 542377476 974807511 348741014 777868079 248066507 440795802 647125637 297877236 209099105 204292601 474928380 45846532 586638213 666171155 647205124 285238948 16747140 429526777 463451311 850729444 794125956 167165773 939013706 104322332 284449171 95722953 240507190 741384425 542038643 29576244 411793860 152979262 626089156 488586081 358253994 52179882 775755644 275647612 227855735 881136274 611001804 835462292 268039327 751121756 920332836 108807061 497393117 128438564 611516768 995055322 139497815 610875691 96550415 270001120 912852271 173257246 834745303 190249874 372689691 346121309 723820117 188925814 955405385 841899032 329432032 389774593 30386098 291894558 442749729 491444879 555247994 592742458 381790917 149231078 433673366 980227209 29373272 169906333 703145770 113741874 777082102 521876335 242515727 424646820 681176165 152415371 521699123 334059078 381442942 60782653 381943690 912043221 364667701 954804595 141386844 423723566 384108066 670499932 813486816 758187545 208980544 802257215 668547023 891713348 348928449 445817531 122002981 879641710 837940786 347029167 609398819 926290002 789026889 499064328 911964985 108469754 352547861 270065280 286106686 945376832 4309425 702390150 549057959 842870612 276106158 564278366 473946999 95854669 659012791 446698001 142328795 75832354 317453883 601012533 336907961 331801145 766761421 408921084 310216017 304909351 443073631 925140838 147185633 632908525 420982806 739092310 643896810 259913486 901924730 973046191 816003248 184681399 220060973 398545927 251412363 857538510 279964810 59663413 932765808 589576867 973017061 412454405 419032888 366735755 47004950 17135010 206739835 267096772 682123888 445567906 41745268 65701145 867843 394591297 45028359 254146219 761494425 740228065 857941816 31845746 108759383 623977944 26890571 237472223 956878040 277086229 229592508 723938881 126646296 807520107 128832237 858005672 866942879 585292785 238393494 643220406 216450274 565232480 805782500 710237980 42929169 393861515 978900773 290417825 913443083 113043520 492075380 111012161 552536017 376269154 781424203 405391253 314607151 863560339 710461828 841751061 468141084 824910461 610083818 937017896 548678822 105479498 184145415 43867729 526336966 719018116 511858309 476512799 983918613 650065845 560936098 442972524 482723352 318566413 218069783 758844616 111244633 414521615 944081778 737654110 149882804 171346063 780595715 411871423 945113704 931801867 484240065 777753827 81404403 964447959 379711923 373783045 487464823 254357022 81837379 162794345 991468582 122662154 656039209 951552320 797882743 652806899 249669466 110120426 926484483 247266861 340007604 73372247 884925650 773680625 68001463 421477398 538703898 772973575 987048596 73529287 784302354 804512846 310937719 766604805 190867137 130788065 274139926 985364613 58788506 413822446 195473549 99058204 421194305 87290937 564779406 676570416 813929956 556212172 515508131 684769163 717170453 928684472 400251998 207883780 186296268 241953480 939385948 323649062 626166880 642025647 822782908 30879884 132620199 707915945 719788715 794143519 673662196 965586485 353894297 617927755 531624315 770964595 399189995 482248691 339770334 497576061 318173141 397260010 629110213 836595802 116751467 345100716 50535089 688589839 499922832 840649254 736526035 82002526 415237419 802533101 874018743 364113150 833542068 857137706 159509086 670311048 340775330 586000911 215012174 841075227 759568479 612457928 25730596 235190821 329983197 646194138 191029818 908201494 937949210 928071012 776990294 799142408 561713552 240111952 967479224 4047810 34289307 857088579 617857154 148884659 410142750 96172605 605154672 901536750 154215447 984737536 121568057 317237289 456838896 723600467 350815746 674173411 158334876 22225777 600901454 486587290 682371217 468371109 483609648 560845536 18658574 779440768 826395032 949371148 868639662 65916485 15763039 336055455 489562709 686869339 441020061 661971485 831556169 452343238 83530448 458236342 42551877 784910918 277102319 879327263 459822997 769285287 566810487 509710352 471643471 28048657 821718345 799880779 244690356 767300217 889390030 64937999 141515089 453934222 954745116 217553622 459551536 163698388 564377851 915788053 801907025 475339509 412206538 572601835 177953970 552882535 764846253 441431383 339907514 581800115 477536646 130975341 850015634 806348824 19138554 643919440 948482855 865442961 823076684 489351751 787894069 851191268 171586055 934699393 519547309 68819629 124630404 694119421 869357036 248378228 838057825 803230157 591802102 816726476 477211617 815944696 331514061 648398115 22278624 837318080 525919738 768397466 118778812 24489357 655277958 854474516 628403198 129377562 340410296 456569274 414065176 621901194 927086757 509928403 771987943 362174142 628122844 425764043 717715625 605230662 90806615 879366152 195740449 410642202 201033570 644566661 867446301 428905204 299325384 125651684 981992540 989088985 321858136 987467470 991237403 412075284 139822299 436819943 616162120 967021598 241371923 742795386 581966007 982924077 38279271 517591303 209234328 326008829 730347317 352857515 241131952 454049800 698774711 912907739 768073885 644101788 438255333 361005758 332124185 829944156 871870639 678630132 958560813 723786824 464295312 564823938 889642440 127320382 168359083 862614383 594329255 436324986 977554716 247667252 844074369 162627133 524881809 449225900 628786456 474928799 78876181 64621135 71374528 950190240 103391753 479805094 722364810 666504173 915149933 543156039 573379202 268765755 687611154 553908825 106403852 337246674 294493670 63503034 361477691 628442641 306744738 158184449 580707741 503997852 716982255 192788372 618856572 632345727 107710360 220631629 920198390 674086819 468818684 900132462 599167610 869529470 314163826 455958240 600463750 845721777 304093550 265778376 685826404 46472393 591396011 855016360 693535428 536877473 200746047 505491290 206809489 854232399 213182038 459543464 955098039 928170482 870114484 710390060 457565141 669639569 391553214 817087429 212109379 377340337 803942746 770626678 756678457 149564644 502036163 813788738 860033103 794376437 121196249 392919399 416465275 24917128 219555717 45950683 578239571 260699229 105725413 464574802 747227838 798327602 545937799 718327162 92270486 188053829 481349710 47255536 682407636 785010269 961344044 519976169 256524785 537541636 262335590 114305653 51487516 205866641 768619124 696228275 535356332 787277473 628883373 495182831 461637397 620865368 216159792 57479147 266132714 670931375 485247464 481900609 565209135 655016398 630863402 213684331 912211160 855133713 85362130 445056862 941537195 536102090 741354242 96382915 412157528 794291184 397109816 717190062 278326200 147188505 703145378 859966760 626241832 27638618 637582900 546777330 344369337 822766938 190909811 988719331 750782079 912913665 500988303 905355987 49377457 260218734 470246418 696234520 845327754 698045749 471854784 625282118 597474836 899437675 77401808 113312481 858629065 757930322 233089831 441935335 64697996 478711257 442008436 395260461 984825211 879992189 813717530 216038781 936871829 488771120 142771154 955286262 335916826 988941672 792802361 927195950 770377375 771790146 479756905 789515288 576077236 606889671 136937979 347551634 351977360 876793062 132858150 205571353 422763763 938690217 717467031 85949829 374790504 920599532 9487785 468350546 824226015 436028037 126760011 377954236 679425468 303382415 726797544 542029880 908933951 185405933 745636888 8702396 528025111 18227309 395713526 179612251 35676724 679457156 65626193 718879152 440626278 830570526 575207333 71744284 705196749 657885162 47162239 114413935 852856869 895466929 644298137 690870534 190629866 323478106 963391869 810998045 351271669 186370553 304511838 614819376 413160325 444285990 714737378 788749294 289159367 248397606 238022941 298061017 256626109 532789465 796424750 664846510 828531611 44049658 777767933 880899592 819526731 456101149 584979704 30049163 4203948 553854229 969783037 941000077 835886672 663373688 496275065 630468981 409251223 56044468 689770185 578995707 748107639 767467439 237580247 130527951 756204450 760796190 194172264 442051452 788996970 25463792 125543058 634966022 663976804 512497986 395808895 770455629 730472988 451269052 486139982 5003326 174632266 127949505 680174266 894094467 104312904 727468966 992044094 621384882 270797755 113274957 162328346 638487397 223087329 813777500 221812211 785951757 299914777 455662432 236845897 545374317 195696619 131128909 526113313 170306174 197350761 531378621 457827997 321860272 979515575 88395993 223015628 835447898 823700213 468717269 844079112 977132071 662686699 471017083 732746184 930424184 877666220 88942760 776135441 648852367 139676145 211026023 498274187 78439965 712461911 72367101 265619238 464078932 671899863 319700283 433452246 56637046 764159466 671984778 872693512 409309665 492782456 630480609 857032061 716517898 107611201 436433037 438827179 839679115 709522416 909190590 950582437 918877791 910403741 509314110 31809043 896902545 480182064 950801388 636141294 497896662 490128171 427914411 660284232 277238082 691774038 468161778 903362144 785392368 971871879 678127343 663525792 628852195 34996083 503285312 378427768 473681010 304842039 917303674 594292932 368453421 520541838 55719770 196679495 398852843 75306348 105162444 327532052 138269598 75389701 64001408 384600207 927756783 301215600 935783867 160158913 347515743 310121402 287433117 869887605 34365363 447628996 165449201 437572888 216081430 36007643 620346589 932482830 544600054 361764040 586801332 260536155 236121277 893251306 557014348 828499217 205221492 78904347 127499217 318364968 625872901 896925011 711775882 336528152 547993404 429510052 176214068 550255043 436956509 168814331 219658962 988592033 934837444 734777197 826592726 657809763 743153970 901237348 745942792 394581682 215156830 304758774 972859304 907813855 920967487 5575723 962583559 415424808 279008919 984796405 613640911 459418794 497434378 547472984 870395143 817050133 689364396 583281378 207218816 241868778 435771566 858102428 58458167 183723795 653859556 773566581 946441781 264726490 851506905 106122557 700351582 171960442 638580642 463366895 205241759 968679195 914601015 620901809 543681758 641342225 636346495 772963186 233661281 148483691 790433851 336458722 131428461 993646229 658587632 399315407 794231273 36580392 768892252 139731355 597369494 570227955 306748851 179793153 519696077 500144433 861734119 82528461 639851147 677635751 624140676 812978112 894215701 155432977 238832001 826959238 863350525 41556485 23147258 512077547 730769644 126147173 907907543 470643110 580445976 97393741 849385723 149425465 306851496 596401557 391766749 616729858 374536633 79647671 524954260 541424847 222302536 598881799 340398776 31741521 690690166 956937662 702398458 68917689 557448413 556448453 778264760 415626749 147732801 629052891 648756523 555328266 436432941 130073678 794625479 199229658 445284496 85743029 278251835 314361708 509565443 55862467 970920548 542260021 777343270 745174257 783724890 789068168 197247881 510984310 294737904 322531075 109336180 875808839 867776302 642344677 411086288 930800710 516171698 792796391 82108098 465508370 108541223 159158531 936295547 742454235 305987402 248620630 453789045 646624444 953647251 843442762 21373678 349104426 580582685 904124442 685964182 881571862 596724643 917075406 463560413 515107096 20929546 78601267 676460077 401563309 238399077 139749082 105583765 292940559 461224052 334905955 103922966 103480377 711226683 485707886 23323329 375616203 209437317 639973463 813860422 889632319 406660868 110122311 503063169 490185209 740191518 449396965 784922883 310111218 963453476 906679828 370772433 567494413 764296156 663794197 64558620 450546020 688219276 885511027 143531207 737142205 353547530 764302045 604236895 995744606 93006047 627412987 893541731 755531453 147497140 589907284 27386090 912109915 769894207 453527004 121039144 181174743 442802712 281483929 990410674 892674765 623526746 820353839 297782991 730386059 489288094 477367594 679721985 564992811 764560018 822577268 937504549 967195312 121271327 745306397 561844000 942138619 591452560 950089183 675150210 50480813 980272467 880727871 847465657 10842220 345386955 253775882 771411360 337072502 409278642 13365652 208724167 983135072 992897128 531562382 499190199 379297127 640369363 484870315 221734905 152108273 103556490 168314003 758614599 355703655 24605757 715768298 781533386 134958071 84718934 80716811 228159106 833601856 62100626 304944822 41534911 432664791 374570480 624979302 23317146 163633330 646514662 382853207 611671750 671147401 233610060 371789651 371266474 142172183 295464689 188634455 701510225 253201761 564834169 688885941 683461732 469122458 75576805 709124008 998392560 158920469 434875406 762173709 908355071 806142666 334761509 353737477 417565504 203596132 882513555 961191675 642629697 636160907 876842935 599663271 947679646 491229383 38113071 874708263 417592125 479915973 838800547 66826386 858586927 492904274 462426351 917087098 201142380 795275284 891339628 393323337 14482289 727629895 175196515 592178131 998369884 838293285 28606812 711827347 942272590 8508865 517301644 44130527 55789925 854105328 322251799 343235321 199758793 178204500 860233284 49503433 455365878 630653913 381362948 783021180 615682512 705249766 293590116 813511621 829325128 853671226 773273451 611434395 356260137 222668500 810444453 569089780 535937168 950592305 534009104 950598764 970005751 384655177 200449266 510394012 868860024 662459698 506588974 340030918 72276928 233678639 939020635 848270400 746943423 512283507 775281281 556731031 215639521 172753005 112778560 639513620 135525774 568389779 523480616 743494042 973233319 973871901 803777870 130474749 118663742 677230609 766477985 414841201 429930838 70616545 528708867 816576838 515879214 149412410 404173993 57045960 938334861 275621308 575849308 168096544 473610231 902037399 651725673 386040725 367046419 626193416 864355541 341154640 717124919 511691684 200957605 514574930 398175275 687977267 609572932 7838042 561303234 545116505 498981408 376742184 566571818 624310392 903522788 301077095 519764484 378187133 246656136 371837581 45987035 862995020 794319474 599461907 641127013 882845442 766621003 690732845 450158313 889103621 447636417 837335228 185828557 576525825 629614178 793754784 827887376 19211275 181292516 693449465 240106750 727943602 289039846 138861657 214585741 914994509 536730925 955378827 30222945 962978751 150666483 48901204 535043595 315518235 939831007 201876636 935611366 774054393 85119782 115520174 676482035 62077184 127886461 735524160 595017123 529071567 864131836 702257056 665975904 421516244 377558215 521069237 851230417 699567222 857171542 769173411 451711457 694698193 450960373 228157602 310194083 879528589 77040011 382192437 859071407 224680342 975543733 939570260 943149221 973891199 164130623 190914857 879976714 171460310 426147163 287656672 829616776 879310347 177022569 449234665 898609229 9902215 990528344 515334308 86867805 312553471 548487863 180765785 205326345 399158177 563616745 505798951 236947652 667357826 780488352 690151235 724364041 932864955 307492676 65259244 724221818 452612271 895248322 962149529 271228171 423085354 475252819 110970004 733374830 972695757 709011226 296855948 415928255 693676185 737701376 900744919 619650572 69446811 955750583 576570542 264653600 608806365 406270724 59558637 185078726 784153369 46045238 898107491 272408907 104029624 550730026 380621837 743004587 51156123 40098074 866278526 854946960 371922911 439475121 415595250 881743046 487474180 944443334 792641202 120792874 830420021 368126032 177495589 635726179 57361268 767758983 543027764 929267919 89239654 37666283 719914460 426020088 411900048 854971310 70119662 447118179 930683930 728142912 878218455 861197196 835920858 567403299 881607824 967910713 695872562 570917714 241670381 727800171 143794455 136125951 550024727 931951461 584761212 985986469 749311379 330809453 699642359 415229220 439381328 108444331 611466255 450395991 998489384 416447954 815921226 713024014 461562085 771885249 723667880 229525583 153879108 175046385 337752069 930177023 409902562 503080390 213953947 11721204 115193045 93680557 509960003 291934833 683382627 547464768 642467091 46820553 364123525 659943943 431853885 380505273 85933125 342914847 568797467 847850718 757748604 866464202 703679533 651360609 392054821 795099310 270591019 973582716 666514960 635925064 583796462 356665769 84725760 271876619 212766052 343489712 386719098 279230656 370447270 530681089 565772768 959074769 131645172 95373629 73687453 552098803 678981382 68979822 19593297 572887106 686199034 847752113 724792562 474430387 938901076 673657764 565061689 936627590 651603918 321329244 311276216 366846339 806671486 26407025 510139559 961285228 68577065 149961980 269775817 908972821 315474226 515598223 646522994 768748667 350349993 42819880 152846451 56482948 633455999 657932932 209639453 186854438 93372266 782375975 221170318 718829791 324405786 176869198 337372909 601096593 160266867 717133281 675160535 476424391 619373647 692954886 507517511 565559355 264852173 86946732 68665460 243453050 335011897 363328917 508141530 288327589 65717314 729853238 368532749 446698546 56691930 157159753 226125356 163317054 799254405 233866481 925064354 26892103 246805860 444469216 739081106 955400142 916178538 541999632 637675920 730020532 139168298 928911708 826740823 849841419 650401932 906317629 180515602 389694695 426548405 156147312 301796360 459969384 43506265 93013777 516470775 634065883 642841731 132921849 356367914 607941182 737594757 214706703 845715968 920184329 100077527 638497819 789187885 152875592 611081822 77536596 502013349 147472025 93072177 564129859 608791118 864831797 240226428 474690197 940070686 272358149 244533891 845387897 154174741 738662098 932513395 207269819 842090822 520620222 529569602 174437164 487274642 701446889 784814127 993345397 301842129 884516602 363598573 795145690 888830791 580542016 241245349 27457721 15112739 835460196 158426824 50947814 691987578 931371183 49634038 562565801 110543022 594448026 376362798 612206776 358802128 105394392 978187136 489158787 392708404 343462474 919959539 719416850 268406160 841117577 409479734 214551200 94577156 635285953 283421359 33031364 270183535 981690916 682586226 780719043 913555722 603434790 538562844 151235262 701328747 440738918 909501370 900274626 741916963 288415622 125564035 333440149 59673449 553116227 59406024 734714571 434234775 32410784 589085466 630547050 777620024 237835547 694819382 130901699 190894096 23745013 222455549 752380625 330469812 298165300 331678674 854737186 104853657 137073301 990210502 895766934 833769287 364427063 114964956 823613356 754527509 955905708 423390192 978728466 815371403 30483501 683096261 147393960 144447502 360517840 205845773 814103145 638009297 440151908 112632138 487835057 241868958 823757740 775080213 501760861 297095573 640586228 348643432 500069404 10649165 545231136 394057678 202293520 887897056 953304806 711766087 998457985 506600356 724269674 427935381 965931506 964908357 619790406 527977931 297720340 508289014 749053920 231403343 308082451 540491673 894959253 421366742 137699493 303368135 582183150 185849162 57056039 704265964 904638794 800046272 55586972 794128068 971422937 662407597 388035622 887536225 482243516 895647559 462502716 677000946 175112979 998154039 406339946 215118308 715113465 88781883 515603192 523239680 274969496 218197998 549966206 135206535 203647698 214039184 740732602 999229039 428904711 966896098 196828178 514758529 976601229 875185562 861635138 698566184 29426189 536181463 455972902 590915550 525251540 851367047 437465894 640295879 269330911 393661116 750403007 992534591 965392906 141712293 379348486 730674873 241027301 523862623 898642925 484678304 434385782 245023635 447633439 744288979 291607140 634880897 578149481 107739488 252728293 359869380 169229793 647992228 51272649 192502582 150697118 898039436 147430710 148342284 725912508 731159233 976937172 302322578 424358317 887727124 425071707 960402588 799498272 646327984 574683235 149363363 929675381 319606561 520879619 812065072 39015424 617253235 133615161 534865769 663876407 511431922 646715684 120165369 342626824 336891243 361629889 760244332 226957321 626415342 857187276 583416002 283474647 762488672 321400910 185423571 84541251 274642413 681249286 956140861 660205235 615022931 785461764 840159074 500583040 54458981 496370139 700961357 580021840 251942186 855959066 771546489 13653531 91310008 767992201 899101720 593304350 881674339 391595900 988182165 163970081 462687084 973402845 171542006 864517369 990189743 69140043 143133708 405927397 542940092 147375244 267076754 695246546 696874947 589829925 297592466 28365090 37703566 265643200 907763928 531822158 346217892 940624151 28473812 542517791 459843348 178027514 837231490 685776688 260331233 96586937 313661698 502938888 365111281 835798135 204782172 580846528 447219666 502616242 444650720 424035009 192141188 195057796 983726728 148045531 65833738 218521830 473431350 171770875 973715421 180118045 210660509 15260819 907863243 748717491 535647605 323553266 824051562 98442610 356475136 431139538 148423895 212735236 165906075 377743630 970928429 881791371 501145348 874473495 60284219 160183510 103353178 752180006 648792942 295393344 489789147 53096203 16088706 977121391 375849094 334816017 260602110 321508335 920132374 852476200 883261398 758306706 483779144 768663350 521997654 958081698 67928162 978163799 165357294 278224057 744823075 676793988 363683991 82403542 961694468 790241758 274194088 424659272 1081882 411727503 600602550 607415824 871270304 172756689 102007708 534739709 824838124 943642171 241127337 366771586 611607531 812353861 440540984 318776070 438765131 822192248 900160894 146794996 522409997 367408636 608787541 539736302 762334465 43900636 337093186 973444452 459223725 216505506 214685675 434156056 16412703 717565057 320569990 506218046 64369295 158469324 803902630 415623609 543820031 124796001 38646423 886185985 691545671 482065574 823797050 727443225 603585829 833217243 762337047 769884815 892278544 876845540 802026562 881513512 289705727 44783364 42609230 570457588 82202865 55719161 118944090 384571354 324152407 177328389 765819202 258994160 310276387 925576079 41219098 200239899 680208092 963893406 475796650 751658896 231225277 558194921 410243161 430795173 818058920 104253793 735360333 973627391 505295422 686866366 727767892 496953503 430352798 656291367 700619577 339789860 429768200 672941695 388432145 938077844 579044888 119173381 381222105 40876 256933975 8372013 506068723 85858097 956682100 875418576 676033338 513087337 316596520 501592686 560229207 967811333 991720746 196435297 18077264 390787473 996170676 180235036 296304531 674614666 171374946 525187396 694894040 436460345 504363048 71080891 360052987 931475521 200851219 595204959 506709692 992531362 976716106 487137666 107896193 332246726 150253507 929910837 806654171 885401730 204540657 962247697 826306087 663779940 227564354 284836407 331896877 986648977 509549409 643006891 827793727 621726185 830819996 134895763 435693628 375607995 997842688 827295173 681451383 590848550 825969759 46515121 167383419 229813929 145569937 569637184 924451099 471855348 409896812 459066277 233455397 267529497 326948793 38040996 397381248 555425572 563852234 7011865 600338787 34799412 528181046 643667207 693725784 974323740 568125980 77799116 703062024 685080536 235373223 75307646 686075131 654637547 956457683 676341978 222673483 194844479 899924793 218528687 134352523 381808326 426231623 820946578 669618420 118995423 686515180 556561981 681485907 637845674 986959385 800575872 600864562 728309563 366218527 812334211 623522832 11726447 287124133 913506523 408800496 991602320 833884324 266593499 869610278 625562473 5788829 497668195 22704969 37907149 914699691 506869305 563101764 328633473 330202565 779087544 408198074 441619204 446547400 172640517 630177729 448546851 791077217 433499957 500919495 707734875 67264924 804725870 365106330 121000216 69100046 312087925 713766282 249333613 628224143 654583925 7341275 930057804 288966459 79630984 27637850 888715296 181477154 503678362 94686538 985273999 37975778 92493501 466806068 824785632 54614464 686977547 546849564 254265095 899988113 438143367 316382187 580922247 270020430 413144656 69327910 596714541 849351979 903004584 154240558 494256695 232709462 512494441 160404479 903184709 939670350 655236858 270199777 426002031 648488753 643406617 549375456 668747361 218141438 963720028 299138865 627520126 702843093 968462765 268077433 22245405 493328455 710976708 305003199 280479910 152904478 282052559 416487278 118918467 338601088 413688793 140884095 54539602 824225908 285747059 852813032 994190147 554595419 241022568 809572682 576412956 363633557 532764210 879090174 16065991 821585738 214599774 100883190 69431260 203625606 605038564 516191484 515237552 821846766 481113518 134090498 260208762 843513394 267899214 124747248 475065313 358910109 988656053 449949867 618085065 832840417 689594171 566511010 18429765 381840873 241976831 516397861 467108692 814390071 150109958 998624363 752617584 914948164 927706983 434102359 768321482 771936921 599573037 20507675 953392629 27500093 334063534 923999002 636791771 989991554 601125208 744869885 654976634 769748309 217641389 422616677 521177906 333483153 391810564 692405227 930039490 201002967 115463497 710283322 594387765 116507042 937908948 985670591 215270069 753852560 511188337 127279518 106998232 347922316 721553472 560967245 934495965 833824805 636453602 323539975 487359246 889034368 398354383 772530325 586731140 324418975 804660637 345306806 157125195 330697709 981254989 735106812 55211310 147622674 109888507 130235922 43299845 235065696 481161440 432999680 370046847 612161248 746089745 125245495 199597196 130822650 470421649 988234461 902481891 933145472 545816749 286459876 954363773 978975781 566695895 701205743 457621762 770887231 393455510 31580047 523056486 16577780 157530188 817083129 985069314 726120512 550237626 617841065 219149800 555279381 102201925 906640421 643711669 90057066 920161384 952103206 304968934 781357694 970626415 525488922 104029527 123825540 274091039 395241527 178752413 954730211 269360998 719317445 247353312 460267316 641965562 73389037 951036249 484681479 749899718 722177310 301525878 229285113 521761574 861250163 232564323 720543804 479463298 113535024 51887261 118511937 921308409 390172398 133190192 25077111 506698026 553220748 218751198 480792591 710616892 840725787 442107692 904893290 760990921 431789658 726075683 262674921 955948801 805985288 406020750 296447921 27152420 979905524 599220025 723703060 340037664 876572243 865846967 388212158 827555756 428693032 321855933 608460120 703177758 376253144 236580031 163223712 519434645 187343054 366595054 645153171 132064238 888515854 422292083 233753598 374234032 824202338 992236243 129590542 328151085 300118521 507283049 968666862 573464539 526867673 133541540 210643036 58988926 299847036 4620280 933900124 888830352 993872576 56589498 376531534 364644662 339479362 560371581 819139136 620467887 534620449 686775061 915982816 664659366 33813368 496811047 319353796 276338474 601789541 908635025 678381639 961483350 240252749 536057312 789641801 404882411 630274191 731674351 187907634 116611745 738922680 285939889 266925719 528629625 830465716 567237323 126458357 39880644 337116204 524345102 34406947 118267580 537792226 78614496 830705025 431682491 629496350 215141153 291996071 985999192 347425596 4218612 210403754 808568974 225245511 346520419 836477896 775758803 939871880 329725668 676972269 478601927 324484790 649689491 612897967 892756119 361306159 885695242 190284440 792864548 277738854 661996025 692334460 788546867 931378834 733900426 892488210 669920466 288895500 786165439 130776846 74517157 676099580 670601434 355638981 461931719 199232489 728068299 606269590 479759501 693376961 911725954 337957098 500765964 812187647 632062911 702859274 131333751 657299830 928875362 588055571 526097648 401900887 14879262 683521599 980863903 114310064 956010857 713054258 453586318 675997359 555607836 142018621 728770342 904552405 745618687 21822888 952147511 568686015 191861763 176894804 545856262 487397820 659966305 344401774 192399963 783734157 262281654 919815585 142007768 471786675 736364915 985712519 299144301 994113727 522933876 808833918 752968443 382503285 485346631 652482356 805665641 967885335 815489249 586074537 604285524 209954451 313746418 706849653 370570076 775451219 56782667 317242177 755565448 689790644 911742371 92826680 779530465 551393922 296412232 17245460 962024360 582719083 376994811 317210881 684678510 573654027 760370196 64272745 217389017 976706063 483911973 113478560 592819236 165451665 33170196 593330629 384006100 484518140 662905400 411536100 565897226 524699516 650699888 399161895 164178123 395106062 51990492 492679410 921717856 934150427 667203836 400278626 884229981 486384049 67197215 327242403 736172309 190919820 205790051 604064503 813699726 89081294 644514322 744512364 456888520 832610213 549911911 712726735 930534354 424749780 112386206 693874007 762241757 404088684 539028607 535197933 792761550 113264968 451836089 808738079 616388418 232096455 17076105 963054745 24365402 873778418 90635141 861573065 21470039 213278792 235775133 80964250 198918069 514497036 442355600 139045375 437652954 227167437 26602623 947963184 208840741 224388513 721261313 682476490 587931064 779934586 878360464 559964658 195964787 154169268 443744790 513938970 240874882 16093907 585978797 407168010 115044329 33115317 124385771 824936132 858390608 510981039 211386490 595380807 63582397 316471991 493075406 803365318 752422867 588472393 736907971 816769462 369983547 678073941 438330876 72068740 697781206 24501373 354710276 296941391 886106318 877904123 767038827 103823273 580732669 728918256 486226725 116291970 362908420 414244118 425580762 162438752 439674639 352999157 623665477 694589073 455488819 441650877 956706449 58957541 257574827 927196488 492036892 908522879 783809987 984728452 593851205 311245686 313547430 509075799 407632286 304094871 274682176 927436114 382277698 230367815 779955984 323005774 636483362 26841071 952293351 59113440 720019152 789498431 188791177 335239751 142867204 91630721 162429569 495741725 153418990 489378640 62239498 773855734 823448649 136899011 12232465 500824173 718601948 897584748 818693248 163039171 782126716 104762513 732512091 557550721 395362586 415749458 479737449 414266538 907533455 646101770 529132884 276182928 554712636 94210008 603881745 502376618 464791046 83929581 459959540 478647261 456276937 377580720 902243886 811995006 27371576 62187810 952824654 746456545 924268008 939106035 515073007 370039079 632551572 527412608 558301030 830284452 885881224 327875791 271025654 998566892 448136505 51504819 248435585 624006376 167851360 821609791 253856885 819421330 207649921 907799265 530949103 808793991 639519995 995737942 822773382 695684488 932789954 918402530 733362505 195877311 823640658 149311500 918530517 108109863 954324759 940730731 150131896 602771092 292536151 278369057 667379821 199680180 300529540 337468905 313622285 32974958 615807678 833292199 373496864 561018714 99943600 14455423 273015376 905899413 176730431 733639299 649216617 102106991 457613677 106127350 712817212 974636611 851786305 183103619 741123149 840738025 260026524 884144081 503393768 842878268 75133035 51216964 543563156 506729615 164302579 356971694 576671335 645845659 555057237 489784012 94850776 976850801 19479529 599737816 68927312 828960930 299254261 532021438 688474604 56022420 758773973 500629403 454179880 285722897 960254510 46544687 380553820 200793351 333122277 929656942 746667655 432529809 758917701 206471669 343700078 770982359 25865605 803548816 916685603 377054914 204180932 396648409 19063580 887854885 932854356 598667888 727330620 876767013 445829018 15164594 416037645 724202249 267884257 235018951 785119215 890472979 145169338 207233990 888430895 338235256 56429199 620854928 35755964 732185666 2426718 849687438 915970787 37430128 654410166 801403902 295775482 85480376 447355121 781752895 208241307 946216792 773252699 865221728 151567346 83282990 980365292 223395856 274197073 832170033 132099989 833146982 227447123 456428279 82224228 630364564 832499544 304421874 949155439 173518388 145001648 577546055 162333240 193320873 978921317 219562580 310563152 287029597 722905749 327136342 13488782 255337532 194848511 614149361 342662631 213011585 169957411 265493677 194694625 520595163 451398191 767567381 843465691 103660358 168219791 885880710 364009203 787514859 975492244 426869820 13562246 829798385 651630229 659959064 430723364 418444622 412347457 294437805 237242096 299243993 429983002 375571351 782856568 108999222 296497351 484002018 56380790 967858192 126334527 365973407 694117716 142174666 463768388 516951688 873608160 194615748 390337213 774623898 236139666 311048249 132253825 265753919 737953567 447483545 891010434 739808422 782050813 38082898 972448167 678285278 478752339 430237410 420530795 928891259 909899406 218814631 869505488 229082678 453357976 4720711 189818916 390736856 676924068 770351401 422819155 18457054 584538167 122690135 110350607 196688410 568024480 712140547 820635397 794833597 486697249 29842054 293360390 178382114 769322067 302284271 702462345 721198374 418217839 203201959 93108536 480105945 807836841 389996817 346913402 697774224 37606857 852486021 391781544 461496515 75779746 372890775 13526996 366505890 24114141 119010462 831534240 263775327 971103600 924284546 137718080 320686566 24175022 812547050 670338433 262606709 204491917 704963461 44375052 151259936 66408485 403625472 605462717 125737896 645170170 647261497 971533489 639266473 848212298 399116896 940723143 674778269 579094208 971761032 725220983 167769824 242706131 932371042 902201650 980320393 290124957 689987357 792815777 922239624 171814421 41910393 261888324 215955579 967709635 517584876 180128506 878617863 571665906 567364446 566920009 710175815 832184659 275630307 405254845 737104766 411634031 780660834 959616418 255764377 417324444 698560375 621837921 27787565 558841218 262204755 406043511 521021347 569469510 25539716 250709613 79689779 318526145 205314354 501869672 822353675 904398155 125472892 452259782 98519445 651333905 685188933 785550494 565309002 235998007 244090735 457889211 648536336 431469847 122309536 975547931 292973285 265040542 305018591 75602936 142228376 488172559 974658913 93243234 514614601 277417412 234913945 447312912 215168981 492456132 233023414 838910047 253013423 893104654 321961486 788078396 680215237 171110048 276135333 494610366 986662728 589230484 495242738 977027270 821375267 210488416 971669963 491606916 869280517 22123513 591675138 762826168 335726886 765415941 433980943 865855730 966770545 760822136 420205604 209225822 662304882 129124159 935990112 834268746 791925012 115379104 704820829 815999062 537907257 401261666 516080898 860171264 502850889 151933269 687199628 107154440 998847678 543535299 675882335 946257307 874430564 15452875 397871955 443707276 976070443 98104384 598841398 620878290 234487155 31354650 385088064 415828582 170974260 885474682 770096436 93132296 749833831 750373905 237417631 391304779 171113869 116486242 403372565 359927143 780423907 147763590 754928322 267100312 193503760 42663185 270628947 322492596 855506270 458083774 393921456 354684930 699871097 54779455 399843575 791062758 913074002 132584419 57661037 437934846 240353699 707637449 573130117 375990837 775462190 797842547 755585129 67111612 547268914 764985878 80783245 594676969 445989921 324779140 896310674 828105917 942316442 486227248 360045217 512166971 962734378 700838246 896788069 992444482 944192536 828083528 421126369 552379477 634879835 46428014 513658003 829703224 932152914 934839321 610480692 926486425 27188007 745234250 40885929 675565176 900690989 793869190 899555157 174099596 79558976 428427674 834313282 432815955 991184023 452946870 894833519 708918120 468173155 346159793 67215330 764420270 519857899 21365579 93349993 792638821 688814301 392011869 519499173 992832121 738618197 362961739 219839751 357247891 898986674 565455486 78187059 56958239 439516565 200786196 202679945 786389287 556269869 305700501 641375183 498131651 282114969 500017899 107607623 334927948 568914818 117595796 352156476 851538537 484167936 467206852 84986278 531859029 119149139 704920264 909679362 315802739 787635632 551143788 147209567 571876892 220066324 135121249 451395099 447093845 762108858 886835217 443923839 365033685 353348732 434007058 964763199 86871508 347869572 728651763 383282586 557829582 416972500 337142002 719167574 779984497 488667305 811335400 376003109 950100878 823627921 385353022 766331047 929898378 180464684 239971688 104010211 844164550 247820409 924288248 499897300 137428724 716355107 646219747 588547347 213882733 431866782 11364203 201360313 807176965 294490001 607104120 189312865 461628533 484912264 850158334 208829929 247130784 287921235 948591327 30811984 950890226 500806243 285853410 653557534 51590264 643721298 358911415 52281346 325808930 337644700 607184804 972449552 309767868 714941514 385410122 794759999 823525958 348962383 931699091 13333581 877554932 52435684 890845995 421342065 854373835 1150753 37666139 132780337 246424641 892996894 270376666 701116566 87918756 245820010 834680261 193097233 217596467 945846722 688207060 674647786 424802129 138581107 641952230 63864642 502123002 538765561 403112953 146221803 673889091 283105074 912756084 899023727 473614911 682488815 450247163 563665493 738701239 163674608 533438266 262191992 128167349 781521175 814990975 76387944 976102350 409680916 890998169 418861264 23368948 313788045 959041068 465687927 792638945 364720187 466654580 588957449 711321031 961142431 858276152 738908670 792458534 676587482 738410346 386140752 525649245 566773418 228013329 891825191 105088569 178785331 904514548 872989002 710888802 548369029 634834071 685432053 255096297 181532114 683725718 168073833 119070155 568463937 994472209 215411930 140274377 607832972 535209378 960020055 149175071 40017979 662815034 238399429 584834557 172293071 381468445 672079318 627348230 783635052 808716692 384229137 301264992 788433099 166052205 741397085 631987907 364564620 499861742 186546039 857750547 669253880 611292278 758282128 744917242 53096097 191704657 990638339 912169472 796062227 425804232 494512172 832990393 202595845 231072016 870290246 848693528 943476810 380178757 517040753 239242637 63357313 854821139 247670147 92928663 995347227 737709939 161653086 335122976 172231884 153893519 919790740 853872057 343347487 613825314 802526306 395376909 26376247 659274389 466108085 678219212 190626597 774790484 903284024 853837953 141449196 819422602 303725 959424710 639870561 278821445 898312620 666393020 71668661 902657499 948697926 871933947 102020900 437989519 240274546 439047658 838739168 843305528 86252077 460075639 6645905 632267539 651498413 810698967 38129039 629440906 269802602 803143625 936336334 160461463 64217157 487569149 945271771 91211177 783612100 193023982 666205329 262371693 415493235 160698304 65385315 720165077 217726008 467714119 21121494 984430528 942177365 181190665 255198774 66370244 402350619 635154526 146824794 71937105 540494123 259002341 22857022 466311309 171454708 967477997 114182406 409745514 989938522 99147867 644588940 534640660 740743188 915933797 755517282 278848731 414049803 893478787 530550097 623375707 625117624 300486765 918374087 1916154 979534691 67946393 748764434 617775257 956179111 781451307 71115004 727595154 782276715 720738841 900945074 281826433 284812011 822999784 286745921 66812516 356849249 797475883 946407530 654908919 853331878 779326148 602302013 877121898 35910908 790774013 262556527 281035175 713903377 248109891 591494385 960438350 566678871 469715650 121014538 905075513 257913247 270351138 706145036 883064511 426131317 429383565 193617325 316232717 504991155 223857844 505114887 483534858 117755130 122589703 258966492 313363182 292390252 438760802 81188543 849768472 665948526 487730240 441858084 911334412 677001041 172086684 560403711 630283499 452466620 147212080 87754606 661430319 709357453 590984140 157134737 572310329 939077962 820596119 61260434 761894077 51832447 402056580 720548390 219119770 183711149 673432548 11666579 597164173 993550273 720511700 464921855 803417444 691806368 582849799 824535690 953237255 379941424 65876297 621827937 573369278 606206770 109338643 732572251 570535511 410195212 502919234 672739566 490303556 776881119 612038755 176533339 853451223 764650987 37814695 703348657 821638801 990076443 518731011 251560069 955749261 675194876 613370381 58208624 617986610 70586338 952088710 44000062 986439885 115920246 880520640 394798653 740581869 129821008 636700998 195483007 785978658 516639871 810712427 799285189 175817909 521903679 1832528 997993089 875705852 589706306 859078953 468941006 126074646 256642505 722729962 801606800 420445702 796712656 785373079 74608532 421533864 65403214 242639941 59712034 6145793 950996296 129144504 912518152 387594016 317022580 29040584 646542525 118600822 291845417 448078036 64608648 710292629 154946046 890526990 597080670 742580615 626561725 812565274 109152786 851778309 411085015 571996878 336655090 810359576 267245895 22484028 191644754 948811945 424827760 306783885 232891808 126793165 788526373 993133871 48107737 510528598 464343092 624544861 210246543 656985691 810782997 847026287 117877179 269197489 123222762 84662641 664284543 442573735 30274141 152524740 190336747 665664942 335127846 96953598 850177683 947334282 450520754 99954579 442111055 986301454 32299873 258101197 590715373 244073175 677097407 120920978 784000421 609864100 884187296 781679790 293775101 401701211 139262440 311895518 82099208 281767814 967285199 343526208 423719596 843712066 527483527 491580251 96300904 498216332 497682336 302432228 94645732 645155847 532504078 686505314 838156468 112422864 762647825 660711244 948599268 235864335 860997198 254671441 623725027 550579383 194899497 138485542 441966737 489687507 508538924 646642605 371470875 166893391 550671817 85054542 897443511 240139631 775243646 410452911 431086640 602022020 157200639 726924518 338577306 477631553 866873230 497139834 847420662 645814156 94686936 166533464 487559828 513807404 249820167 203832173 128309604 16224500 454022777 188998310 302072793 667276461 499440805 649079604 799275002 990060444 101099434 363164120 741752050 244663820 42564940 439372922 366553299 232174839 218494822 889369817 115391286 541802132 454019453 192220570 579548209 841280584 659258917 575463491 309385445 293665505 21606645 559863206 153302683 733910120 664597456 786254876 317057979 625023022 442969386 322992448 860726432 955531679 785887616 956666954 580469624 404769694 67355373 589522299 326159389 898193828 333504707 295284330 82041373 640740551 755796263 69861886 889524578 957825175 455277740 928372276 516788851 773196503 562630341 697290616 551081649 98909856 420071230 74249596 556609447 263350621 852366947 40595833 361831385 929543026 850052529 438424534 624560948 942802014 521279679 44584788 240271128 998295842 753462232 35913249 951942307 673964833 409825378 983201418 462153310 422466949 245404808 153013642 984811430 439779165 609665370 598881736 159030636 712360938 203223477 165701842 290684484 266916378 239339819 423321738 195264786 346752251 850640118 531274466 84156839 40197794 875586273 645613074 290059961 486038605 139798317 715624760 736615872 183726751 228769009 37447910 229006422 414548889 293506802 603903297 906474314 778103818 659955455 598545249 506052059 495118777 657824440 55365861 5495076 163333927 993006304 950702613 992051706 637436265 495197936 445098285 4397939 730032501 898549637 734491285 420963933 845683555 189862553 351135778 959168629 95825336 983609985 69582149 761833075 720624668 418788045 966379205 541360609 752561355 846018657 548049207 8570250 188191595 136402890 293595061 800938009 565305291 191013427 500520255 409095612 105531574 249359270 333882012 18551725 217615481 613573267 865246877 141567014 72453288 517255838 925203432 384738578 579509971 693236598 635265773 997989881 682708106 788681743 390618334 889877237 404942086 728176994 218378320 501828557 166972964 418785193 74414734 950841654 468877605 442121974 814634300 39012638 738843592 991242651 153292783 686197686 137429235 800835210 495148969 760740307 177261108 208575866 27697964 312256553 792497052 347606424 304469877 389689124 131895144 581564046 400803351 691132101 78220338 763950488 692445072 702903691 545575218 790132830 734323484 42694832 551459961 733686135 34476356 407347276 335930453 729479369 744488453 882402854 214816069 729849494 658754188 813270409 909267220 265727778 889236987 373867079 271142942 529564511 759278808 560454882 709412672 267542790 572498437 806883371 788711784 570316930 15290369 581232350 567032376 639277021 24438265 836612466 580071950 90617788 918486720 237038667 794900351 810281531 738269730 748663642 255455061 412268307 728882352 909757288 67226484 706480302 952381028 896115536 670805899 229831641 978623793 647753020 574698978 170489209 815066933 771633606 726629802 176873879 969355082 447923042 458790192 237585800 899608375 83043721 400880592 795665529 741098417 722408049 172224320 198350737 592314274 860771200 180299682 656915717 440159845 885922473 55688080 937802205 89791686 745041374 888556728 123499977 77482323 659825291 657478388 218105242 21993738 689133122 940954055 808607232 507997056 487504752 523287056 382970998 910764930 179046416 771478490 117353146 390421053 419922518 482281338 268774404 163547073 917369086 946080560 875709964 226417270 615692456 321230598 303298315 687529687 356035100 734566518 518314983 340602359 887745115 287106477 25367212 200487210 943244594 467187474 60769559 991634914 432970203 924469844 870275398 21088268 243696415 41489277 871801446 396738771 697848493 770135304 640602990 234175199 262450637 363559464 87890340 428756718 985292455 954334053 820487464 14222453 417257852 723035545 225760376 443810547 824229669 587699407 575167362 191227336 753355197 698610431 612674488 151083344 60258477 478752802 149243915 560787026 134072178 537965888 799814467 490614772 525429964 676229157 352209886 931694019 117727309 289725708 693807938 56527457 291158084 582255909 217039163 719985479 503397176 148991685 440365864 505480380 128815795 121443335 117233633 982491532 37605377 247027010 955243572 959755412 162920300 690376750 757644721 375498862 340823181 775814275 889618984 760451593 843806723 956041738 689310756 93699887 874901608 239127541 239167045 907800076 325375670 62727552 442058447 233094899 238126207 178841342 269700870 723463726 583486554 343388484 909339087 65509745 405871411 604331742 847099425 445085267 526091854 376463001 514193177 186028641 828940025 732748292 822924925 427279270 982393233 607211490 19683788 784798960 263292562 147356021 742387594 957542799 114233564 422954241 181362168 263112013 333721711 512447717 69871614 997846454 790384837 406432187 202911654 900954428 437714323 629553342 184715717 251798952 896053751 729877566 48123976 626305772 325192738 709312726 841023942 776322514 780953502 301148619 478585903 983892173 181236409 64891407 642918879 7462323 367603940 705675751 406029878 561948921 831806926 561274854 330146863 765493084 35615459 675326103 579284453 481669803 481980660 708531559 200357480 835897540 737972794 940081914 872362226 460519260 463205829 512013714 868829118 10524109 107113878 639672693 733595657 54960122 366053513 418697151 344834056 996348062 213290958 198027300 90371375 251778614 170023022 170130645 465095938 743006855 972994577 914671261 552745113 623495817 612279119 194836998 10210394 327098380 431454046 850134918 392586770 132274395 296438104 193137340 491416935 619682514 941623457 499031674 67485402 604879569 9217003 259186410 580315592 497548799 397117623 609833534 769363653 729155318 101202817 569769361 104625143 955107737 925422188 987449175 100167887 639343969 674973102 39178106 207970727 234920740 539481935 623667546 805186843 608476849 466079804 229225323 524946857 500985963 573394585 880677261 450640951 78644087 808428535 74484577 547839073 66131401 528924865 159414750 745419106 840560403 385888117 974198880 60878635 799613205 591905220 28601112 195088780 961351431 996265566 286205973 565338794 831635865 450852203 249972213 92361195 500228412 101727328 570276677 652112077 692543141 334362583 301407846 841068938 516046645 453724592 705614041 482581244 151529211 623749621 567356974 889982927 201242889 960798378 256511457 157854168 638245842 694704168 936636624 249744526 967321047 646423625 108880416 915921455 955733 644909859 270642204 261165967 998535552 541948922 623938455 62484876 908637436 292636377 778340678 211144132 192572596 905545360 640247902 112844776 554692557 818005645 990857183 311173566 103754640 23217927 247020516 69241632 299636108 667709060 321219708 432464094 335413160 511256467 439020024 901849504 109783780 937428328 750159841 301799345 894071225 847716062 752038879 995691334 489941232 383007850 780581239 565710555 583456436 593877 457713014 806436688 843530190 136203102 864677627 929387043 998012918 954401023 339665640 479368988 10769582 109752739 400188031 82202665 432563622 339656326 679647532 820865700 188685407 26350496 440557892 127027419 1232514 836583544 724959796 146454115 48761991 768772304 449497972 890996708 419746517 946588539 698714083 621682425 201478099 958286018 324291718 11643739 754467597 787422649 89771385 493231428 379480922 353685547 615808918 380565157 476245408 524312261 2854942 547705015 545485877 940810700 401607062 166527350 564694190 43000757 93282463 876437013 530603089 354798225 748907945 20352518 131401413 153663769 241362506 720815000 428220800 477871962 567798736 742086400 969400874 388284822 14285640 234556144 689842593 122379856 600321181 886544640 378624392 302066876 237814924 164950612 88343948 56605907 451107042 38850928 813431832 766455969 661258701 992087108 684195458 536139502 813510729 726219275 391703722 798548294 659249560 900480266 226282137 26534796 568930690 120719996 149359235 845032149 313522630 283788074 225750052 60538713 207362843 581345235 207942991 133450747 297708251 520472601 944456081 171966752 918819233 108953284 845411841 764325298 567692528 984435884 108642654 913796444 505387912 821169132 72007340 19907307 445562640 401678848 206401312 232422329 656102245 96339308 569573283 990400932 938863571 690874814 77961400 220620430 177890942 841142524 820675223 639751824 717334512 401643099 303638878 347814296 502168483 248201148 283651648 548860366 196981739 42243953 654929880 513961295 485665222 97059298 813656274 390244700 145165360 821928679 694180916 317034071 354028321 575260602 620063345 334745382 411402264 533005220 144758690 903127134 92874014 666430346 387653208 305925305 780417527 212527840 96698027 495633550 181849446 303405276 207033657 978903351 495753678 212615354 887337622 360272982 15172482 348239464 416070991 655055876 583368521 45862945 625471134 756180344 243777114 812853616 281047293 118053415 709804765 904572241 450638508 492930047 496304403 405486268 316534788 486637237 711893505 554415078 9993835 779256671 21643345 958865798 801259138 865354540 362494848 336310192 766856925 550459500 137000710 200262590 680812434 642751982 256163034 682584350 864668716 401545598 694395886 491247439 390762500 238669719 365275160 686460658 552835540 718961105 54361746 675238471 763514250 744781319 855571722 340126033 370732758 336481714 835632544 721682115 884703067 245098008 720026237 540592266 240762195 478643548 274019238 874487931 329035077 911536683 595805366 166342996 809337034 335029316 883734456 746469429 19739729 711173807 723117762 448868364 454150892 831177874 840098923 15757022 538045990 327704227 797448479 609394774 862362492 736740810 434897193 45730828 489942246 433349056 421861980 671297108 764804420 819257302 752524035 95527066 546380487 792624043 651363007 419883744 934498147 493102359 401008667 619853618 669650897 188789240 908188987 658164527 857111491 201797966 667819973 151760405 715689168 782494186 179426297 450248464 128408825 287095607 68736705 847697078 638453507 131674918 300959443 26116655 561905371 72271915 625747927 556224900 757375677 581377542 368264120 204419040 973223251 861787513 19232099 744088413 559538252 574077439 994635090 330867500 648989031 644867088 751016997 75819320 211049610 164743992 228038563 367055780 810794607 854750091 372195958 45321032 516731140 867585529 597038273 422274225 705425676 288959469 202163647 861920151 944785155 727757626 443605869 777869961 894263817 916491939 744207836 831439468 345622529 904836803 188027672 719994179 100074399 160096574 672355008 545165779 607308097 648733274 637142914 280190814 222650785 292347310 401424503 133545536 485836085 107208969 715017922 228979630 152769081 515988543 970127986 465608081 672852635 520492718 748758761 37464876 617143233 34122927 214160799 626808094 453656062 517916642 105093231 973241066 533220524 741232095 774598117 12532731 553496254 331683992 543977341 710009183 326519077 772133116 995922921 883984666 391258601 445587290 574053037 809258270 44882575 571541428 531595521 635023071 313925468 936887128 92850517 574533290 100231335 199931065 702605594 318122051 162672418 949532084 16416547 552322909 324052104 83076722 209329629 528373850 148048116 405469126 416508313 444278587 697927136 110118960 768229676 432722287 167056765 337243117 43498696 989525079 712355652 996377708 794676645 973081197 468700733 234264434 253048957 558951676 152738641 414971251 268683895 221931665 343201775 641985491 517588550 960579554 947990735 90237619 322320335 529100032 330518127 103471298 277427083 12919058 415546516 275008490 240174378 500289424 2664447 438839644 47333766 718097244 233073260 415231321 132441231 288511794 229664126 205637671 194686790 545093958 605757451 923454674 355073191 396040294 218096690 544810922 145160652 880408313 36349619 736061690 265129769 955982807 712464162 794910955 795543796 97280698 647285562 233320738 34804313 843404308 467990194 302029614 613334388 590201559 129383584 547990457 824771600 927093225 457829774 19996065 401166521 932247732 326947338 468748823 564621638 533377763 118943007 278136484 688534042 44377108 386092649 525258336 597158133 333251829 375027793 460620107 707396920 50556265 180737209 388890937 589511239 973511440 306522668 795302140 341438823 377424808 571118965 552447497 286140381 218254818 599750819 924855099 563363816 816688669 207503931 114867198 802067457 389655358 819076252 917449525 229492052 473790773 108205157 104443337 311516127 279319745 482682104 225844089 37258097 736223031 456603342 55194338 720757296 35879434 104691770 791725360 595975639 82539398 330464928 357951206 456656641 465221421 549539083 985409328 956559494 161784184 383766981 465203278 65089567 281138041 547693795 143446367 786322792 732364600 545176956 940993646 128596961 455365779 150237720 536393274 777345983 61967982 522720627 78919347 456954660 713115565 656261547 471040408 314668201 169783301 602872273 833393821 564796508 857565734 479388277 510310683 493784372 783813080 123055227 858174342 884745847 466175511 382084393 777954150 136667882 349314551 686835384 44034662 462281455 449811557 93405099 506469346 398143650 108442232 201230104 349105808 262551810 634533456 479327149 620612322 638884851 204513953 408805976 590593381 301314087 806675410 213244580 551287392 32873916 830549118 607704046 548237815 439447638 974756176 539415270 274871769 46473356 100084225 834358429 468532179 35530758 542832369 385357163 68215183 827782881 626371769 47257758 605242036 87145232 200480806 144344846 480883076 768767322 876114031 649508265 705400942 997143823 69854531 937576995 914202129 246192339 762877511 806484534 109360833 737696756 626096729 58822635 421996695 941377390 582250811 555235519 653719238 367551845 701727970 406462034 198885115 653881658 833530101 332011790 655638962 267093396 439490130 786022680 42119345 210920509 771842169 209577074 281549008 668249082 726983716 482771886 939674033 701694149 418206769 936620454 828037311 842051810 148508681 793125167 66816895 444141109 320586041 540662429 964002534 288256304 611992972 416773346 844853284 946332950 875034544 291324164 361193181 547123465 744561768 468616520 9166814 721134009 592668945 851055487 189954280 953539046 212345552 167648574 316072155 285316796 678922367 699148799 198581960 402265898 832594863 570857296 781523188 147170251 66641972 21374328 810705643 369992435 659175026 17413904 605424826 550966666 762921995 7613953 457208302 875733210 670649893 186169792 20365856 538107683 185280423 542003289 858559183 187673867 507516758 380475896 551657570 181359871 365267067 187816621 311944204 446365430 729851205 496462599 510517503 482179303 917776131 713085397 156160962 718324222 268876706 54396175 536188221 898825825 293086137 875112520 868939748 638798439 634131071 517670520 985556798 225039280 753710982 438179532 836420178 712232517 274779119 501319881 519662947 616898462 581322297 571321479 290885897 780042579 283041152 836006911 608676186 612466023 727180688 964408001 967234698 915414352 768409253 463017938 501496298 659087081 896808515 403091619 994288363 524400685 253649332 264252719 37081725 45953122 494794065 944151802 643665601 616736188 736848825 880064691 216515886 510380596 317575915 366601328 347013473 698998865 726585540 77386230 484203533 592436555 430281772 633318111 535346478 732519527 289675624 609253195 171651946 986358881 341463683 654035159 420072987 636230198 137629436 57326351 513609306 180538673 164427030 649306425 676223618 478528664 123450233 813742104 537594504 156375869 667389686 641583777 464799029 729880414 100400578 23865585 199324671 338615194 583830961 92471356 524132079 266755267 772975780 318220141 172246290 758430273 144479864 156859121 527647937 298748904 957659658 484579377 339849127 147054738 316920676 959793627 281773159 978460799 48703748 731926632 859784749 113706785 116855800 30323156 85361525 190257367 700642998 70518989 297211419 637256913 867519037 723108024 538306407 91613218 12944437 916401629 496064551 565867808 775482406 594378259 563807591 451596492 862754090 177598902 719160794 141152227 719351511 726057837 28864937 964597912 533669968 579475681 347505844 9950237 747300150 940856081 246677210 431900599 393170060 583397949 725147457 299429444 143576281 850943338 365159579 177042325 612001090 674833286 371421130 839320957 52510474 532002117 343306470 828004321 819746149 195574474 707553216 145163944 922241450 363583497 146362295 579103610 840378488 352325353 627543649 319125460 529342002 638861134 484044453 834100205 119266511 775695230 413062403 25571103 889412036 23840408 400365209 182569261 35173830 478073032 955068563 663453000 740713314 644329471 379428552 699602195 622591776 592410426 367165964 410433636 540616426 148192031 184432105 924942809 645833062 982572072 518654128 728173515 161455790 8634557 597043218 366710 227751714 150753067 127271208 809867816 95992944 48834436 179789047 824711061 93367646 377381007 564925665 595766534 468624172 84585777 959758301 31558612 776122012 961651224 994042847 529339740 760394809 585631020 283905670 967675611 83866149 436246379 250658949 6921283 350969745 379048678 227076025 370092303 501666985 355404850 666447819 81131118 903173765 168671735 21980895 501877305 44763748 887341291 312870181 296462039 290042088 388293741 913260075 494849826 698727982 579564190 290711954 502904280 273220300 417010184 398796060 459861578 670300710 36416565 198252110 724961641 213702534 551538315 242218588 691120641 872491563 37703477 867728736 830403428 525580607 946469770 638266906 740066419 506348819 248277695 857975742 56499248 153877523 299351685 598004454 192687568 233314104 176057960 598162384 163217304 695708805 812724554 990140202 363814004 233909784 279959371 546975412 642126253 159312254 570625810 646542527 658913079 769753818 640598311 101857117 650702113 915898324 248874390 600027064 255338268 117292345 980576736 394388107 906946909 396608373 313993976 313164045 682125757 1895662 607583473 524613643 300710507 319757424 470166489 183773350 656251320 279600279 367586192 654677295 107576379 866903454 332955955 241286186 795432322 797981180 941422583 53744834 680552445 377139349 407491630 935274871 593343821 676920538 544107797 72780370 78069952 953972769 267335492 388776891 239615958 911897273 319120932 122510548 271105568 177159312 190660840 478135386 911821844 481350555 541574184 121995833 620355607 690884934 269776314 36518810 59900497 870079293 670355906 959463737 113461818 506934174 588385113 600137976 629368161 508020070 947527919 937422360 610569135 512333869 545550290 781814599 131457457 31259276 727219827 342078196 168811707 693010071 128637990 726830848 283421204 41191063 851095023 969745255 35550447 388184993 868830600 916966088 492831820 879627208 423614218 612800802 7707461 183502725 272200387 522769320 687351342 222673 361578034 988377268 681374550 683558196 27048099 137989172 999105578 500598466 340443088 687356478 240040651 943704393 460845047 528194270 910502654 218504808 508141539 976861229 308915394 108937496 421130283 90488790 693497010 133426985 908209766 187077682 676057798 818424748 609698135 733736547 127524527 462561114 870990880 680549059 293168929 907988646 898551771 120810426 304836186 118001915 820386397 379442488 660102978 356917969 626632818 369975435 336964906 440616209 551270980 696565327 928575034 275609705 635124006 422126568 638718812 240934102 39664934 394070014 311487838 877112370 118110552 381976569 220818813 726066942 945635690 368439516 323409398 624216514 969524719 952884008 426741454 425950566 433452518 966852690 121737514 964497820 6053074 243543069 389644174 218883310 91088244 577626685 950413242 412917875 240414489 624875337 681296803 887446688 854990488 753158427 823780426 850577395 18479034 870291294 759775035 125388783 311727380 266067908 228266551 978221137 778560931 569302796 371405076 711284782 697150463 525128206 722851067 646254848 321367579 301124170 103170018 19752752 937626264 26198812 802574666 492453900 122888335 440915320 594344424 276656056 827083024 786159160 617154214 402652912 992126858 258093934 845359464 760750458 703974341 652194143 750103408 745201715 861688485 408239871 551560231 612636745 205572348 608739791 411793127 323189450 993124638 464901397 543023991 692502902 586773251 693889381 620927528 231879473 145116565 206090977 408491735 120519573 823375567 167625371 192013926 669374 448571091 443028673 945205075 129168578 69020954 521306942 404730859 180868501 619225657 274027353 553295040 442868303 648491938 487056003 248798128 680775257 149346662 130376326 735050213 441432745 834592041 372788907 974829869 878026305 64349211 469161037 585736354 422450827 374562673 555284687 337298490 108800126 203711622 356342807 790419052 828607630 192708036 203567142 152523738 349136886 390251073 869144955 24605500 958176999 484928912 345091534 542328659 462867087 691294171 443685079 673037919 645474906 671471300 721562534 912279785 372345046 169295112 495710530 408863166 52923925 89440366 638755004 999242008 118359513 351641848 204622711 881155518 871408205 364839192 85221647 396875608 986931204 347416397 800805116 576797760 928925694 8371330 492421969 345368707 430287261 579876682 958837659 842369775 364885729 744080695 557483092 8605546 308768365 741475582 137147355 26684522 62481945 697638149 620032934 386580335 674442070 223389210 955026976 314448847 6333235 927706018 854844198 439082781 809056730 700478808 2046576 833359942 134741702 449052444 346796905 29788866 503272534 697822305 67397739 822193735 133353297 309638414 111437998 342190063 956556746 558258965 886831267 161700903 800700302 146669561 856347342 475370581 169101786 158043543 370099776 971545438 21755423 479982199 90455663 955387143 764873377 314341921 226668593 631438026 87710583 610460621 988828841 893082970 378066034 164045216 28521376 247093355 763857958 900557591 30101334 704383052 582554625 350011157 385128949 919586976 676978234 487617112 60096276 412916542 302390707 645569932 930574427 852705030 981013509 559445528 376702488 604224333 960155695 843614080 56055937 204452915 612303535 925040647 136268654 410261007 978747265 80688941 730870135 708430095 431544479 380299323 806606760 699661271 256900987 782169770 807776349 723296932 135995895 230787240 853655801 682400138 77879651 314169107 86870381 776183403 700814130 30492739 200456899 15369079 393709330 806838618 725443290 945554315 909662421 759825061 21618361 47959928 691263626 561864187 865252919 204814286 368687609 202156838 924419556 601360255 179940235 317805329 965071479 905866920 77414616 913154296 342567877 805977295 580832019 751069593 416747772 35505987 640362379 845596770 284678975 958709802 491536121 781168458 996995006 267765513 280581861 434869410 541169445 921747238 450867349 369797147 101259249 660887022 763491910 986068904 450134751 266407486 769387454 835753964 538324162 777814036 624862996 393899186 44051728 103998698 291062310 664650957 715582354 554639905 840635922 732443621 774780998 296579476 664061150 70734114 447393341 975567378 595204942 860213759 155889278 559424958 939784132 736193175 181617435 750590492 680598829 477781960 25436579 535767936 590686482 824960351 920444434 791677804 742798691 131992381 45019997 66323920 151874074 4857984 831999329 56918500 735683474 844494645 848358121 295584948 830960189 357507639 944365429 401814891 545823585 896312325 648589571 240995429 310257010 952712740 513999582 651704015 28860732 678783658 749306000 14980430 522458840 62726715 153673414 521826048 913670056 983622440 534488887 664210708 679775590 162138392 563411774 708562462 713965051 434610787 560913079 542123334 522197409 167430951 980395430 626956981 914334579 649000612 808129167 650618714 884556447 39970924 103254540 255906131 561034800 40315968 249166976 313381131 673349185 873347063 373618917 63847347 644334542 820870230 841841460 307360542 572997140 977413607 718550715 462818789 601648444 961352640 778059145 659622013 651696185 566952126 420945134 390411539 543133700 498594864 191688791 493350165 882678937 531395173 484755726 167471078 204595380 210748304 567297156 534778920 888113876 677293849 405443517 862444324 645561787 195843800 899812010 685626206 880871421 92929068 722239417 823234769 754670907 767711000 730932280 689553842 125344815 822535523 902908979 125261352 188303176 947979323 476740522 534341158 587855910 810894612 882627162 152864781 550228542 561823965 333559647 46045580 595492233 540164770 14969953 581007822 983368420 378304086 983578911 320195075 142169083 768843229 327522773 634676822 145934410 362621350 994518024 702465091 485605002 599991103 117335834 422749240 642869975 287312612 955860243 482587370 599444059 398607671 211613904 660401715 178441283 981705610 435130073 944969092 457349809 735833639 854818311 574426597 401124269 360891000 684948333 318155137 476647074 680957732 54988207 685834006 392172890 946878677 554262986 45696997 293524477 923155002 212538756 859599821 174369951 847977256 893803420 781737736 570173288 417633734 862508728 956678072 78630300 396566968 709737157 580000450 137814408 553549998 79452900 154762709 918670210 984342266 748349687 117060075 119033806 930688194 79657912 808265195 799650121 676907992 895748286 599330110 8648042 575910102 721733169 890775596 695133236 514921902 280470392 184459653 200432636 22835456 823775400 917470674 413261615 568744624 242590395 875503843 694718108 35852844 794112483 152105920 149318057 929206886 948568325 497648107 681560600 797122038 223429874 801826449 926431313 881747662 886325565 991774279 661342753 817157736 574728312 262530148 236211263 575200151 928926158 465415857 971315077 157882976 568109289 252214842 342801608 308946661 907256488 519270132 67278602 905874693 660067924 92655963 262909904 918896063 151830917 217512100 337546171 857432668 298159460 769020756 811701730 501582784 638797332 67713723 326846698 533543314 408125848 338051731 767261465 488465607 45196498 336269267 659863824 988710971 105086453 553056140 992587898 731045366 150936079 52916042 928865068 857923831 2912773 680841695 473801114 674582202 880826920 176182582 710677117 743140454 346943802 993849893 182954678 254824834 145112774 909863663 203456443 254050054 571904993 202036552 809297680 191700056 952585239 688929720 919301383 401958449 103026806 809189221 148698045 574729272 941202453 769085093 220351856 742941210 648045350 664240544 316630897 754759917 638178105 297641216 40396870 150535091 245356210 92091848 778489332 578083339 977922884 966275731 745484595 615887437 34662016 381981998 420028228 961532978 665673526 266398362 652124319 222645348 614092781 608273738 966667611 45575711 588092741 290647438 228425876 11446876 406836828 48686946 24313497 822856289 388493449 520189373 835432045 370943493 21014219 263403637 355630858 166948051 823142343 306945596 501913343 633006425 689365821 114885136 696162929 650447102 643045239 140413788 143000844 878065711 513941874 213202782 450675227 110197855 202045954 610052339 516396243 525294322 847822042 875147092 153757877 58530916 983424185 264241461 330397110 337515033 869534155 626122619 54725615 100484527 660995847 999961741 161307315 106554522 433811877 252608262 993602162 940516231 37910827 640900844 648549213 891784451 494739188 44070299 20109111 806047421 152052714 549226736 572434390 701446473 630503395 80195332 161923596 471410105 818481530 910542579 890025789 161047330 681473340 579361125 546184661 206350289 31117694 299138877 902569633 551848195 743840095 80794353 194892895 284220106 815677363 935202265 101522787 626265788 923761451 875143968 310321269 435427779 275201495 181488131 875032121 622900487 931219122 268685782 907556313 330582449 470544040 337387614 322721036 23955741 546633738 428571921 651728607 729552633 563547213 360806374 863884371 812422343 652203251 147303702 418218411 961020685 566098801 684930697 170770155 48563632 522795159 920731401 702831120 322176542 942506888 369275243 619525378 408456839 195898673 831478392 655053027 40762609 805786554 509282290 8917833 47880902 622546969 950785663 837656843 250233328 820250316 334990663 299187669 645459912 183413071 241448264 795602095 21928585 312366125 782247415 214263556 233416120 665214173 82056702 246284143 434391206 135162194 795094168 312918988 98102597 727604611 608118730 466205770 977197578 73828470 207544051 776159593 119135608 329394871 70080037 679496895 514100065 978479104 842669764 10747316 667623131 577220691 904187326 449811030 650384300 148494757 536984197 214623228 870783178 345238830 531688377 476064902 965897296 210745663 226652241 814476417 690547179 181135171 967749605 218031048 219227326 324142606 342642930 894167294 571336873 518116547 920927348 45890575 935039425 906241233 366126135 173852094 125007018 317600469 726505981 866697531 328586402 609941124 163627105 13148930 690657388 382737512 881680644 488071434 783759578 974818348 230014828 828507428 130191129 325329007 623251845 938628557 380084769 887446801 35203121 263530291 260147748 333998755 486849190 485411259 200006806 791580868 744848315 870976876 548658059 817102708 738954776 669411478 248276443 435877412 429310614 766304676 998106561 959598251 657106372 490865983 364833809 198286983 900689578 581467931 915949345 100548921 182789230 765345893 460660841 911865637 669739437 603705666 554389297 94018805 18396056 161606671 522796037 516766912 317040410 865213545 224905688 648980300 852631306 571790373 809300497 815372377 122605863 700259059 439175818 912123418 985610368 851492816 763786755 159183568 373188796 530979691 157645636 753785981 51542402 13626555 476613209 291201921 658321086 121200210 217400628 957053174 63671897 456048220 391532421 195749503 420178468 79454271 804757041 562871627 74408590 875348334 832329356 619396235 180554398 194119043 139828940 239444761 24366794 274829577 185706450 279781104 820027581 628210027 244500675 965117444 51776406 213006742 62836413 459702816 590759145 334079880 697772893 838034857 503753305 972799553 808929734 672784013 191428743 618665806 166098317 228578123 532744940 754899485 139935070 430769420 618328675 908172816 416417067 119597912 958563954 286975521 170805849 516009004 334537141 852128665 408494565 20076918 205273323 98131263 557211503 872548280 657179115 997401451 162170324 492882141 537090149 629814967 431201573 31930961 925149367 166106171 999815867 887805693 844824917 769511152 488759634 25010844 647379745 903034879 918823189 464061348 750833997 607984653 729011093 506671330 956916354 771057890 853727052 899297826 482462137 796662937 770981142 837883240 309859309 577772852 445876180 575710658 148263839 552964580 140551687 690720917 500509243 729278777 390994462 798320246 843198758 396519030 71856276 224620636 180616559 321912187 945281209 519110751 890894339 114745152 667719862 123632688 866428152 62965188 135256190 496555907 86741245 561694082 413138888 191139398 257090890 128429571 606122584 87703636 700518076 982908836 54571425 429711640 987381500 745384979 73256626 512438162 94835928 399877263 487672616 459115221 208706479 103886976 276588950 728837887 804337732 291996177 279058181 805560360 130679323 82119720 196634098 505721439 987376275 472210005 413924423 554876779 996405507 569961619 614032062 521465508 367702648 828032453 186323192 629659264 138705243 486638544 618542607 399465490 360302249 97162890 952530978 637054013 181270394 366109290 190853611 700898024 670796295 402581447 9181576 315484356 879621369 982832164 725471959 210540788 692171664 432059628 722915360 101601816 927736609 707993050 134392064 126271421 519430023 871392536 417375015 664565344 415782074 833936463 935158565 297439364 979519790 847227207 928068736 97944382 677727122 721430174 321430013 64874079 519568762 394655400 919538783 56344027 566029635 92277818 647165118 325464697 577677235 234360453 46791038 660793148 670415043 297676882 328039891 324114472 360393307 843709753 784181459 374150601 1146653 137911175 642080453 31364049 800674143 796691404 781050100 282028674 664052753 646630006 722021321 737194492 509108352 191689628 646033877 109099622 798412961 767677318 190145527 199698411 274616443 418317657 854798508 108468762 687529698 278058253 396334649 965165989 698083251 4018981 487932668 599956679 510700387 389605757 37183928 511380657 414061734 437023701 299911483 137475359 21021930 541898861 319206611 5942030 132641826 618326149 538269280 405675779 164373968 192246188 956028813 465099757 804711154 517249791 163091822 258431314 451010517 808612752 176619593 518732831 125916866 986667385 439088103 408524941 425985063 929161988 171926207 131250333 21332359 912561416 613177694 155010701 934260856 702512041 327490695 569326999 78254298 842296431 909020445 740019667 698674068 218862943 177796914 170803491 657178414 16993379 92414986 877681158 628418728 268758598 944395340 600411298 795157587 672277620 378120556 858174237 787669420 966444636 990107499 691761124 770018847 499756008 783839387 74280356 132627579 406267021 909657434 26358310 149330228 420027520 546278231 926177110 955888690 802528736 615182305 25257121 948828888 60569549 837416738 425749078 842167594 644344084 667690972 227335710 54684808 933611989 350624109 729147710 245262363 939780420 199861606 98833184 217820488 182657449 649485592 218103057 535966264 857653983 997230245 666473322 949423793 923084971 917051249 109424345 515286745 216383241 273722896 485624483 486599427 263082347 7649847 517440781 252865438 292760340 772874379 856983242 978753600 17734981 201309105 147335863 345640433 377673521 301522390 608946353 966754721 412710778 117510725 742642874 940367354 334957480 37966963 609808230 954160891 789945595 872790012 76708311 25529293 701299525 945062644 939253664 701658417 951338134 698019840 560584120 742114432 692918697 854761125 817636935 315244155 780678096 256484274 618728305 890789354 146649566 906945830 711769264 375832350 25331691 714482976 501481168 956685967 949903086 844276931 422065043 35339041 367612135 825684286 55675898 558087987 455906828 36901432 705487466 210048462 697740806 802279290 942453408 302923411 790960382 207573806 614201243 428141657 990867134 790546699 938766454 97720752 308767989 877819878 53566206 61915569 677682391 180973341 733810848 594216573 744403787 230272456 627581358 841760879 537392913 988588433 338728647 973964445 185051508 477237171 410964690 797147000 596274079 152450740 344592772 503058181 54990394 761044019 732367582 411690695 411874428 565860824 991944306 412403057 668636460 428302893 650704844 312771156 635733266 753913300 564115258 563152866 426932965 897000374 140125007 401166129 677781257 113296760 317354557 701138320 536699705 613289866 355372082 411648068 349968409 206023532 818797074 308793413 170284740 246978643 455629215 88760100 636116003 883625112 223139148 706492681 930545270 595566828 251536633 606124027 963195386 281932656 686159278 42786337 96471423 958598536 573272584 77487069 378279860 260738720 815418652 433520004 889480596 613402261 564273333 357397082 763115324 516706894 539957262 912656013 66970882 974139761 116326684 77970279 300897451 456435963 506186519 298639080 314907536 74521787 660347944 350260856 198138783 355804627 751773249 389376840 959781674 726393436 947524271 734758513 19719793 976824677 257240020 147481012 182362110 583099126 772300601 388506528 833389076 933277696 296309855 837728532 214055623 345211628 212736298 50662456 631798535 431197797 537378836 469005326 193981617 20592556 209683871 117453982 274462657 995071153 870771740 24104012 83311540 516059801 636740875 814126126 934964741 58437948 268344675 340386009 171472746 689764554 512797978 72173839 142927049 116457471 90821291 927066173 964894936 470458537 949976543 65488299 377715973 731417121 906731611 771337288 460371116 308472768 434700036 397626068 277248898 59491079 36100365 357621479 294992346 99936458 978356071 378455131 288852033 544305094 659018698 304824440 633028242 196186253 672300487 353527240 820937515 373818685 257734881 189847372 634989796 205200595 771816721 368738234 510843546 896491866 67000885 123003015 590556666 951889439 932278157 869491632 746341126 447316394 545922474 231128392 857407281 486680927 455115991 962893952 275711353 149657787 504552284 17193447 805128868 857378055 598824655 143985135 801486369 457664842 257336933 186892019 349345885 620416884 3168868 595185835 143519345 142099203 884440636 951608539 658763910 325994248 704047669 550322923 966199406 161417848 769857179 697868927 489794016 410399751 940898407 149752768 994651037 376855954 354334410 393733975 520808744 188072027 112988439 693171746 477624986 478220422 673202437 333452972 388183303 183727525 354391393 923951322 895972546 596489262 737334109 722607656 732728624 1848224 881756061 122073269 831908868 83079999 91123281 795985581 635350817 211437014 721230260 562121865 610262309 346150864 528780507 837119301 14226200 54277508 389405543 402818021 857139872 484827354 568939190 837402809 955561025 676425138 116449533 62210737 20996401 314297433 757368158 859924644 610341358 807139392 245053347 99790065 710773479 632716150 28312482 735880932 764693830 256530480 522874794 97207386 790335174 754395685 176514538 14354682 565364018 318255508 553988351 507157183 664011970 522189655 817215241 545836001 12984109 222544313 545466139 677379624 48015195 821769578 702623066 615106845 566264825 444435399 278644163 908894760 579566705 875896731 75947795 709433825 98900957 340560498 612181173 786656023 829296606 56209253 584809291 283161465 739107288 273030653 546695137 463247596 922878848 142595711 778975303 980158260 191986025 777632125 776879031 833288154 303858455 430196355 793536194 204179426 346279791 344527014 916516913 311748665 646591391 925459822 830459913 966917734 959544656 922182237 967726305 278734132 809606261 597449492 232565302 884145290 228459930 430871878 105624746 225506059 525541238 383427675 802999715 12157185 516840882 18994236 16610006 992749120 677032336 545835868 599404422 229466508 950716926 892810855 856797107 300409054 696756166 872776688 720753811 336355971 468462149 553079594 194592148 71903380 190693480 308028099 275514007 307967047 687760293 722050224 971306608 92671596 686814479 95311423 145106338 18844470 279428138 37608241 122988858 458839378 525285591 546229160 680966014 10730870 836628438 844610894 47372108 403442108 907017106 470413814 120220910 622460759 17541079 496157849 954708784 697377833 564942315 407123010 718949518 44862549 253425380 371364239 547419966 83472671 515689782 209938515 471912664 456941045 136098937 569460991 899507884 405424414 914689237 798907139 905615589 559663619 166267162 860944265 481138824 592643204 89868639 363923620 828010747 803516149 908824995 76965483 812157520 925194599 255514601 818769761 571601597 426170174 77544426 567079503 640488242 746324942 410617795 828230678 121128933 700381484 167064720 327751780 248484955 27675648 471769119 787001014 997709943 159415671 553068845 605601803 464041654 27420291 296784487 114694563 103211045 679612037 999061857 181230826 363891943 679308632 357964624 670602935 160970563 443276312 991677826 161788008 101951149 582025557 755557215 580889380 780534681 5765876 294832693 446230398 163744430 231503782 355574872 312473121 374291828 616310766 273316765 326586207 143309469 841761315 43513037 616265750 3064688 778311361 31329608 472990213 638161145 165379711 334310624 851599071 217774487 944226617 266443802 378613736 184847061 576227575 223433886 785534512 162992003 9224589 367319678 535080131 870767600 535684321 542699985 340272691 91948575 161849238 58247954 377673774 854228806 796793127 401867364 260231739 200466161 155699868 703614307 141419569 893449015 799831443 671185883 285276597 482048236 23507338 205439990 392319174 527427928 488389026 572871769 428868518 902105731 162051864 627094431 170379740 579839697 346119187 965255720 893086760 162027064 477976352 734430345 366513476 684743725 380460161 285136910 568789208 930760216 772235039 4638837 311892783 431617615 733739453 709212791 713431831 234470547 255922621 744059626 334681338 883092588 200626587 546692929 997167813 157810925 651148617 766534911 839091497 54461304 452551563 201753454 480324204 363295527 645661583 397977827 763781825 859495052 884564540 124705777 333588339 495623912 643293372 407328402 484333370 792947696 344319979 75612414 5701798 800877571 998782707 868650270 438027879 785760741 328685354 492982489 504570835 696556951 871922078 443194526 488639468 553868 971497330 250685528 458817050 175049680 986094632 18112933 908227248 677219606 868386228 588803488 809805905 532337566 676343161 891024829 400462198 795275161 827792263 66247105 570500864 544913784 187759237 145452648 847231315 459647240 616916447 61348951 337082096 976386157 555651173 500864374 895927168 860864205 878871211 972564221 374211382 921556285 299125690 722728449 298035573 144084382 705453290 761916314 546516751 891369335 14873560 245395446 592592544 28653609 276146981 820528822 37834500 385606567 210812513 789810271 988786656 830410198 397334195 680934447 488234393 148382716 404059807 982598033 843213307 346773138 686359077 513553494 505289388 234977553 699806715 50646248 766405927 440904060 144516220 710722288 650192654 951318506 815902629 226844220 310994119 78563127 882765314 813905127 600810144 131559923 565675007 766847318 92493075 38372484 979939010 155089549 956212972 187875237 465525598 421199568 220570315 680031468 61637218 341645703 948110600 826563758 313472625 786067691 136857703 634758841 948142657 488739682 38651833 556616391 358603838 318158386 759525315 762871572 309951514 742003370 652327033 607110751 600033380 666844892 325680557 602033999 862931202 430147662 952012747 343217056 446729292 658414969 910995950 750866072 573267266 831966980 58748433 493388287 623481917 229479569 246893878 680713144 647073493 213912939 921241452 410753283 365624768 331799468 345017930 751144587 354972653 188782701 680158763 336020088 805070510 179169861 56738733 728150338 159848325 479960813 563573180 547991948 494725770 411740330 708347916 659337898 339323619 141280302 228499943 493439038 908145032 321965486 533882198 852430354 289712568 3835373 269470750 682197590 872179719 460314054 318771679 372894358 741620809 810300280 727977116 73491651 426585189 340902064 528471276 572147660 238491523 646413094 941113414 915466766 536098448 342908222 313350451 132052479 638091549 240170761 699873311 146491213 741280720 414221926 86675075 43513542 601893467 237859008 891331284 107310229 247746379 54839245 399189878 748540549 726588076 417131854 631525830 549979386 772498344 743752437 172431577 124623318 792979261 500682789 196118127 155903464 72994490 988637375 836808797 542105955 510570698 834575721 199194473 826638291 160778959 123407332 466341761 520592501 372427712 414033609 13276614 582299569 871776661 181578280 712895973 109309978 637107265 596159964 5287733 131816749 418110476 81860660 434189726 213156318 404390023 165560280 369989048 803549450 950540157 579824095 136706997 256821387 597617862 793168139 558761251 651209526 174263629 581197799 596566181 49450033 631067106 563129114 399763313 542907581 455015382 788452477 486343420 499485029 689779212 124776279 575109530 970886530 983789602 584706389 207421053 960546998 470212920 508491934 582325743 80829480 314549651 157267431 767850678 621331901 737344175 106152777 658381468 943031070 596325251 705807874 893310601 823323420 130954513 405196692 594591010 616029509 203108602 150230305 802408317 230048564 546409003 523695608 505960151 462558870 418963935 790899994 802679384 394757602 119622401 670820593 298747575 204071255 226576300 238496428 126034638 406999349 27799404 137886665 771206893 80565527 180029550 813987731 486543641 520056513 596011971 44594264 699803755 593989338 165878892 385580019 444815033 774314118 105328289 245165136 826831579 523971835 267707332 335725810 500335283 658308608 115423870 874489285 926054381 53412372 584806936 559792753 107373070 578765399 60879234 22794144 781139967 798951020 311998659 929406869 336391322 750910013 147506506 559886646 966527601 869475832 701007259 27086073 575542015 511883373 577740323 967625607 836780866 794268189 22157738 443478208 275640442 369827508 151437231 895396746 380122026 894149228 144975337 52852600 878764618 11032488 528820214 619268465 630704827 676199253 318682530 810274586 805265760 80899100 911148394 896935762 486730408 520712978 301896455 297864706 395175100 776640518 85660481 673477169 493016491 226038781 973382488 858511123 743535808 841879625 363024201 999163450 551549180 83006854 804746525 908378452 721746493 954941315 641727778 287244092 575268496 766016337 871127572 948340607 317375294 767916269 93707863 537084453 862343098 856387831 738880618 709988514 931208295 784782046 152981456 423231751 788983796 382461923 536840175 701515614 583642358 244903778 786145494 917280166 421990079 816992823 532805738 769424612 554116180 699269967 716327243 344891342 750213186 636669398 780048733 52704909 346024910 935433125 921443540 929826013 427289307 45083195 947204879 377464908 555342383 318869627 962322554 511110990 474684686 572557421 845544703 561339870 660735253 566890270 157297528 934334999 760477311 444017438 155584185 408648790 161028880 397421571 833025725 523716392 665142965 59692370 312553423 970986265 699423831 200728248 846233051 579487896 187848682 609850206 615114890 177090290 135727193 641895705 376364737 276464642 264231541 922332858 997243495 863369268 85341542 343977467 156789141 247173947 211798000 468997311 28195196 160739961 287906684 861617088 428866290 166651509 278024069 89798403 549643187 504462244 545251987 810322955 723083780 967153492 952862088 664867963 790833337 720337279 107380324 185991104 443091715 991906229 587846886 524001830 568846302 587643845 633836334 94938069 982685200 627646748 532395910 818803205 867283903 981778781 908350483 90260917 74794309 637482721 106831149 997746108 223898007 923827075 216976417 969490286 873660356 420662199 785745812 530672131 78779583 108798198 375586050 701793191 53183490 868113224 744887069 755973585 131065711 453166043 362160631 595586346 662605929 943441061 678324234 410793192 154501094 541477381 607361700 43938176 22487676 933660179 888967434 797583416 850984886 706047980 717457347 55974429 310370914 999265163 918013146 639032820 965543091 647919483 750255537 744010641 473214028 11840058 355768322 837481943 799660411 272076691 242149546 4332903 421199521 691766001 211679210 758400144 932538435 245273748 255116467 453783392 133535752 985282444 812663835 870582343 497916375 96246974 226545724 280378313 162932914 244324063 901666570 479513364 854881005 385761535 665253421 834755810 237895790 918164230 160358427 47441010 72999572 13758308 927614306 675719677 198864044 616637332 467288160 705569850 992370273 340084134 140892411 814161411 642953218 705025689 581809795 128541360 90225165 503465978 977037096 306196862 193675116 330525990 918820546 467533728 702171489 591882145 828990084 124323930 530913232 55699925 4403959 421677225 806884154 984248237 584503834 461640703 129663447 681034569 765309740 604087566 254117120 208994225 485620775 647225439 134482945 439943725 914814685 264469203 447233338 67203340 218910065 504793916 449644916 632961495 957818948 403031796 455273574 825914621 474018082 75034287 441560405 640298812 849922664 852032210 333114365 991475870 52636391 740657581 189563372 480591765 720525091 158459520 779524616 57156902 622388718 384702977 446712972 951971437 38151177 772380959 109735756 154312888 556152428 54023508 865051874 495779040 624296152 720635618 684325760 633134845 813791050 758067935 718825403 431812788 328743210 428962794 407257565 119265101 491788841 60763053 544833248 165399350 91448194 326467703 179880419 118890289 660452444 808119877 612016490 970858725 230889001 678376226 477306404 718617858 841573857 198313103 79731588 181371895 18575606 238185669 870241694 207628715 403155112 638894373 32682699 788797877 692329675 461908632 805803753 643728192 958600017 952012831 204936847 430116880 536496898 376503673 403403238 76564800 463048248 985568092 356806557 958893480 28377332 702586751 238977400 235380362 569517013 269001215 972615040 12283535 970308950 886849878 564778628 419189379 419893347 108960247 207217209 387444892 623925700 849848803 596857330 941013453 743276918 228197952 376040687 891512642 614564282 584980513 829545317 133955945 440919550 393688776 519515698 109812243 858603005 552232589 390792482 162049249 378348764 243591083 230897517 159624064 81327973 242962248 821636220 366492864 11252998 257151829 845858107 174246243 289512907 147793350 580697100 629240632 518237127 606094827 67329074 336729233 518819179 141754044 516802143 218447753 819988922 490950128 546647459 404287313 195066062 416254654 261526914 2243465 5600885 950612199 500947538 346953616 163878153 842966158 720918056 744634953 990210094 332509521 537449470 302061815 131759520 752815994 159288671 743710893 555062152 430715628 237138343 308197333 994310965 829339258 228492326 483098103 430681965 148110403 482043482 24009144 253705860 547780281 797251683 604826290 647858152 804088409 78131805 421563572 236895094 425392004 108710366 301404218 260731889 4039408 181410499 833942412 86883748 956581465 412902973 652849099 647146744 207416787 754355504 365865476 361631061 462381132 652610723 914252829 537125764 133902625 523051372 97790378 919331939 436735067 466848969 232543425 237919747 358348551 674260540 971669993 770856286 577582259 181208272 385111467 647335154 72722714 156991693 991906879 276565324 302361310 656465837 524177933 667743455 193404151 581366941 381801265 517935876 843642818 381484382 511138762 180044463 328813972 193412507 604448900 308804883 650009681 689631049 971992202 819103138 669695187 47747708 689869086 633250699 751224434 607758084 713574022 596668791 850628627 676391647 391486979 303995706 697225974 271564480 129365213 4262890 284473497 316053998 452020462 706630454 788756319 979713086 308197991 264110550 353825190 93714851 722359073 725875361 990559083 123867762 617735774 554943189 836799457 398256988 649239426 720673871 29732156 298152706 286338227 887770836 531832524 967525844 304017138 152712203 690325349 898855605 102372265 751925194 800349059 121271768 900775640 823147934 257425102 714981933 457778303 937203316 756684982 627400885 423854885 965760574 530951120 319495348 971377347 98389725 482574251 581690263 736223188 793402536 65042894 111405361 766871979 517723411 92940783 516700064 752807530 833048862 862304197 127468752 132647727 480293631 228369332 91630236 796284052 419484183 64560376 441477979 561398939 788655105 225477687 82099014 483689960 265328560 818589682 541596683 647842297 58599147 267064066 99422901 603804504 195534413 872504027 692470781 569098509 153756889 225535425 122316857 830867215 529813953 817501483 272242678 710721842 610998403 59632449 491904564 719713725 742063379 260327063 137321032 913663091 201004783 705923480 425508858 686197372 170104229 10848796 962237859 305026622 650683515 387062128 350106720 878849176 937954620 592907715 309629664 498193321 982090383 527463057 676676684 13760857 506442112 679126265 331042578 967219823 663309835 237686513 289721202 128998742 331765119 583578831 939892887 326555639 607908719 716531555 252987415 557429480 4962480 75189471 880049633 371795396 365193409 251125465 75094610 405595590 791726410 586547423 55602936 980172672 91061715 872849939 99931531 366436894 151989473 542780876 494082590 690149771 70335765 773364785 670288354 551854945 664785630 131765043 374788201 419479593 702839542 585653181 938066375 618441669 736931077 233225284 727991693 167187835 645823593 236893278 80425220 793634081 818840633 854613145 375553142 978559116 789698054 174678395 707165911 8448419 617371938 892901570 138057484 135959462 815561464 60182359 670667589 18569416 508504425 819472103 824031239 47452602 891282070 992176405 847500580 416602630 72181236 377974434 117719670 10524587 849208437 909461085 677592856 804904115 123612085 63822141 914018259 316697602 120359788 119194947 787266869 864592007 383320700 816747800 907655794 946141920 203374665 534843710 689849580 715888441 922055665 872664392 930241181 323229521 263677932 525502972 233632507 765365485 249856307 291480655 686127348 875565564 9769122 23762698 935350434 643069253 945858560 69399688 554564011 197868221 259826154 504457109 661525074 848673919 449740632 218151626 907304629 280312911 661510456 601221056 472974823 41873120 220324933 10905429 378463265 41747354 568581878 419624822 361847604 715913334 249957332 435316218 996658972 399031727 638738594 392092110 894937864 976572853 260836185 174560787 892563575 817914860 211780099 39032803 857094144 273509293 760611105 45471187 17533783 843259910 197961905 756360712 271460259 582711205 536498605 324610816 175446755 116516387 568166820 624300349 909906777 561176240 729323270 58211033 980440778 622356046 355263524 849671000 185826491 592406088 475414093 870174542 59069422 562885660 300169946 109259683 211264082 587356887 356529914 565004832 575521213 949496983 429418050 320176523 21053372 531062618 496199641 926547956 837338333 925329890 850158090 291190689 851241281 453296334 907495843 359355028 22117202 345979419 850882657 12178802 254460100 782653563 604431734 426027631 82698049 427828309 45766579 499660892 146506116 641315140 901199607 855955312 193798595 397949578 287017886 926752435 685579544 183831672 775382219 917133705 949963170 342147722 703847290 346474288 6197798 730117089 382946907 886339806 985810678 516018031 576513747 959413973 146355901 823498479 118786123 340176125 487508726 200917875 715410086 35768610 811560591 273844333 100982111 236659655 602018862 771360398 745166329 520595057 725760288 250520783 810830420 925039122 812707663 381524910 158019642 695980092 897828329 380284259 719321275 366679264 94035256 910341030 38262076 274278722 969696512 629230540 988043923 736827170 355717780 20623893 543437913 493295045 213878684 803252589 646105228 565720002 903232177 804457754 121877518 547862638 825521027 617110240 427478631 754697745 561230090 332080748 156589867 761439222 257011334 47262859 758871043 258115428 349757629 816002022 945731237 16752842 502216521 355235309 473546872 852053687 381766694 439633757 779041636 254920185 881219117 723564576 943831655 188290701 378838998 558474093 641685816 442321440 93347035 577031415 857841718 613747515 640360245 331953185 844921320 113879128 735186933 383994719 38618476 427774900 599383069 244683443 382944294 154748325 337005088 434562538 69438364 741059133 994701118 894426680 787942254 947769158 431660275 708206856 589483749 169138105 86408863 890899859 81311661 728078427 120372969 23307492 618178797 870530859 687727780 547940277 381971949 728420586 68838400 264289622 380562102 960627517 222730312 301648145 173338199 924874938 894803189 637556443 922517924 643687760 310653455 520805307 186888506 731180362 230993770 130662157 113576762 602417587 18813893 141652934 484936741 330774789 513520562 743817948 417028432 761479395 222893889 516555166 157187670 834807055 395674562 667301131 122864107 548330240 928103645 290740375 78641536 277259045 896905059 536684985 473645754 55630858 997972215 185447682 669463574 865208636 755362396 621726418 871795075 660209425 716011770 773364029 381608895 274907945 115261794 74763121 741059848 765602012 715503551 180112834 515055193 766790996 783052785 82299522 245009199 629467573 4697358 801882685 799475862 84396591 354633356 45209765 154368983 108352798 67579381 656070876 817659517 537521129 464885736 510976236 502264457 465176986 871510704 697835968 928326651 201947653 890937027 273760782 464437680 547172135 753456822 674213381 575894177 438509122 613587144 296696593 32331088 658642593 744868465 23902658 178888185 55702073 954647476 790190834 110841198 330914205 531177176 868285520 775319811 123420555 226414438 421291959 91848484 281254160 330944166 3922204 574775597 533608401 932286120 40017037 323778222 924805128 337054179 760833160 218111308 862990115 11985909 77590353 39497714 71502931 690983264 942021636 346007014 1794913 195648386 743432629 734995307 592327579 555546922 754668209 474885518 680507733 62720043 567722015 840794957 13504161 205503865 436350278 547955713 713193761 464971006 495553018 596488368 472602749 641757131 818499298 747531444 927700318 898877955 922072213 86819483 517017343 251974999 665097215 693581739 670764773 455897574 598691943 277568098 89373574 231199191 179834282 149615764 646726833 708994498 314739953 413104642 697977415 4259709 35555618 69134705 120025420 206287251 120095935 548668436 862933092 192129114 555932352 367549186 14185381 772733844 988066614 638906221 218602903 945535695 641307510 321260700 146203161 305136306 80151567 849454830 463719471 395342496 257859309 638165993 561021011 103887158 913130770 942720494 743869108 775097789 589451590 898591647 568940360 755247040 368364278 361842902 947066233 449833261 860069287 23674464 377966323 440768374 660565896 344334485 663042507 977407765 293873562 722818011 623352445 553457468 601082932 712261500 278536108 174088759 209068196 394918562 217115429 425043913 135531610 853626536 165224242 80444834 720143174 723553411 210755686 199585683 453046282 184310419 249415177 425143703 555378474 58208007 615365418 879145323 611080676 732545479 588361111 594470826 873253692 929809609 548984625 821377653 617992102 938116631 98801894 557030223 380551 836058379 780725683 700348626 492357710 27259142 597102102 926205476 920073701 803620660 644974061 846484248 662011524 938573275 232695408 195969145 81351156 257478173 712072081 254644124 603860189 951577059 224960190 332251551 553286592 152676141 89070433 690294502 883871733 820879563 994973158 515415306 100062703 423504246 266264684 617469157 356143751 102097109 711805196 825079838 86973155 607999218 446545999 318376711 597930316 40905655 124399171 178272952 201461182 861600026 168877544 263904232 75851471 953310723 321211607 888519286 76011510 159701581 282622313 276761950 272528789 5230799 974140430 811576493 574713994 397776242 160567532 720378661 984088015 742206860 91989021 647217131 564208065 884955677 255753210 744093283 882728630 286615186 176848704 986187941 781790392 131769394 538589810 12037095 62672564 139379162 905100877 440221678 695898758 355686530 20111277 977536885 561654781 386680962 511203783 490357145 526229419 668996869 212761213 453752592 793854750 909327521 568607354 941234495 366346730 293942454 959648349 320166366 189381747 565408039 507634724 517912563 642591477 28691773 441324937 494925220 290222620 956055269 903958771 332556400 460728403 598477245 972219952 744683943 220339015 761621519 376130340 559928644 644523685 194674827 30936048 461075503 234205738 643067049 499884269 462849883 791699743 945686709 301995579 341203402 909554725 898563061 944949513 622443918 752085101 890771352 170396191 408859949 368117396 794081176 565464940 137753947 625550926 669960406 499285235 88323413 883207335 353631209 73305151 538199020 534050464 874909314 834749359 813561953 623683828 305030731 113462583 587725363 896728582 384264503 747372526 166151938 402531246 2384297 75399557 190128668 598983139 264000921 385133042 521945555 351029509 601752798 229292109 86448108 233187938 331674460 846610480 545117833 299609017 574421749 516424529 276233220 326642753 64370622 964503782 164757023 237024963 944297158 790030613 779983693 923610652 933356351 63154270 599073161 67813198 772255001 186241238 266275929 307098984 575947758 702806110 405453360 756909493 609534442 941943067 89192724 795655128 758989928 293893629 561718600 23987557 324151150 938028658 237651018 146403922 872915120 509766743 132272975 927609677 431554911 55521507 222186833 673513952 526860377 966931664 767813836 50238869 915064343 455796587 473489941 773471384 486152336 723679501 358345946 935395848 160278555 34109910 688792549 828539051 242088722 995907376 483761379 623220393 388427946 757776711 442251726 403855538 363951440 426127312 332185328 914253087 524053360 993350749 435765114 100970240 27191280 123667051 647834540 78183116 889902356 439499631 268337661 405040871 145394056 13902481 479722495 573933599 59686225 100355684 67855805 799430793 48856983 684595831 549756113 855790349 70406264 791601485 855403914 814400110 315927727 578987405 239809123 726128682 866897265 601008553 988827822 298551633 820590936 917096784 102103664 656573065 452441935 790582006 114386498 864903731 781392527 191129700 187480736 692933388 642281068 32662972 982929515 100324750 171536750 947776691 106075520 316244192 550975586 410748655 294855650 715742576 130836843 53700419 164881859 718316275 601356646 197642638 209319991 751055709 633537478 198043571 252561470 48142981 715838218 257318637 840908988 320639345 805709123 967077588 760944016 525592568 771469040 552332495 946814907 885608903 406302427 50990755 47724986 831499292 884797308 270988642 332226738 988998880 198699239 38140386 918054808 550323810 172779608 522497798 611829902 348138683 713335756 185332906 630909066 913329852 132681006 786273781 778654479 812630293 911099189 371064794 11887409 687817149 255461438 428507182 273597723 39357281 178647690 990211001 609301447 529331788 743054918 246114344 950072426 85804898 308861199 768899125 288868986 706741634 35804798 967284234 950933922 315125063 409223850 665216626 250450440 969055961 307050774 21888152 58437504 995421691 772551333 747347815 684110088 514232232 423756676 890317910 528425918 364172509 848051899 456746797 345342602 261736669 731962852 161807742 135347307 659564039 839263269 745185556 859476150 948259297 996323838 587475580 814812142 230747136 302156689 947722730 604968850 237206169 373023895 529477829 429571674 879292242 781149724 553728653 760068365 117660574 556575897 227516413 410414749 428273828 593934886 936076914 685983232 144049245 361509761 544613731 287625682 334403335 204552976 270063762 565581334 7082688 184607650 559767177 240571222 870361499 920109383 218443120 795550665 937809896 32270162 479345281 612988276 175512359 929185708 193437063 353931634 448812838 309432164 682112218 733145912 887633301 807916496 373131716 995136497 263934874 810847252 172185981 332622679 764681999 31389055 816264894 63283972 853878515 779377740 429128240 90724812 269812473 199191005 438998433 958174290 152690127 10841682 685254371 368889 950322089 612994297 293229396 115118010 567315289 391409441 970721889 565725457 389400393 868424825 708696577 648013798 49527333 818749489 143829903 896015210 827977131 334860537 668559144 575650079 840071311 400335576 953051878 747703224 194946103 581508362 491903198 533588711 884550360 461163458 661792336 855351406 25171049 997556977 415066410 84084218 342141480 782357608 738183964 576772832 151287836 593523648 632738788 895021133 909895925 822252890 772291313 241748662 869116164 491099726 842687784 678956433 969442653 109005634 993523664 213110504 127641491 462767145 44216207 528545864 734136234 349396504 91557320 99804183 575714536 86348913 896641699 819541057 810233070 111549423 476461006 696439190 302566636 545338935 844039208 26420501 501598351 326155343 363986833 514832053 764100263 597773610 45976087 384113743 625708025 247693082 463308743 586002064 928706581 483065903 457103110 887716277 554363373 147740997 495277026 206100572 347529566 828240508 410695337 973240197 439361096 50089974 908828762 54985744 386071426 44864278 784872061 592213026 133845252 341729504 843330263 799397572 859831823 50595616 761718761 24496332 249526712 574523631 221671975 807509730 565756664 528068905 958418272 823444045 481659455 309844091 137018230 324935883 236915446 394267190 957906477 559792766 652200181 145762981 61142378 428118447 302191098 347776669 592156675 874828687 187417249 382519478 980294449 642950408 310183074 931322023 320687835 383489243 407169887 815724 468448081 829736298 877695670 646549149 31306982 487284500 203300303 980847021 910537501 172947170 524805351 3979462 495632763 388853024 734557782 547222004 577051369 382940508 216284846 41350760 795322820 883016337 787291779 686370488 641035114 570166066 19926736 220322227 400238244 766390234 430716039 804404044 634655470 946112021 265328628 23153071 361245800 9898208 343835557 298030065 28258654 8166032 725029184 91317721 270990995 952376529 207535809 824872552 479882759 737251275 14775291 363329354 92248007 631603246 174984621 714018597 757751483 939373524 879670700 589985839 879132090 681077003 145627843 205789647 961090290 80042014 871014690 482126569 892862998 757416911 736627914 64045188 976597667 637391255 960828278 559223245 76797173 460251014 624864906 898206119 525122097 848101875 216767685 382154022 770351070 664751802 902137129 172604091 436255410 788134305 442777961 760347654 175422161 52963895 441973393 996183624 98627697 824950190 273934321 644152025 993210963 375992251 224998950 904506296 356852725 60311436 375547848 328525017 571134536 944689769 678055352 450820028 82501038 287777717 171990205 647617355 874850926 4388876 18785432 458827810 626209979 504750155 795908239 518036262 801654182 909872272 554671605 86152226 419353610 465464367 655326544 498596942 269504328 559812638 510190332 296305475 361489520 135334828 693675583 154528722 555664110 300065663 597178544 908558313 8535581 777722129 304646487 251340727 205378964 659498334 261841357 277505429 888058987 965057836 705668060 929295901 177558600 685031927 155673842 299113927 958408780 907016811 457393248 952672442 3634412 289033765 786604665 549988826 168151422 966010712 953554811 678245024 249520405 234940361 399072606 130851740 777457016 366408723 642686108 565019667 521052275 915190036 994969845 729188600 592632239 281768882 683437313 354280328 406167805 657339430 196638908 597963834 645933724 438876519 350471733 495957933 647886651 160225051 543191191 178712337 705805752 267237212 271565924 731327634 111432611 833310319 661374818 172626642 538725639 147032984 467519374 139679572 855778565 183535148 203236505 53606590 94388881 28857519 693997345 286372142 847425598 742708614 503004543 399079549 770324769 921902589 301581039 39420584 747804106 780895666 300272150 899716407 463925685 691566373 118650197 171069543 274842349 985675603 586203327 183019101 597910812 71443156 373106078 415964500 468956315 983703661 658978140 509913262 326672329 746739978 869505248 256484844 77925146 160773602 367819052 204356280 246993444 777569599 39704602 718311795 308390994 795636032 277634820 238132704 41952890 108270418 784869189 507361804 521937459 913019846 907934818 138875623 607498330 621256313 164513655 480789758 995326315 871083354 280391769 829364565 136175651 834880650 675214460 128571506 91719092 714136792 150919124 468332810 740079722 202774390 327027851 551797250 699232252 750825577 578237756 7046724 533998242 228817269 595812247 194330682 926143915 824323744 422385029 666086828 190825182 101280436 870882002 722197299 621664910 200733681 122190733 114664211 957383324 596099141 512554079 284478343 43373864 736526548 47524306 340670001 904157995 173277236 907943378 784529554 826863687 378927060 431821633 359087689 978073691 185558839 290014366 727478165 904894851 582696555 69800864 72258561 746095175 29627397 855982356 189907097 443558121 936751890 172215710 822007867 934132738 631517895 133241247 251686717 434815593 671215639 281552560 234106324 362895615 211177157 582223838 403675168 298044379 951543407 15125582 925399874 965431332 111082611 133778187 128249320 285700514 630803469 459386174 89310345 530734366 311382178 513392738 402085131 384393647 231654573 116097715 181389206 806508245 921683701 888180026 763730942 356494546 401739344 953401561 548289248 821696546 185661833 812935900 858420903 38555129 107522685 561752800 576468378 643366978 215010062 662533343 152519359 114756845 979469394 776627844 395398729 700709251 434882483 234002123 101995973 754826236 470594777 442800618 248069883 69217136 341268173 906271213 281728224 111349875 300947199 900579335 34587936 944774393 30127668 541911896 494034284 84123066 620735087 716888061 303389203 204806366 53965169 85971009 285908756 727670160 621003824 9102725 605907521 431696663 912850255 769404136 742750066 641499828 647600723 646854549 727844694 88708114 546807482 273885446 4441208 41705485 745341842 57588060 990557943 293033205 159917697 170463147 225246117 572019475 937865355 587047028 563974866 10410011 14235097 84836656 105086055 424320490 260554963 143664697 357349145 796728326 114729799 752521334 165221073 715807876 456368418 698291486 885908414 777824745 823184584 956423353 942476455 609424125 357964116 99871077 656885458 325576278 742561767 623694976 449350465 126122129 490000408 164219538 504664128 599571379 217797216 907584686 350915077 116008235 756488008 249648469 418559309 648278436 292647576 696605837 561832762 530339445 261089707 986274256 893081360 436603751 132591003 562165340 462848170 291777453 928142615 609863321 135080249 917732310 382976743 124297440 871951376 876921286 235076507 182237123 376053379 775255698 599117526 982195693 64216208 783182294 202139953 196565458 571907110 71878596 220820114 101595047 159582673 428773456 255767483 623578730 236566100 611000786 283481359 794101601 133403843 772495101 50931572 587644674 222441898 833197506 651859515 726590498 595277298 122450616 47750538 259010044 349395682 601033933 585636160 271435526 359291582 53612514 721281483 838441513 286467709 641004781 87316982 605024860 769108850 616783272 767277082 104593178 532123403 348408881 164059046 356836611 400230045 579030330 839486243 381687837 154538305 785420815 692151962 21340545 556684480 219682453 289352178 11950802 231302602 122431688 579976492 773777572 121664371 245849258 955282459 525041789 382548808 695929404 23025317 230988508 660643713 970345436 944499769 770570946 929722644 199438910 473208760 108797106 206536551 48067575 633023413 983279632 435517199 449325355 521892443 517441412 856053697 618258098 64461520 849358907 423297957 976268275 235019953 629818446 367335401 467453084 323621040 829115968 921546946 373066772 906271249 891450465 403844930 503197053 563725584 209928554 723026495 657510366 539713617 448176189 232943308 672927129 737604930 583566338 101545026 443958401 23241182 909160483 421189907 544960481 924154895 919939408 788883813 826375959 341525825 536058739 354791014 737189548 456067359 20808659 981368958 320943992 158343557 644542930 43371315 746432001 100347255 940182006 884555238 902930576 467456246 815541999 888260762 621289641 705385695 799000803 703031052 256619691 314305949 10939811 233181893 392076492 348575596 374820983 50213065 125754784 854362697 739972156 202864088 373571441 186181924 620593359 813298981 946681630 143155996 693538278 16997364 201994111 391208336 296593972 490195976 509496187 360046586 467025145 578636571 709801427 955192749 634250039 185505826 608523411 765672447 462212665 871597483 37928149 274965264 910760623 775359883 491272355 282469711 943038493 324762610 6158630 531484927 80153848 423586549 113317502 105374074 363690870 169515508 455262669 895503929 583840238 167225398 100979263 494431147 96228658 923877449 82636 268456890 693226555 517213268 5223960 943969043 708328557 598143222 304209130 746139583 520962367 885887250 231419248 424775464 710081350 649829477 84304726 852859607 349282349 546692855 86665318 984797528 110998728 86022385 619207948 734554751 610476447 48637264 177933203 263614547 686602246 473024173 768677824 497836481 395917452 556024935 360430778 467175096 995682357 43559565 59832307 273066272 434834797 146007289 398536507 216348597 718075247 767258513 243088942 231274360 668107483 558209023 693962310 645251236 61023357 151945027 727979798 225304649 121156063 552946925 252766866 378225351 676259733 409925672 812751556 385169766 640978546 165381177 329750470 689581292 578632419 254917663 314776367 477782896 693595337 29407385 933559062 966658156 73207287 429308942 236092381 239942774 4026935 83709307 440356229 609780881 178421886 388217000 872583274 30086470 50094021 218765953 566558682 625165294 972026953 876492564 562642108 832528262 994606883 970762022 36087137 276546448 940171208 649976840 710273529 442913810 822565446 310447586 534622478 284007840 269371723 772853485 255205967 652827487 383514738 285823472 32397628 230330710 170611541 599349304 534350915 72679999 866143141 309392224 588072266 441974483 847248476 176381369 614001749 273289203 883404717 955119516 850264394 907653381 805461640 944276952 774329790 115054080 263720221 54970915 4046045 687047315 220053550 974505420 522315508 392014656 209301074 122237727 5726200 335346066 979774079 793434782 577563671 264499792 9878517 831908453 154148557 187131553 402263802 512968203 23971177 159420975 391382146 104453639 498986102 634782086 431481907 290019758 384407646 197193919 306588001 358730455 20036944 681570635 501549556 919949723 779641145 641628508 260397808 425392941 704752406 403654305 667421562 473273720 168654603 97729243 958122427 579342685 102918258 802463572 720818497 317017168 912745580 452760005 213287191 703622623 757865274 147695184 528737359 217125482 704705388 811158593 704872284 283669422 530248836 251823108 118292785 927592744 784971405 514202709 488317898 534188107 85558245 405900694 294095709 890473292 943592678 744759374 909872071 154421563 999022240 847692048 998307043 187796890 511357286 886303093 331855569 922254133 586889801 380954469 799297103 274004059 335676987 140737921 570536864 74936280 348271595 941954461 699949655 519478847 815515272 413438275 685319171 317793582 68829839 554399713 6624919 92412709 604614168 89344889 518591152 343512585 978824695 946610791 809078955 700240099 11182027 418669834 155213099 382249215 929663407 710080575 1560591 973718007 679572350 563856322 27242219 774692525 680483560 573318799 607384068 725537033 10772067 474581849 612857074 305464680 305943737 780629462 544572668 927499306 470166870 157824733 868901760 587708821 600520899 964686621 156397966 87455749 616827908 310871064 641005352 430530653 973307161 457335598 755756521 28891412 325259764 185710504 362131897 57018960 317130582 501142199 208489758 799064175 946260875 784580488 116256747 747169371 503942920 383497460 165820901 96336836 974738911 564546702 402257719 393134055 103618936 574538507 637711059 402972213 211569342 986633536 314950358 701892187 131772742 147999077 792781734 376156463 999045996 952292398 873553843 550959347 615819202 220927705 232546194 738106855 832884142 352278213 520628071 655808744 357979656 239824338 356161259 406276505 854861475 423030775 750581789 871453286 263702189 355706195 302129028 963715500 520227835 145982823 416887186 755688351 983271666 789705934 197722110 38263061 313440234 643947530 82511513 638612206 194485571 237879583 355433994 465540256 537988560 706504663 607617524 397662986 258400345 120376308 847154512 163676491 210915624 892527661 533328259 859865303 163561980 134136250 367912463 32761252 180468188 408432801 896506564 94873039 912948906 110978501 957861920 175578770 35763559 353742599 68282708 930538646 666045274 19534037 55880700 148210323 558735575 46112629 190712640 665637652 564731167 486080274 117896038 686154215 771870260 807727445 163163568 604216309 684018589 611768956 282643571 714327349 942945323 749943987 39342223 599998099 243242322 310294612 736474565 142031800 413334850 512703821 537719141 17730232 73209414 132194175 804123405 13071167 112588039 118618226 783062382 309243533 362666620 366034314 196643212 616562211 343880696 884678502 99218256 252695033 449816739 240525546 418341649 963173160 377755831 528221864 452712302 193619864 494447456 732190044 291769610 172669464 395956325 229812716 229839456 246187259 167396674 870636854 38810536 629061183 787756854 693613875 938382183 404745522 24136390 683541069 65678287 29829707 24219779 124954624 966381977 985374655 260781885 907780085 955968898 959083335 471137610 20809152 216902412 499839275 224764389 819469434 75469090 508575357 278437244 944445080 537797351 957687276 119869583 413194756 552826025 760506503 956159907 947924897 826046710 882451231 57021508 964038276 181932687 636495107 152669497 66794702 886839113 135108535 65672284 699000137 437942767 314783345 673464208 414021238 74249862 633144181 262905958 521846431 426213022 923205762 919327879 535690760 950740632 259708625 786230794 580977146 452447138 538102133 585993932 325814255 198743953 601063008 710441989 411837220 992293287 451525570 340928197 291306940 949312902 238788492 945552238 537546306 836714090 620503212 57470878 690987563 133446856 987011775 829599299 234641998 319596724 123627002 770234965 205468641 942790046 588671265 644004026 715728602 390804478 349129879 261920407 938554930 216862921 210269121 8996890 254111783 564670094 688918010 626241871 646103540 969313577 908945586 175688867 836869513 577461157 352271019 606234413 450055527 265547294 363842131 217073931 556922083 410115319 862131705 642541299 633518771 926549265 567453425 545479426 747981259 522385081 372832544 800024290 820735871 273093039 907306395 238750676 140560759 361906936 845690404 552069794 114994819 544113917 617997669 227572473 250302334 95468502 444433223 458992316 92453902 610205277 224432893 293123724 751607895 154452003 973986243 50787176 201608558 515334670 131062020 378974330 743583371 78035220 664013644 74618125 260408598 862484188 723129427 815116723 565228986 900354142 969733733 262051079 5261018 687658467 270228166 622987567 411301004 273089552 834006677 687471714 769759065 736830922 274102155 281728911 489649376 110672218 368390979 794414504 250110417 840626822 287246712 696791264 220243335 608872904 503887703 545156086 124818934 647031576 643366299 893279453 533631958 546149731 360791307 132887277 337403642 241074263 589932397 489153344 185578200 204499574 184659948 117678916 926190420 293883568 84962527 746609238 839953747 721775442 144962952 494981606 528201054 418199019 107973504 247416394 740182184 672637222 626734672 286180902 826612116 938944034 530094724 881445827 266031628 151421593 967824604 864105780 143763816 839361804 762370546 440751296 595417363 720703034 648200561 110883061 283342686 510667237 5419463 450129647 967435057 79485008 842848949 583769601 150365506 534542977 421967772 346227855 770488257 671738592 460306832 173146682 621607947 455845811 229285133 235339793 688895006 823063681 592334044 336935513 936557296 31141647 669549825 222207231 537304301 1922371 141676423 579239036 723120963 629940207 680859822 373667888 422564748 274460818 626182382 686181461 576866294 361840741 160368297 789351456 921137681 397004978 610184463 432874656 289376265 619972549 275893197 819541190 912628442 784028118 994960700 971081056 254884597 356240348 421185629 133529542 683419422 540175776 38985718 319439666 79091217 659005414 473897957 466076803 623189156 363683571 146404608 531516303 187687026 916129414 284121278 284485321 874323231 40494987 883950695 456576617 486445492 433577518 14815532 845034897 317625545 244138485 440349870 118099519 842453459 797218809 46221462 382730242 129843561 387724477 969390305 350810927 549233640 18552076 916993244 110931827 401329744 609320925 662527376 97834553 4848733 650861106 346769577 862865719 977106832 375302608 401844640 133175459 578790688 805181011 956484694 244062360 847477569 53556183 674238881 326350209 199695272 820143757 706000719 589495319 17047122 714691413 840907356 410637760 547409435 939114077 915560959 271094488 218441465 538387768 622902619 14312654 197830856 705831800 310951760 770060800 194022087 584297983 321765805 616656262 350125703 766067796 164384011 266579523 16737660 855048391 408655935 254880312 231217695 567963265 998543280 271351006 344000876 715514138 255810767 656200781 309495957 851758759 440123698 633939193 822656393 352595476 716510711 130589416 505362395 455068949 820878785 556367299 547814191 213939049 659614664 26478 847903850 635766038 605987854 178032214 250255181 742109158 377743154 546504669 369208558 560187008 872546843 550476968 561160096 770913859 884875061 934108994 749508245 360515693 80274529 718650690 403925772 194934772 103877998 693127635 778108942 588952214 636272617 865567189 90237984 113455706 788303970 709867643 644730173 399315230 872961383 215072655 540539273 899124862 103055360 281270786 912408557 973854912 728520696 961893281 831455242 119497358 214206966 274962332 535915872 195495058 404143495 753988556 278768650 647118112 514940557 425759783 258312283 805607348 467272512 732698539 209052633 983250775 32106232 627175438 523140071 130897937 766500214 776366843 727428439 508790248 70039133 982832267 144860434 412643182 166882074 607605076 977908122 433543013 348201860 34073636 436113567 484486855 56622992 905789102 852483718 466344266 714812711 646836474 895581184 551935708 970351631 410078223 308507130 802884813 507207833 550434018 13331744 514162434 265921954 908580908 938770489 659736171 530146059 380845310 582605632 772661224 757759757 1603995 620638373 496160622 664550880 726770832 871777675 342589375 534006010 740009708 695316248 783118681 62523049 155487217 949454850 129276710 684808826 268519974 872626099 365061306 236565310 469271829 737305172 344138105 478850512 533551379 741029792 175210401 967172767 159189314 341276829 352648895 101801669 219358088 184144360 910371075 717879714 689627712 342072007 949523474 940217128 749401168 670123326 704724405 423662827 303096526 623886253 462845500 770532440 692331287 135906068 192412138 450880154 843012029 467103369 558757429 402433469 455231934 921058443 705229265 724611318 474202929 516539833 715570272 56619406 346712054 808316562 642520942 669665779 247999456 269316878 683523272 702237602 378981621 603581677 728822922 79522663 819899943 581309311 958100466 654179520 312313235 985379227 666072093 358584115 311898718 726652616 377281474 384274152 204754825 525808543 306415081 393705590 873436180 173752257 245239196 885188965 845609195 885988314 874416849 573985841 340438952 458557831 148295165 543019994 612825199 321576867 743929454 68453477 775113599 498838546 749220520 130881109 717136625 986393296 979278793 178900126 874513444 509364071 999588540 658559067 659682717 354242391 257376054 403535618 661522347 189277663 496713710 164054303 851079061 296421495 657183459 613599839 492398939 506115835 596317924 256126410 118837232 960700972 530606918 615060415 611355981 334396061 781917289 15076194 197089580 348966564 482179249 981253390 889313980 673051412 371348706 516677412 497651805 476084374 316522995 437030553 446130724 55620346 550230345 862753887 762952507 283948487 95179601 792012342 569710661 885453489 343496612 702368373 946437877 575380824 871933045 255783304 307920325 582386022 6027418 680238992 584516018 677247583 492826687 418710270 951977229 463247506 657770958 395565476 230343806 78363174 910248583 919919081 383634056 916572840 932886025 666744390 431954364 612722622 889412861 247388451 812402319 424699403 404463410 602640585 192297704 928415304 451698713 820759136 179442241 167022252 30063818 271690899 57679545 424219279 384285834 654982509 943965097 649969225 939351952 12414840 122627892 482273789 303150966 261076368 370429274 441324893 746579266 20012779 968102124 376837524 673368298 55058658 509442474 881766650 303332749 727942600 882093648 356256406 683420395 964813194 527972762 407690160 654899183 135884389 345594999 562874985 464152367 61051654 125647861 120911468 354292974 415750739 595157076 288890182 210694214 97314033 947513715 790636786 954085140 770472313 457068465 592647974 625848810 210104562 613607031 6253831 262122250 770947820 327313103 776230164 36799436 743910850 953296892 865698830 841028485 28108649 512793649 519962166 877585884 782463124 885699602 137513254 862771321 672808798 502768717 792580100 922856415 506673666 454991392 329274667 806618501 816473393 205698778 676655915 179603226 982532273 531348938 529735254 753355034 153013164 283781636 450232212 397455939 182963167 198388438 93862464 994312293 989556518 381289953 566606943 860080295 394904835 511749277 481271865 573881149 925719706 869314247 163532184 174942947 77550794 47092608 163922928 986402668 526206478 380541604 969308700 491563547 263799613 350421836 527284033 651666196 57421711 492990980 881505316 388281730 110431514 381444905 224648080 158780779 181327587 153673121 958980394 825020703 563325726 778102525 73750424 998705522 820733128 455920654 980923651 570856604 845216642 694767635 145932090 809142713 411717933 258020895 839182569 285218274 682907203 297968011 204619426 832529047 75170302 489774475 154305321 249683049 279253290 509560564 51538700 34463167 913407731 554070780 651395372 947783967 112234542 615258812 390354337 519860380 960503597 417536547 74356175 122129116 818034596 624735938 994511033 845633752 424328745 678442555 833981521 104166017 781942569 438323764 757740064 531235749 283884540 568116266 927581274 272280070 657184308 157641230 433108732 986571000 737276617 110600895 395927010 553369183 680615197 808076622 43524399 123606196 642245914 959238345 619453167 887874900 203842950 340275396 534325866 308306559 6132662 964384940 747454749 652147371 546891370 545827511 597641700 462132367 709534073 552012274 87804194 892930060 239244607 410789864 33295937 67982314 289911748 890021594 178737781 506664887 501461422 767327694 887130170 473742312 789060651 19829756 343237129 402927607 571778306 917668402 330343077 898828953 482317503 254500962 963777294 991165125 449887853 240195570 878168681 749338559 916998507 147619567 240305740 215471607 301697951 672283665 706829696 253514853 382192830 122177462 780570259 466334300 863310345 535438963 950966929 71527960 494707766 923944826 214316254 331758079 826227 326161518 552177456 715611790 697943146 468935687 889312129 172280277 661785124 726036609 766855633 621953007 960131780 74730644 979998147 240493020 923281927 462904977 921713605 301639763 921189469 689585768 508011288 966602613 230868359 291487664 129525738 491250235 370103838 152788952 652464943 873788806 236989914 983015995 949574878 949046196 511848342 458152951 881367507 87506535 845562239 241390245 138683896 570314626 82771459 330426519 91948743 832504852 539261038 837500073 822181445 813991947 961751075 406560200 2828110 76552922 185584311 435678509 218075907 314603598 50378057 581973365 509574527 545922625 592545918 741234084 81604875 152951039 972104870 733050390 251698089 898366651 848385666 704965464 81774190 751347017 581209988 431445979 974464067 406349223 342903953 483480508 761623177 427962369 107834171 315415297 729072089 610975840 837039512 15151976 435981662 245601833 947231720 394859269 611015554 878621324 615315313 734922123 475764165 437920283 49909816 817380483 149589950 366826533 835656020 929828233 291972612 393211457 192492742 535235542 47038544 733150301 539462999 792059350 402355372 134812803 85052689 213981984 731607985 471424462 629324105 960825652 595626692 428421129 129696752 440145178 708631928 308877720 213460929 150784789 419598805 212500611 451098251 668482501 928851611 740040935 190895271 823760030 509117521 140986625 426167838 45808623 302049345 999974569 434940151 334686390 179573012 288195825 31110303 229035330 454999439 18737624 771074194 624097490 114983056 557205721 29919701 887509813 460125186 207624452 762328940 183931580 345800811 224626183 469336785 624292867 118492160 76632831 589677167 699396487 570534314 931503314 842140802 297676661 478305669 251388235 109018020 21425932 92188426 654355686 654082156 624361598 603623757 893134481 613587257 787694067 107800486 640790853 296415257 759510703 566120963 851892875 307981336 362039610 862912640 758985613 563236839 828731842 375443737 905897588 525811908 778890846 926037558 670354334 871225033 861634675 321979449 592172213 149193819 319690751 729212683 181565984 789857905 567567793 849662418 456163526 960654838 100788323 801585978 140464998 831631994 551315786 639561456 825021217 530982807 506266395 7581721 410994428 623816773 395397512 597842764 959493020 593553898 854453288 285563492 931966371 120501471 3150874 944678547 887032354 139186451 39368922 843910889 68526079 154561189 238222312 928518422 803727390 704830791 739898717 789466729 633107320 525453040 817583827 125636676 80637947 650311196 787950365 320937294 215187855 703979323 174043697 6363168 581348625 519851268 197973499 719452021 599795426 345781652 107905077 162661118 705161598 273317617 325564695 744125071 759340276 930400835 580700297 332842597 531407305 141918703 78857945 171397972 59844854 463293342 999118598 18812745 587933535 193762590 30163285 814763713 635876906 861944119 941327357 391694445 487763797 686539102 512775718 909977994 847401767 130218320 840556293 398719454 950976015 734475510 153412755 124582309 722053255 121085931 57240681 223427055 719079741 316927580 649334127 73488205 310454739 668486399 890448019 737542377 137039406 947985709 612949761 776635233 815294024 609270442 992975224 739685524 854393188 978516639 109800429 384926847 939867423 73903698 851735813 804710721 467585730 501877713 620441125 756839632 365345602 460600923 207409759 506243488 69943407 808740992 354610175 678312051 803803151 324797296 742798521 969903918 845927920 249395798 369017393 878692448 845252264 234232517 541453797 141906581 94540455 24485826 633817898 930799536 915249107 771198971 558429348 578160950 630264927 355783937 575130665 653373910 304966738 879064071 806568914 581662991 28881127 997337522 918454054 970228586 3724908 891608828 432052162 239380339 956905255 772986971 83565602 673845578 397851350 212576233 805794517 504211067 476413481 367600819 234955134 600395066 464730955 226777220 901776964 449188844 300775033 49200407 586354102 278035559 898321605 393307006 29236967 614876150 925689988 535297088 168323929 498683487 740858019 133052734 336179472 271458665 560195017 173646785 122513492 87111328 485485945 42093764 183722239 19275521 767672877 439195809 119694986 826393403 272534653 565490623 796125041 549778306 356091867 949102695 314234285 410967995 105492909 885896024 699833956 870844292 255116851 822847135 603539706 569955660 502530174 352948687 235734273 416354260 597353712 533877360 642016109 54870878 257908247 174792267 401145146 658477966 894184581 817027653 45326978 23527326 564741988 157649247 89065881 568920491 656241442 423920571 92018 805489630 700903946 811187735 773381270 620326502 699884070 73055110 747913951 941936770 160907138 9215373 762573998 338534130 525189621 359741979 664023768 283669034 586570245 897140855 371120388 271638351 165165305 424545228 948778490 328914378 347619475 661573163 439202201 668010265 513813959 15030698 192387921 795763658 203766615 988766137 499103884 511645342 291423715 529173414 450912711 337898580 151532702 879835287 779845703 148677067 503702178 766202042 543499564 22314297 234937274 594021040 370848999 410227125 558684178 397713743 414012163 397610510 195974805 668928465 92114410 138329709 375266810 737099934 955215586 317169967 495154923 672988171 864767614 398881788 552204572 714355772 368897192 713011538 658117987 598530574 365207573 476208955 128975035 671128371 260662327 245159212 922773037 458893778 895986805 980225798 416989911 265636988 171343188 170898606 546914870 627526531 499520702 330408785 747079499 705315786 147363559 2323995 333732858 784442794 542694554 233698174 587492172 210980186 105062511 123195707 882905865 342139792 476444580 725247100 920285888 975983426 294066393 968462665 786314139 263814756 105101626 816492148 409088580 485599891 21026058 12481768 114951252 975460702 436787137 454111958 70890005 716732813 880103444 976358707 207678869 721343700 256268254 930799174 887036153 495645166 612395719 626794711 646631991 959979911 109904419 939761371 753829095 77621989 115084233 838177755 446758265 485224742 742958390 174398732 590463854 347370582 222580033 914793843 771038103 994479755 691061921 51809508 308106906 924078592 219378328 988854753 297745203 826290958 214749818 854344060 379564236 640209015 978982533 569049976 188707497 624860184 109167875 433221065 18495327 961831833 563327684 165762587 591094733 368508768 516002130 423950952 780374924 743093941 150462031 598378234 920411587 824371740 353548346 314741645 63889101 988387585 155693398 583276562 715974134 330957393 875432714 825559233 386382183 381637043 5728210 543439401 752764247 916320229 737753327 155645927 832007402 120545085 484636857 428826590 26176887 602223690 453213522 873207319 681241470 666182969 393079526 206547509 985978125 952395960 899960536 998443136 448981276 867481831 817955285 707490531 114125282 606166592 678532474 951144861 261599204 219593652 922690090 942710736 940860805 853752728 73066957 157348044 372365934 608112859 792435384 342852614 854141971 198133463 844021461 15517633 606342266 8717341 971344611 473736414 255883984 771477456 648249770 310846468 387314366 623733845 521194758 436772812 74304433 669460446 149981156 625781089 506949962 532413478 363351257 442083796 648525224 238245921 856330610 615343220 66480181 341528615 207304833 261160904 383880396 930585727 299536572 504855851 4610837 138618440 529059770 604685366 739702891 83151615 180151453 20636696 422407621 428779353 206399174 924967151 556168798 231582746 263066085 576766740 955379063 522329308 831658150 987402683 110481103 40338329 599999182 103259507 759940064 889240492 756361953 274136195 942062550 336751514 759437992 956178374 649657903 669994479 828243705 521528720 95192441 135249841 656308317 479551411 302192412 767381412 82824478 638692012 260050834 554899000 643261398 143748855 996758027 506657657 565850831 766687070 314729986 133279545 935798609 778970641 182418757 167475891 853472726 761104274 729626251 952407420 378444014 653294619 7068372 246786552 271750441 368824148 290648352 595025891 476899701 113296004 84584741 613126246 948074804 526085210 143137703 683952340 385152976 710153150 849062906 992089007 779959072 636757997 168481852 298676121 505459629 51057363 555015136 579454497 868055385 789181098 752104830 787435180 454463637 36062494 474682211 613187361 794244791 199114471 692431346 568194432 850686257 281718431 666875652 314046410 318763545 757075883 229474978 617046162 548034130 733618614 360061640 731022399 48141438 319879097 202098498 996566828 884726150 328418858 378580235 559800270 366516527 840363795 395563073 284832071 130994889 320665836 247549977 401941991 905781852 49244522 492921993 737962343 506446064 826061026 600991176 478004065 524599862 786368644 15702695 380656121 535260111 371712910 250986680 579172048 541526642 982746559 182355493 6675470 77987793 880567454 54572309 561390294 625620735 224343977 596459203 750538143 532650537 55784080 143041963 388838965 744456100 759216629 318556411 398031479 814687880 758152163 899654508 19536198 171283092 107679754 760550263 145127785 280460732 226285754 880956293 187508865 712174649 534715857 909452 415621360 773618440 637595309 742357494 5629039 509985196 274877309 297376378 473217092 236880403 978172263 240713791 474844380 483470800 21454054 293839621 29200381 554069070 494043669 943470413 801077452 648857818 625201190 410629741 704950897 747550893 886217729 781411328 394819835 156667074 727300524 249842371 967407991 401489941 105902519 943701974 863434947 105202189 431718222 870806172 43640103 764580679 407157056 646847666 401013644 853968819 858113689 497017075 926956357 356484300 382432012 365822639 30206021 548935933 385014724 844709976 576261501 973436917 888457306 23983726 680115651 51224938 392282572 852879238 258007675 880891072 574026062 880581457 725267541 475580846 335403977 855883166 290394403 480528763 630486623 447932377 514393562 8742963 191309868 913644618 4070288 616086603 278935351 111870915 674873401 112935401 697712631 969589826 126263928 775401249 868899771 330903665 213647282 1334857 822665939 972714111 920396838 111380323 728294298 33549416 672878161 891858948 821144678 957687231 879818612 705607136 8514095 825605239 284869370 639204536 292922075 76783921 109257222 431583024 595475118 571840144 339689886 847367022 989564634 383323774 855256832 176820781 178101689 973137929 904354512 80765575 6132175 300684937 403968914 430392298 411776040 122993760 703969093 173772960 60182838 111980125 45240296 898692869 410402693 111266014 522178039 981696787 709450778 57386905 737495139 649452506 482683180 622273449 898289527 216685214 100353033 780478228 531161477 814477953 838326467 737742345 750052947 962197261 208685141 618777079 228543842 514184102 760895439 274705703 963202870 678687520 811384644 239895744 886386134 543339977 807109855 537077372 423025160 298856541 873047176 698628909 924655924 768975496 911414971 229051514 488916916 663533888 760837130 62237008 632318259 770141334 712378936 812035958 133725917 642623626 88353837 319974131 326662131 342409745 715537693 775143341 268446913 441022631 558396366 201781748 62256583 859035629 583156591 654520298 645495129 79761019 570179707 85784303 709432358 105656259 832786154 705329260 561963865 542034285 863534932 949031820 500662102 866981759 538934576 681979273 556723485 12454799 757876713 826755175 472357201 545946415 427357559 126105549 622785925 124068687 281744435 344967225 496398313 789468004 991239826 385016574 14625227 755688861 746497152 375148982 760506796 438099669 304906516 655194823 179409553 717724624 967692575 302196874 968591294 989953567 613025022 210181792 182994542 303696107 50768666 291738154 415623707 694392747 645449292 100069161 510542105 804781652 969242804 738607417 400657461 824677474 362416234 913775 675551050 868135396 53778798 111551800 211277524 378356099 763811609 458050913 94488755 667204495 25803796 188613732 83881938 326777333 604683653 298526116 692941844 387357318 316543057 596830434 86099944 680257984 267709856 683967899 754610086 312389829 97780462 251269651 501864041 961367877 860788203 383030337 900214508 365622187 198156627 808885285 259974025 328181278 662299142 387036646 563234493 133959476 695649151 511297422 690432864 596045080 907649349 782554740 380322641 470926367 69339126 675486729 892989562 11566558 122610087 277132669 374906744 289960806 341793503 403217649 111709128 520402975 458385096 490441207 295942653 545719208 713058566 884605078 990419139 443518933 196146810 434048538 63984523 318926828 167949410 161182825 148525339 177759606 273488176 780479754 812270351 169333920 999827641 221998674 657050337 822344718 714391268 8773025 418201138 265545927 636101150 900638389 781690211 176543499 81267519 705616034 82337414 452988305 796231337 834849961 271314763 208200215 487210925 97283745 920620347 214750984 174099839 329921421 740353545 949569818 146784524 269328678 604174472 59823982 840070363 64108032 758603301 96250911 377635657 235539498 917246659 225398159 879271510 819256581 262544989 927856193 718605410 354560094 852522951 834969578 741592490 625582224 508481409 412390542 208510308 306943407 860400056 685454267 339466901 781420527 827854712 30518307 133357829 987525870 673840003 642475063 94874180 75439086 760138444 451520903 608194502 485302516 348263180 961436746 236443079 272306774 804113125 908767229 227239492 319414767 34559290 190175731 476179638 590935931 580506783 417809119 130814834 659655764 706171532 533230092 352344582 653440700 664553428 497072246 805183848 844681803 675276130 480350636 777136676 280649551 485801226 212233987 632478717 318656222 750839685 73177606 284887466 797290665 364064979 944751105 759000327 688112365 486784722 189125690 490112625 164996932 734040041 370575176 268689716 948529860 317217306 255641392 657890744 419751913 41289279 99365961 574473649 999388911 690877637 279321588 70226059 477550415 132347360 723076373 396844091 803418837 475728969 214064055 768393686 18842883 723239464 172002271 551757147 564138147 673599782 551807434 654997427 531759347 819062401 84318658 579448209 277374225 226034351 329097446 719811065 401869970 872068061 5188411 512107509 379454261 236501068 286821083 667225522 148423481 754040004 628433147 363326644 739626372 996270360 908421727 968823981 514979500 173412395 836284477 203921161 458935486 159224141 778094673 84010962 785618102 958188295 773986849 873893337 512015342 560080249 592801360 801436943 998674981 213491946 59584837 166732085 91928729 506766260 293383346 681704947 538782135 843786268 495631571 134634767 580912881 416198946 784276675 515931511 843905295 490031214 308703615 217102604 50861037 576106428 996801534 913942119 322721007 680802059 205514185 86558069 704350973 379834124 684139479 43337114 510859017 468050281 118750631 249449071 12313877 144829937 583615491 697104286 186128467 167983519 490134261 162291456 623141289 309024873 183387710 629402273 276968607 730426739 133852011 750105232 890301145 685793612 9713636 865654528 204604131 135718157 172379228 919436335 192364776 208672921 353654672 608337042 131462272 384902642 245341720 964111716 996074836 681520610 353359615 410042980 814190146 260514343 750390699 606929008 542771635 368445694 462587121 122506155 368827681 349602586 584257428 197946258 302584879 443791843 956570459 293138313 84045060 640489605 810727859 1779798 964514912 550321748 107358336 164541222 912923842 69787844 374150182 245585178 698523199 424865029 738948287 380081308 843482001 483134357 583539223 852597894 125071235 483028227 156933124 860822488 63656467 108890310 432207171 47436355 262728800 5454015 414078229 993267808 941949224 340948068 499959858 12416915 871095206 405217534 683828888 855589714 227799606 529617655 193800224 767119179 390228693 32968322 367208714 433495910 999461673 975656522 637567291 76748895 461391698 897820255 843480172 959272881 860351864 647928181 541463146 175196498 22029817 804353230 835350775 743202368 510861699 336482671 297604972 65994384 720258303 331318447 659257725 442137646 233471559 253673266 904699847 796047931 380349267 71307113 579003180 661884499 984764836 62113094 446962575 423902335 442076520 22021659 479194257 310272550 438796743 568530749 251391043 615644834 208803049 184919402 445779586 777910770 555664194 805078916 144214421 577143363 305756090 869094669 656633849 457087229 360370680 721384553 41072083 353526961 882398028 820912216 794709314 411221237 944306139 813696602 337862509 326335270 967702309 383221966 942702514 881445509 157300536 559787743 692355222 831056952 459629417 582398228 507711806 544707228 292432116 451069768 173801199 830793256 64940855 113085578 882718789 834964759 929050441 790144757 813734941 820938106 714796669 969858573 396669302 800970255 239099937 312318675 199698483 484368940 184285122 282707304 30665718 562468417 33494274 822573283 607869887 964723 399889063 948113636 294603959 627655668 346659261 298392831 471400121 63021552 143320173 722170375 627092202 431545689 854641724 92194765 222896778 602419362 392183922 982522799 403601649 612007098 841935457 190277356 90271787 887433935 721575118 367589110 741375060 522450512 158804599 600507035 314910370 14993227 26617165 546866325 876208746 423370512 831023669 954269110 190577909 36022347 39045452 906748571 181235635 468707742 89163473 353463614 455918061 956811400 369328061 533823449 127057296 22415879 737946573 972099593 717536826 776162107 638401910 373252639 465409589 388559212 329399701 304841401 383461188 416937040 642913428 976333958 79216153 374804015 635394059 881499786 462454263 934883865 837546751 221423829 481084412 280049077 385642349 343572876 829575219 264086198 791795713 283889243 431111227 564384925 21116533 826209261 113651253 197952930 771412603 552882546 918380723 976650995 349768354 639560412 384375022 6178853 728695389 273852770 97225821 485373422 592188818 846217317 329139617 978919854 579701149 580141027 454372338 751086666 196612718 83782192 128157669 147154538 951865073 496371656 425633052 463451123 718425769 695220528 964395024 309705056 528052994 618427675 419182819 211744176 963287881 174049957 34871172 974695967 723646905 806303855 45525881 294595473 678789314 416626881 837280109 839407507 754620396 896957508 285249727 290415979 516971550 792790511 582546146 429814726 246568888 924008115 288408206 581882951 831374803 378936048 772472764 643521691 839655961 298285797 385167264 757515864 224777378 610348218 98307124 144989007 861156993 275760852 746731342 143821774 441051698 414960626 270665788 352504363 91848894 188773269 558936854 823481060 242899089 813226945 982316620 355914254 619643474 873814469 963063256 804048757 122866017 245237259 854247906 805543363 677199322 136116870 103425040 913501072 477641198 991874416 285064975 871785855 397696616 319063672 299075546 842490243 988346065 107287630 313201353 646222085 228914199 948639929 660087212 873726024 586001224 460549418 765713600 269623613 26539695 539528066 229578883 500308595 66902098 101533443 457372709 377711826 345937033 993094373 543750191 668619285 384879367 630039599 134579045 31126996 401085176 268854151 479488132 316872468 813169466 775672583 539215614 899918868 900077803 653901588 769703358 487390935 953642126 226758860 799520720 282380991 452342382 905578170 586739094 792629650 833532510 66422500 656388468 104951898 236008024 7489034 862911674 414301260 132224166 464436402 321181411 360091452 740333405 702794521 537879598 41022595 961399509 18429139 991603954 899534172 659319029 964740944 420547244 720525576 726576521 255143745 169863594 925661080 602774401 651268087 779285129 622376850 514872111 404777123 538878151 77938454 471699421 987379949 116031316 730101711 717303380 552330998 605555293 491554478 629297825 347657762 604873988 321583205 170148325 875398725 814740915 843205061 31819775 586952181 46724609 337792220 503223821 940998658 376800553 508536714 410465144 270977635 150094813 75593023 884506115 910604911 23234525 40482707 699321425 618178499 115939274 28303495 926783772 824954073 799489364 354029796 441760787 729679998 670165777 69825409 475586582 418064863 722179271 491090242 624643317 263112910 46063318 852147942 39425610 313641214 857663208 595684820 901169044 47319463 876572333 570542373 282417487 788258476 869598362 92808009 372077461 827834471 738689724 261246644 450771489 433486499 698684024 736697157 522095650 197952131 492594017 441086761 156964085 340782375 371409783 735683855 922683867 515604207 528214024 270222904 855758101 582148817 997574863 213035463 589139083 849320815 56268446 745420213 51919613 293448388 935196973 173698983 501124607 768818466 248415129 832491679 223445439 469439004 780494998 430640162 682557434 202424438 201016935 316498788 939474690 338890989 384228814 512557187 109484404 379629722 201362505 652511471 140926732 752678135 813561555 509850118 242211384 607469717 104492321 148237899 410167917 526860153 812031469 335967957 419934924 588738697 128485237 996120306 49560197 863306384 943357826 517553642 963141161 869966753 33402976 619952607 573883835 902184210 284379247 839951028 70560401 445857744 116127170 434720882 543602532 979916909 910540236 664748694 641571789 904522585 949923557 22947064 825879378 277858403 833823514 214188319 940766568 163480040 724150723 486444066 359347955 35521392 397461659 386997294 188988818 696641624 490825522 901411974 76207916 804369485 324084736 389329329 176951601 883752870 819282106 329053588 407146892 820913529 579698373 78057656 899057407 561445383 967176780 340415769 926658619 403383731 413628972 263346486 270937715 853856629 437643671 207617591 913756667 938163664 630618437 84316206 955789217 193641856 141296798 828641745 450396527 177088581 89457286 505872860 680867212 235374701 167080360 290923905 386685067 623343306 938554456 222403657 885593014 730111104 859250856 791926900 10011074 741082658 815933685 19652671 796046717 612453438 292537557 439769209 669795391 595470209 63634114 922483807 634064829 910893846 3987018 236019739 743487929 874941985 299978088 281374327 360414319 729022080 252983892 175628316 817124618 470406556 665847691 226479960 848114634 387416468 69133088 151936075 406858429 607505741 540391048 324777076 517206414 859580162 396310029 813792272 176840944 633893410 578155843 319274634 571706861 87649848 431341958 455043151 247782485 305800406 326311974 769016977 109076438 132696508 372899444 414749571 376804413 435349631 210572702 491240671 694951230 13259254 362626407 621970734 103446756 895761438 181510914 729715363 461013340 249021569 532207881 324093974 340849320 513680034 522895469 910545580 406742006 408629028 949491442 294166208 422252894 956599656 436216547 944923161 750973456 911602467 990174536 982210060 713214322 826436616 669472347 637157068 73620543 415985179 161669908 146812531 321545586 643139999 904673210 627200384 342323553 581709011 741562693 552681622 931105731 557039346 839845785 106405561 615190066 595396573 177632955 511909715 39284225 71739561 368241616 508212790 409029992 919937198 631407561 572114206 69829751 869279720 853469296 143685493 195338529 5406118 763224555 459677561 186028397 50032083 457277844 198926727 306003593 838029907 321066489 275597608 455331001 18048487 822112245 831697399 626217584 811652476 580395439 464916954 479335109 542820327 185768442 520531190 817893887 92892206 247545001 611377350 875016878 694561309 284911707 125992171 645804478 908107967 677248448 992084908 406657186 692920635 92541372 806115275 290535868 487600467 548593664 111486875 407827203 958908003 595313 151141680 774954577 342203776 32590870 816365784 375787894 380118868 804585242 191691775 411101470 212495382 188878340 686411508 732808670 42734809 577167625 716268264 951106051 328513566 757537822 439997256 867379301 782833388 428282734 162730845 479005474 42987152 569130085 966809841 181850089 596167395 804468022 202748841 625473906 436275337 958821388 87121959 411499710 924345882 551930961 238200815 389835601 691436950 537733121 168510920 754108865 892488154 929980786 780789962 57174214 207549641 651048870 47391981 183676241 917462488 983476580 615151781 658502431 604330379 93090018 121980268 976663512 57679378 337866494 219967411 84830065 170554409 289649183 492761968 811740045 166209588 661939227 844566118 846905402 555595225 405938149 364217627 44674968 285649129 545427894 853902084 702306499 325556899 803851386 199455173 605023312 998977358 709940170 57686339 117988377 841326925 162943958 247865670 640937654 207413463 95349320 764718119 564364926 297607715 227952671 670392361 679869538 751250220 249402273 615507953 931955305 315907275 747457325 734844763 801471240 812142540 552438538 915194474 983311899 860274615 444951775 563549600 346696910 930259340 616479832 387005136 339028986 501039165 961527365 519881752 593316073 103239763 609525765 573876120 444598778 587514048 781518345 225360036 66247947 137278548 966436949 542374053 141801338 125205947 185225538 650740907 828608268 241965351 330024850 632417088 272747937 253996591 103897621 982030761 31361917 523828494 600199881 95185250 710039920 929456812 141098075 712776476 85216995 720608654 581686864 525294392 600025991 344951181 616538490 125838229 446967648 457058829 59215210 687888240 218177883 392389277 483140857 882958585 647208581 760848909 238419630 838582791 789268731 997548845 27939781 313592826 292572609 299663748 296190590 802877901 769687783 776919259 184765163 784454656 103204823 183889903 418087082 479631231 145460725 409737244 216952095 941056891 815583680 818350450 941663563 378558518 502365236 248189013 188376528 536908031 80320416 735979318 938102857 443552267 298178416 838536783 644203553 731495374 198164524 969648504 568197474 616598416 40888937 893379854 878149473 953018066 364329140 223041621 914147111 767334031 615058461 982397544 489550777 438579925 853367334 917747517 280150129 114967226 672165889 808939338 66558694 414963360 851583985 891994934 723935433 21580208 783364720 298312174 87294158 454465933 291325783 152875783 943137530 35596439 702922982 572955989 413111229 159934014 518118237 976688435 385324842 675383182 284632091 579033586 563157961 997749999 564395277 778290918 898514265 800993592 861229534 647000116 117329355 544705649 492617530 629375285 356288200 676776294 889699560 916583215 191737774 312389016 493480147 509693159 83572986 903735216 365315258 278210269 462857779 322741470 883765295 434826242 272582926 132340546 839474106 672366002 491088979 423649419 312509483 285475820 448033480 166206376 73105473 321536342 373465568 873310865 872709403 39216505 980003953 644615576 304660058 330811081 562946086 389163960 2303639 525982090 282343855 836870604 482249086 889806915 345335921 74539818 785867145 541070834 876706945 61799702 954373940 757046963 824337148 857751900 9526474 896907168 359028560 810110965 125804770 614541981 478871988 980316846 773970782 14697670 568734699 972875565 647609019 885213065 616232819 77194611 738418252 408120532 570648612 810788880 554709214 223418764 439882459 191909412 987305517 492759521 655744638 620102961 178123779 562442150 604346435 799709183 967221771 247281365 892939331 343538910 52340036 747553426 155918324 785523846 48228372 186669414 9808648 551859140 469307106 787539623 158977649 429934608 266682236 958635160 839425797 311813989 337519890 2611922 976913993 34778313 665727223 18414190 922058040 29282794 707369282 758233025 14481192 317624834 975547321 673969456 914088791 557782371 81650467 889818555 916725532 869891634 892555107 883659251 184174403 841455564 440363765 451969960 581555317 612478284 588206363 771237580 362154845 676353565 184543019 223840171 238345422 840597604 924709065 470468768 637421240 639564428 593136091 729628381 958078672 820545919 361990119 259569226 259999831 63190627 790298274 126618400 323580678 682001742 871966025 703518707 97843455 790468422 806938742 185255778 255878794 669277682 181397069 751844533 124063430 762014991 366159622 783555480 448413664 192164696 341525495 15139154 865912078 296808452 644194459 937192473 428915668 960256890 239869577 519162010 854250593 126522755 184979218 496802903 252891684 369702326 403226299 214824238 127287764 462542712 270713103 303623757 942108873 674659852 471952010 773583204 464229574 429754540 419122727 493253311 126008744 633819370 496960630 655724901 698072225 829043024 177396414 807182885 738860348 113458703 932089203 437758488 53517519 885966111 785244851 832050259 45158791 802046513 887538927 441382814 353573509 490445553 891470632 404650733 86063407 201373417 933116354 392096370 377283992 883663272 639253261 29055424 317040319 932796068 421490408 869810613 952642239 450720954 538028387 31713924 155801183 942471482 984131410 185512067 773943334 948503529 332310514 956076305 354209154 521593281 576913172 535676251 582668727 525875674 340319795 603467460 770189136 222262513 929380868 293173551 321417172 673624964 329707437 158304313 121531616 35607990 46810942 512814769 284793968 245048749 652535259 283880055 840986223 923537567 118079056 496255896 802268789 75113532 319109042 477769935 259902267 37587855 144874257 415730970 706630486 519432857 101897172 275267095 351158981 205110822 231458362 712665462 870482405 399043505 846792765 929583070 741462062 306577318 730755920 837299959 860812188 415427949 944974205 93889680 620245686 174986470 798730373 313290479 137981109 478515505 367317008 395813176 689555186 769376516 400467631 696715161 475069160 188622952 492286858 166621608 964415573 927173964 739777340 253134779 254540568 578207173 106388266 608545680 496661876 383085373 556009204 613656917 166253400 298054026 590116715 601003033 83004861 699456703 117743139 48167829 14133189 858770591 227138565 905329219 253424615 440720926 306300124 396331150 73019230 353260718 317864811 188797107 429230845 952583946 815837695 879740984 39468161 222502113 518865514 494234356 499403746 91178969 860128546 775712226 265907319 862652665 729524468 1405017 980255758 456221176 798223193 968777833 571725371 350626177 431103458 883201208 966205733 829831153 180441713 714951555 445523686 389510644 77290583 565884713 549655145 598794146 977296208 552367227 248550603 194577284 196338399 565500434 592013763 950871472 161007235 914663302 91446865 687812613 277771469 769873244 161896361 746915308 705617654 757302850 539433413 300963963 879130715 395098263 128186628 578400141 816503762 934393443 299534433 454394807 869195032 609920356 960363679 441488764 478617190 341709609 838947430 713583738 449562181 775909738 762858688 958003909 861660670 362708092 544794143 138798094 446999828 144465325 629379729 209127191 971604709 418812885 921502894 304189159 856268143 111368487 254121296 535774476 100260933 13530582 962546308 249216773 608136238 2760885 874485505 359311460 52281901 194697702 966340305 298167831 695561224 170345203 384030492 338389392 715267319 857511588 448910551 592176606 866756313 131954874 81183371 395507483 205816389 204064837 926320543 523037621 474701317 924959956 10269044 532077549 861815563 335155010 357444067 787428525 411326841 206359217 505420361 297379213 622732858 538932906 770329700 580642002 991794096 171026169 584574 702925182 557460294 151027232 527178570 355930073 491108537 725056500 454258996 532508583 467815773 480831625 839284120 203004660 655130194 846353342 948982543 822611087 87260462 854709410 676612503 162709097 801077335 183114023 680922423 274744918 651482029 905957431 675445793 932188605 528609575 440189518 816616085 543584277 913971440 908814426 391006335 856365032 501346306 806276294 695043407 892120369 713219159 439566225 333031008 39727695 835788814 806006802 612103783 243990318 784355911 745563166 909451968 132759185 400003307 442203386 186633470 258354638 413484725 382876902 983163364 216914374 587441358 770007742 383815796 909487874 253883287 448373835 693972275 973395511 674421643 393093414 328413249 94420022 111898982 444673571 548133835 730229519 414242593 111266608 297683676 760131009 475647135 902376766 775092902 398579120 728058059 796297376 163934594 986437880 434072267 305055118 399357366 463178192 651155238 737895917 156069043 939711414 708168117 900849052 313263052 411977106 636050824 30159645 841904157 442493300 779735647 113425541 744420288 851500293 70067854 613205103 854446520 664056974 838148199 485695507 295583705 308016334 851615910 403688553 881288731 510683086 336613337 48827876 335102105 751390787 324977761 688705816 436164420 9087193 852306612 603587780 425534545 907875974 53488390 513520591 484889923 869900764 640179498 95493808 81595133 154039571 381411973 315443916 812902665 119683962 620037529 28309524 125158062 877342095 521596046 234240406 662813802 646376964 127985637 498204636 830679608 659349406 230159775 246978176 682000937 717651339 632652658 658396284 398037222 360020578 782868702 794917738 634606119 294246154 963072458 617363642 96248754 329543322 36777937 388627749 36758280 358520860 45942388 620588922 865269994 480834766 481454594 655780085 336701384 666492567 704694447 95735171 787856186 122532517 142040301 967355055 955186598 672504919 374593518 328755308 997770787 252502735 11624690 129587687 230936200 905733854 543547793 36325235 804499884 55602587 88094587 111480936 554405990 268029080 254143219 630052044 997308371 697142108 692901601 176367018 435483474 115770105 373646834 346025696 234078868 957718140 371607572 72825193 641965705 273666521 902296424 455019827 895817798 855903564 999515566 450294361 456049523 114874991 439368031 698050337 953011043 413441395 42296734 5034077 804923962 99523106 116578265 512998083 700425012 676392250 146234566 394627139 732495859 288572979 49338731 18969687 214112320 234929467 226486781 911303013 652974073 395251014 501647966 722572639 378839769 295114077 51417209 617165319 26132750 205437966 763032975 333536494 947319995 462433698 192679063 211251017 621930708 323992183 998520200 856999214 724132887 668315035 606564226 580799443 77751823 153411980 894382003 910965260 155820782 722317964 217286685 182674631 15555590 987249799 780944709 648763164 78952309 800564828 174931729 256771199 442766926 885601768 183363472 525716960 581443227 136880894 674113370 32666167 663204914 515215291 329737391 911078530 12300848 435928502 332323629 51099830 215408607 448240909 258990262 748523962 5513860 820990146 145336393 390722124 824222496 751151684 81164041 371569850 510458368 569123909 965584726 260805397 49356306 1022798 459908188 373415648 666585373 816325617 240830761 652554277 643835185 20607349 465756036 541060633 244421659 124299868 388154838 522774563 149910967 816981493 86203393 986754194 64361769 529947910 272217517 484438115 132593956 599571594 816145977 212509358 638049740 609915914 333860615 104654697 572818000 279369981 506956959 930000466 692220076 447870767 759660887 448574664 632546212 80088347 222206958 100389211 127373385 291671600 861076548 557889891 295239397 587029623 381191634 537755571 929907755 113904602 918700297 485616049 669005369 474926144 34776596 257924795 565904474 885771455 541860912 203024246 825378781 121675248 439146906 286741330 302435250 858340476 140178308 739994403 459159795 704303704 791069558 275034233 384018890 414732481 841589030 102457822 688689510 753416108 63811553 513668949 640963247 925622220 680851257 798383029 995457650 812813922 92951606 549095534 405510414 592836779 304493664 150224526 305929449 38388729 566501594 813850377 288344113 28963311 421627890 304926969 605961908 281390893 989388969 433800718 40312488 923495260 510779433 239157241 430432823 631877140 760382434 936423669 99063063 36461435 549478150 850302703 80623408 324328181 989766684 690578863 116223609 942313140 641156252 817643504 358462581 601951304 140415119 197264476 733551857 98601742 35756082 302318279 398480087 828902347 820887984 836725841 556502566 398539388 808263897 7462770 658213824 189240761 481027810 435115236 323352362 538209997 817306114 125136344 117705021 487393701 929489216 169382122 23594325 43513610 202917923 409961276 390414881 352579931 574684370 85096119 190187417 421751723 183597288 268224944 965824694 701705996 908756532 663366990 54573506 135706943 915394075 676874701 308931466 414591077 881633576 467403490 867387118 989108849 97288693 178099856 839287978 47624803 661500229 88191717 673438080 395741479 363736485 198229157 266407501 944673563 39128941 424489538 911963268 134201733 259527204 632841212 321022907 964112615 421656669 773867409 739760868 370398781 411548323 876430923 890644982 14047788 544636726 702824295 521804113 826575498 340227391 197991536 888319070 569326943 858645381 802334624 59849091 536044497 824412602 963327659 890529879 679347531 865147295 439401771 7836693 911410344 845940350 163205515 431803382 608975708 888620900 511702744 376836668 184264840 343069654 821361343 613174995 229261869 646845731 221817204 619774867 260110022 922508456 49954086 326341524 15089969 811808910 574272157 833903335 618686401 265784488 47286526 111730974 351217430 185460604 193451875 457482788 119445110 805070071 42657002 485454144 459637126 668867813 353851707 282912039 323186456 310131151 848010502 537591622 347219617 972766979 396244121 334264940 573123466 741554524 96206784 737462481 425852034 282621334 492016158 241811012 565242623 265845037 128072902 688663533 900686362 472962575 742916432 625117460 398145696 246161069 774414347 37890900 933289185 983835621 971695454 356842630 500519460 424778948 636288840 974277882 883131395 628549081 52054074 799415541 338767713 635794740 948043352 962129642 131473239 945015056 474023447 149095711 510326568 925883092 289558469 42711149 541731913 784813651 713091374 717223762 470971550 792503843 390094597 421118064 537058017 72931809 517246764 984438127 113942564 868430954 283723053 835109043 652665268 902945151 441626337 919002175 735728082 221963567 281909394 869316992 864138625 988637122 330215129 56578955 767613011 791803721 483144789 407356433 806514861 747719128 110647844 245568048 134027293 406004092 431575652 422566919 161183971 663588670 679394679 851184036 543594152 577774621 619731817 704417191 802471581 986363417 724224582 902987983 95383376 982837579 260070093 864759931 416263270 837628172 57183609 784371297 630196392 254276404 919751163 871520630 764539037 377993756 337564451 448111847 752295991 386303286 694016294 784832683 110057728 777063843 564723004 124222958 537590487 778992009 980505699 771767520 707202158 407799887 786878992 292214440 204085859 17844293 530759973 215809534 172846776 467502389 429030176 81994606 529995994 392223220 421448148 280088424 851027978 754128602 943366808 369467596 36663820 62054410 548809887 782975583 639561144 737172011 43615920 578239196 30671310 784552520 619733897 741700836 945053061 260405392 268199488 941834573 421608783 595394625 284457512 89937542 55008007 727825231 878303439 242947395 294755176 639977745 564602066 9785268 427176006 822439872 561227705 927178488 512648350 6726164 815666735 960012068 858589469 119591726 636182807 519287201 820030608 960777046 92065848 918422442 724602067 67130777 867606917 461175386 757884833 784190441 388231737 54353473 301634510 147894039 8101677 47060432 735707492 616809045 459317884 768568259 562400962 661583 729180856 305337040 500114456 43041537 620068968 860811384 649404188 82617810 978116705 883171180 609955307 385807338 520783261 46570447 717296726 149348651 636608570 625883614 281314644 180319860 496998650 183935380 891956875 296230235 192008187 476195999 162728748 554546679 496934078 841685192 5960 356845341 747485818 896429166 623499974 975059474 417265488 946524606 573809967 887755655 798443597 417426373 544601337 347440002 690949164 718376943 429310020 621560897 979549466 346703260 569207781 151773067 953016833 468570937 216303178 931582480 325727515 817825559 322403819 113592068 682585648 337493736 764217688 19571216 398707814 713599851 445757489 127114642 601335072 633689323 876022497 595318264 252087224 217269076 943700838 817023554 312876790 965592944 319658064 861154352 539025604 267048403 521501929 984940666 638991054 275720207 913845075 205823371 72388795 712962345 488697505 741117727 787658075 848692226 89485281 108004165 630319806 853006040 531700104 629019221 367507686 157400240 421428563 907041277 713094458 239359673 849754003 48426335 930303146 399638852 738716687 719791948 431486226 505787645 119683791 741434582 808142096 16361141 939905037 335912996 978123468 393032691 553837092 334714463 424649088 693484094 898004715 726933182 430926231 551450287 699834384 673547989 325882318 637918861 800587817 64371246 93687497 999426289 602062644 33286461 294752860 439136340 387430353 735015558 372632549 774874145 448334025 557402174 80816641 104759306 554711876 69179777 639084948 487823141 311913421 80533381 457775457 457055807 899549205 860464828 158233058 961896471 540992322 451691005 483501152 193139034 549447522 14004539 388194305 703015826 766030881 44997918 753202951 108967584 647698630 249812686 926984226 233476618 965247476 467763997 730294870 568979988 437735075 682834460 978248409 880694523 356381664 245543824 82037902 845497972 87640706 592603902 797831942 330856301 256347289 456262635 770925854 28018718 276166404 310378771 996755536 284660423 588349003 508680662 68874975 355851855 852434653 453236208 333204472 494714398 702819103 74095953 476709094 195633403 220250957 117017617 177127883 594361136 138120869 476547639 566061231 434657429 295569661 816874653 825671464 73978632 738024003 864034106 28514898 376514010 752267079 687073960 781357469 902118396 225013028 24206328 666748251 317134899 910890705 463608174 528125010 737941262 284694303 797579590 408909867 983339716 456170738 836393426 736795574 830177150 212883847 39316995 800889391 814370925 885948288 410325938 176528734 432024014 212829536 171124286 357785419 457265671 790616538 807391382 448752092 307774027 906196005 766438179 965551347 147564872 48898411 539219496 649598907 899552815 583344180 993764125 971766405 517698682 445370837 280986553 330412136 186600701 686600056 279282288 393226286 982685180 537406333 441262560 636298903 25945186 591228736 86783168 232577890 189991639 963327625 323652219 344105874 536260297 773300841 231485062 323201704 901741550 51633899 285969520 857834263 642667193 782839793 390040647 293894955 830616930 734339197 395994171 58079356 292166452 66272675 35432815 799510696 264097464 998435645 66930243 207019557 287320115 737372701 952099018 693370893 441486116 549165294 738671386 294792104 312673138 812704021 157901742 342195287 314316744 911581949 504575804 220355898 838245003 87234273 490716701 308252884 756630490 746123816 101269959 737392425 282102517 299870818 580495861 119535055 362684446 196558217 376402325 84440088 870377789 960677324 449257951 2256444 672586299 149411002 419383826 316446537 358085323 457957454 737990091 252165037 414981230 25628802 116307438 464364834 497955562 322013238 364439592 757394747 8915705 64295434 728860079 300895740 25892334 950150475 228219166 55305940 137739642 61596532 556178609 529562516 202184107 963379479 974578739 192338377 852389715 442338764 545008310 857487506 400756348 698746622 622417573 662150407 650207961 247985427 430049470 216783586 743645919 532485089 109387284 138851944 941022453 417528082 708719226 773472359 788415493 953092043 637491497 764779164 767345662 312369322 761028631 749759842 470638064 65104850 665561758 966868110 773890781 245959420 886274328 81593531 486752629 139281771 260580763 538196710 92376721 493142583 934290982 392222580 251406433 792605589 603877238 360439688 733780017 60464367 518349104 793783987 789291359 441320595 719698722 309069332 560826115 569822885 241872887 69938897 105683440 597304000 677021205 907100220 364299349 940263357 21048175 549793850 820625863 701845381 268713735 950518340 778200990 212823696 495215321 889666371 479644202 323425393 344808260 501112753 774469894 786252597 119219543 48301358 195350083 74282452 389272678 174403187 421939888 811945088 32553783 785702123 2607552 606859807 844192561 187807485 456415037 493601894 338649790 664168074 730259095 532819187 512550331 908494998 479830587 238022249 323451038 892395347 675578228 947734189 55214643 890302060 161069465 367076791 934363548 18737324 800180660 110508818 604792485 396856874 172983972 335435684 50663445 173288356 569462280 66451214 710021438 190547134 62582889 995373397 831900801 640249282 387792216 660107718 438618090 356678276 366202408 630108767 61718719 822824782 729158733 719707559 75828132 181933249 414109717 368177532 68114775 853196067 191816370 406010594 986239758 945937495 317158180 256292660 474931595 882313938 900007552 25040555 427804945 688906032 206184016 709909653 673180412 176716777 244649759 176388657 415053340 728333213 156703492 199944334 903946095 983969343 175359173 849732856 442813789 374098545 31274175 59015281 172807628 445839519 772922484 48520017 828143337 10542425 809999439 236179987 482111873 143326614 152914132 707793903 770285004 10204139 807896341 517337536 927738214 423144437 553950118 734411170 993469358 527176300 818884640 796106417 719277753 992870165 504736478 970114577 71957792 173387873 517046000 664861639 558522913 312691318 587842058 531099914 799801080 774410760 489964748 103218412 578245791 879543549 858452343 219236932 764827417 787852200 240865062 920889869 945226167 833765802 372645840 956239355 162178328 613454749 552043539 935348931 282085223 901550559 667612941 105572582 684039137 493600343 564055970 807780939 160470272 528248518 863292448 432509264 751050427 997078098 909530207 951604157 833659171 246638567 154640144 7568346 854427772 274967780 705764061 695592826 921550406 508924950 507962460 417351231 737573411 168244919 517069933 906755746 727758450 4145616 209422027 566148105 279329993 677472247 963428301 859807017 285243949 251336434 365229384 766026891 942760045 590811706 599868999 347679562 94021661 287839233 213684715 139103202 528687359 331583947 232846233 886239157 326766102 725917719 408643825 378354485 275807897 868636610 174660769 511740986 967239765 846511364 337319851 345962915 699477495 695766509 421283981 840114146 633187026 790331107 695834613 779569882 723086487 911704334 192714561 950060598 579284668 971372647 695265748 306396991 217356783 388316200 51898596 137834632 29358860 552587786 761441819 68255896 828570342 617180502 895864090 279549082 630712867 29151213 336534071 513783872 64738057 78688133 64127485 647989372 897417515 304228570 631281274 792866357 721151376 419124361 302026568 416085473 919978011 767278853 536015353 729438016 754955332 37018340 862206491 961033560 235790499 875374856 68747276 789879616 679549291 910905820 92468433 474717368 394995248 516447147 231564686 575419205 552091218 248267307 914258891 734913511 145451173 610166076 308729740 122009657 505554113 294360040 217593151 331325228 488685563 565555359 7603295 840847598 639159230 432471413 73446356 846353175 429804966 944388125 273036298 239951058 201342334 280003636 159328480 625287378 277627851 508560360 700191478 6434607 763951338 800627114 30767522 793271248 528670986 667807729 360950159 234872073 279487355 486861399 109169178 175245489 860371520 478060491 91045171 625546031 481456813 822923259 614326106 810160677 769066628 977424849 255765917 872216431 491238492 53397328 517612914 742719740 475466850 174692056 720710604 946782858 248128610 939500563 358646605 455937134 51644886 635257489 969573052 145389180 18740913 821685133 544864032 698048516 300451547 65589393 759877582 383784867 983630532 707617005 496401762 522851814 74821449 570846999 33559461 402502102 148940440 465644127 307835115 163268294 866147467 985856357 555367814 728865177 41303624 942570627 970920831 31561199 714031167 883714666 553283559 836435854 33523578 902681808 354640253 637491603 395650566 126264765 129827950 319656233 794725964 12698604 585903369 924263695 398615225 479265836 54410977 387614600 760434313 542258430 373436300 804709454 648611050 820940466 526205790 479884804 982065786 567482271 553819523 590946699 824158433 786376204 299660071 239390463 281229871 911009269 585820153 376732212 768066998 360183282 893450709 875864171 104973400 211479276 319464222 199489206 113991835 966302260 988008322 417688740 17706310 275587550 290280884 883732132 904685208 576700920 427209891 530155509 576408581 177542846 127943823 250772924 94807074 400858845 858474785 324777549 334124125 702153197 21713474 338674092 83512833 696934065 432982646 791964093 820546237 970524772 397663115 186915660 478105177 3674446 782403691 598185030 860166535 21785949 151723339 950905337 285283232 628455773 673858025 139890928 905808910 142627807 275738599 762314420 855203729 304225341 458360602 538924517 991277694 788964424 514606302 500757704 208226431 250557663 430193531 960094516 659824015 578849307 210441012 478474979 958719977 202555137 95078142 672812023 378585133 870524350 635369600 820068818 337133248 739251289 834567669 202452194 54700346 126103163 129670349 739730391 87138013 589021021 973814226 870879080 587344246 590140500 75676187 29291810 277328892 665711640 34223280 708758034 60688520 916477120 74453946 104454105 634601663 934375611 174397689 298601134 214668957 4697924 815648920 673178015 751407225 958576126 701962082 883544141 709620979 292800984 60571370 585192226 604373857 532395032 898808352 491757198 779711409 441219580 508054662 429850847 279797803 136920831 47854538 244284480 931464269 151098690 229777165 522850217 199593317 838153356 525528800 334282389 164924102 811982586 382487869 500442469 252428132 333463327 515837418 278339003 821989241 885802837 721251056 547092971 669814757 439772742 482768957 522490076 41799963 511731824 482326590 720734245 822618678 215615194 436441071 643847760 396992547 153060606 178843537 479395562 95994829 733921885 31879971 497919651 511709951 378739989 532617431 947017943 168771238 553734590 794443460 138265756 276225936 637106539 845283456 220693652 391147153 152754928 142209490 709986571 380789714 935042972 519993365 823349275 177082540 760405869 476914303 333743479 765803956 367687791 383525668 821698252 113229161 904516887 224464434 913890780 958431892 656555635 68042556 242397065 810771925 939422437 216811087 956846335 105650200 667333465 571621671 786173736 808187416 169561931 209464829 526661941 572765856 795383106 129088570 731015645 899882663 315410497 303526173 456108311 207218252 119829977 502488803 493012326 377715223 160467044 177348625 576237916 177278991 508812415 292004001 525689488 479197400 17040289 891603430 677837864 376833571 513834882 110091754 610862958 901733468 180437849 616470672 874105253 917710884 884439273 382230494 576424467 809986371 848528574 126733028 153364251 428204331 204277691 305408156 811877358 316378785 855221063 814280939 942223148 11879001 863716097 38473679 876598037 225314932 714378808 359196193 366348731 92784699 979140835 471417786 841923809 666495992 224909153 140704464 984543431 239348404 208441466 655233415 805097594 974124850 922392592 372624632 939592729 935759922 472214966 872604188 746891613 535630380 322837851 882423857 916187605 356817798 332607919 448363645 581034135 698341509 130157744 372179733 682129831 726451166 113845710 275318899 727580263 894408535 757007154 84761636 774107980 220731976 44828865 970760707 197174233 56915905 142330837 357997407 53953048 234731957 342900092 546977553 528133412 231756093 782770162 843810974 355513990 461428306 496283732 782337817 410485738 573278730 576909696 943563311 89818376 382057011 166191043 665058258 951647442 146424792 116141022 444012866 952124776 44830351 887357806 856688990 224942599 670295255 355275118 555122378 920101209 757962937 929246074 432814831 935898489 443146420 233744125 527058416 911882566 86081697 831786505 971027860 376433415 2712833 880901817 859814872 433363075 974424111 241575642 424471571 466411264 761370230 343476894 673321865 341741297 744080515 22825242 758735429 521506418 779072680 387584531 510075696 968886916 575762213 830956045 826763084 708978515 898709053 515138379 783519306 182150073 833481320 298799071 580209082 668627063 72154589 86790 323654623 994355349 628940447 68969226 320777017 191099593 256451888 256258099 94688116 694277308 402499350 227784949 894167144 759276960 27089658 889321173 218401557 209118944 372176286 517804977 343836203 889283443 233283270 486944837 553715328 978318250 37491597 916035951 282281068 192818355 730427349 371051633 61684126 375385996 253202941 23912459 267727691 900195286 718218855 651427585 530219428 162216254 745673734 248368379 162087062 934115645 525335933 730982683 241959008 349432603 265355067 95270100 311123440 699850169 365419420 159670429 265338364 768725308 477443957 868144897 826549901 997838114 70695671 678881255 266350314 461473825 766454213 710406691 516508937 654445045 535305399 352443156 705119933 947199402 692821310 372565099 983630707 681848075 330471311 64461588 623261021 889563904 295021512 273092458 424065599 105696929 731892001 229833056 632671353 551461656 746005342 63903193 432425124 683814853 993391080 42433629 985029265 252615472 496010973 620424080 782076339 232983124 784736707 974877906 475251960 980842974 785106951 348065643 617662726 492980858 292606965 28709336 859718178 279934646 99783175 504158279 347086148 936895576 932489860 642299247 437150334 120798524 368443243 196995268 58420831 654489301 449974634 798167555 527489023 156995788 272955542 775010485 406096463 504675445 42955685 853482589 635534718 273110265 120715528 530060749 14486308 623804963 768678215 395523910 320319200 408124650 105431411 768536634 669941027 720668013 609897249 725503920 321679000 106508648 945404273 511583155 570262694 718814729 184597941 123439813 103365161 505748281 501465413 407520833 174804947 117944557 661233719 918229453 847884141 638801137 525015549 896438388 118027093 265440190 581120795 123301271 108979664 782182081 501874945 224463312 964539096 850582404 407195274 891708259 894114613 645254002 686899349 655709944 383140001 771983996 604614770 857147400 257580180 606631605 729313038 843804329 928827124 572943308 498865394 921448214 265539254 272368795 545296650 443974779 60633800 173032269 316523492 860219852 979332656 731466037 57736543 5439516 464068606 243886759 74187623 684626339 650644874 812227947 476347026 230186612 223950425 548942471 190008719 463664325 121027313 811458548 661761995 927738573 680658125 201240777 497749703 276603839 958660565 386364588 625587971 683022617 386526904 895365230 542005662 92129737 889145986 750727351 249650752 194139608 609069891 233933380 240829694 927014467 360276934 951451743 662711507 554402346 285202981 319379279 843847616 641934700 946672275 901554269 178946663 136265750 39959616 694636880 493868429 174537556 146786536 127346004 663825234 669760594 620301799 482342151 938416475 125228344 762748687 968865053 40046105 656775844 919943617 315105568 937371315 804660692 582803587 84143028 908313923 252477415 886128872 922243314 43106764 109512199 978128226 224611066 133084750 253770117 810531091 670128149 515998745 49445263 734875376 620183730 2145217 12080971 715918983 866058543 894194717 639360294 764896714 510751120 107576789 610692281 611997670 883329490 658550010 231109355 444710573 533951451 934394835 179843973 801347294 382450818 594534037 704685133 967561993 969703223 845799745 598009160 115984571 571521707 693191039 921111629 495406249 961801732 832140247 685607052 463985175 6756674 841710871 707507549 491460379 800533552 597399853 127399335 675329573 787167515 879530571 133890272 682786080 607472346 931355103 332322799 295227240 747336704 611161846 230632216 965533792 128475754 720357962 550984792 42839840 787972753 286470796 634443832 540129776 39942794 139028733 117412829 69805821 467280734 413104924 575082380 846737270 720769873 314792405 894001058 323968403 123763476 165770662 722792269 876217399 108587397 825278772 588180199 464969087 458750104 884708652 704777320 235456240 724035330 619238133 11319199 793704143 2026834 730061656 386229561 630328420 637803581 267680148 136237283 473073078 628005361 794823979 158457125 524903814 256369842 175806803 397537150 555248404 472146634 94371088 495089273 52178417 452317403 125744357 990455694 283400878 710917658 342033712 622348305 761979413 957114502 448863464 279758054 629989435 345423374 718520700 642650038 276219185 215534120 125841542 618182029 594136573 961668772 119214200 345217538 292738880 110369888 659040680 553116584 331488604 260464406 548465293 351449682 355948281 515627600 417889246 641383101 228141137 909229030 947356862 463884597 709712087 554715479 541825951 156462756 324714113 553756162 874258970 388814685 337074984 609010607 523717845 893114959 363378824 843342193 339115659 783005103 705926333 61794592 376044986 713496770 471148187 478325944 182380275 522878791 661153614 322567899 837421610 380819434 15915243 793700792 785010731 382825637 124988582 754149145 932686946 190906716 805598240 766741697 199069821 281576709 272539925 480456291 151205290 261305572 594235047 206920251 826828446 183973542 746862224 678333714 582758747 568459214 360324387 30522241 107895983 290526942 341021108 899732947 756066595 431822621 595208152 82285846 736570586 519185090 537193130 887432972 334790794 373756916 497421880 752757034 114900400 83591665 664918601 749300405 143916390 667290909 164481166 479977747 737959747 528802857 545160509 858727576 386427199 127335274 766075776 29966653 639957738 87394811 261180164 251714918 242614031 401552694 830225505 270961856 337161874 378659387 845050611 328515577 19964179 528921733 960014015 621063420 435888799 769557536 147567505 268792153 506841660 483521592 539304514 148435589 443581832 463431879 725599259 300832058 966272411 452025271 280006281 423108626 693074645 918971110 988937471 64650990 352263411 277250199 281545631 609274000 687892623 980396966 143944023 980320467 190979399 863280951 950059362 945210218 510721040 933219874 839591189 491710616 717640636 317972996 344010143 63765364 124755141 663842779 197600562 993648724 70723970 427523521 915356430 444547852 711555922 363352364 970151970 685879286 108180402 224446132 9833519 550474297 740873515 788775348 132714031 33666927 719102168 100580767 888555770 636480594 323730559 4055271 288197885 239254785 702972143 171493826 735178939 838026906 619858003 311528863 581460411 975702371 390453784 131447544 481613168 615247376 945253295 660098863 775323896 242658075 777329207 103449154 75489725 487078890 193003178 511221275 83579550 619767173 880496378 99686415 124860714 380458261 401952625 91395342 668544678 486957903 101145669 544136152 33490244 542491168 138410996 412155158 983864397 116932132 419548247 913043007 176494785 289423787 698489858 106907235 470303110 534228599 234137914 438087051 65592582 975014271 895424028 11792257 97476288 712201932 581669401 109133184 589124169 884175711 838391738 870231595 803925206 169488796 334902644 606919759 960683149 982473363 292930568 897775243 405922061 144982908 717648066 306072001 956357595 528776132 993045802 78589040 816254210 449704711 453014494 752804543 630813152 349873281 360064227 767453904 718893735 466254766 690917745 845799727 894661464 137014932 991250309 28786608 34284658 184153017 735696028 169790400 226706768 170865891 70906229 32633385 30333524 11924733 522728652 6684064 26595340 782669769 410773430 429301243 234502597 980340137 172085752 375048194 574335445 513039349 649036302 261152660 324507355 802195131 922681133 592411996 446575505 874990858 493231859 361241503 798385487 250675987 335920070 646009982 255030611 247436303 230595650 649578198 287881024 105068108 630679527 436355353 313631386 103004919 697369742 137822267 527459976 959890408 274366764 168917020 835651247 469658829 87650099 410588145 553943259 431901444 468610187 853090095 613555413 173433840 808618151 883976936 341100339 333655617 260200618 213496591 290755241 118716773 531154689 454279258 674865405 364840004 454513014 143789272 33601788 147775968 696815906 41564227 576459711 606698397 668183475 130173233 985342604 865470294 725550464 389546838 860084031 133664235 65992825 887971050 62040253 504959253 66906381 941813180 226603580 737648021 305172582 124988830 849150892 160618430 510541327 634891720 847554234 933169613 876890224 215039902 389888994 73016155 305550527 67128832 674987411 807866906 747528945 73768920 637137603 658973691 520363496 964849953 294013840 805411055 222959682 834254474 776105086 443496518 122227765 942142298 681271163 681984301 985899257 934128700 952830449 429608310 490555758 405806835 485290633 119451760 484544181 408853499 31361526 277752460 139446832 945672508 982807414 182304582 160687817 109103930 7435710 367947077 516927973 893657508 986350078 26042428 882402983 38585667 617166214 21880730 350170263 276644313 798392233 243492091 258252917 86177440 248506306 416130520 266699619 345622932 748882895 979958458 678507061 211708313 777864262 135631399 704669568 914095603 306073260 263313011 86971830 193807313 903333943 860917056 344556019 11121261 568698554 726096349 789333505 34594996 44696791 52869693 647532440 428218754 115919982 295253832 813725922 139895274 557777760 375536054 315907324 221899033 180979349 435714912 913188047 286318918 377628557 637836827 710020158 867526345 385097626 851945184 222027911 604340476 761191812 32839615 968003569 181260480 165732901 177345175 85373680 396241383 270069803 689878366 519007167 930418454 964237961 380354120 701128963 487319561 417465894 53998960 219394592 186071127 800064912 584448778 884884224 656189934 573853751 456497489 329618070 853587469 283496068 964741606 501001987 84367939 459894648 200017770 843188242 306331218 853915820 981701084 557264857 489810170 940910793 595631736 736295842 658453411 449321612 581663782 920572612 635309273 183521092 710514663 685865875 488213977 250130899 634393848 881753413 370352404 110960649 265584113 497050439 473723525 385192824 873474372 56793663 711913291 755519761 33483647 410458558 986486356 216008059 235575822 244421438 289990561 142125091 742884742 102319801 267212622 542351753 538190351 326168661 888508688 723722097 478874644 421694344 224174354 308940139 220894041 654084108 600324391 257362375 444155226 342816282 455299594 493251994 237407161 35044498 134871485 403531248 654745684 517774100 41698968 826843085 450263545 862652584 957110639 200454983 89591572 842420667 487825836 993901923 56709315 118877750 856884953 991313667 868704376 729648126 308937249 337318818 524279410 870480368 770346170 544707144 748106517 369174848 311533003 674970754 350413485 607826070 843575484 694580087 606436757 784460833 184934987 854411569 784823181 522611315 745039260 681303783 407582168 184951013 380709907 409587656 271620874 500367339 290604378 418083606 796107828 75216932 670638989 741749238 139590248 416392699 723766597 138284937 501314146 573975432 540341087 471153931 425149267 889762182 803312934 834851772 288249440 111984388 898257005 393271889 3727310 830592349 445127416 31167785 837978666 871776000 733716051 735992887 596769249 889087575 214319042 479114360 416035577 745454603 712282526 575122666 305348073 583292237 691604663 285957724 926744471 284414498 362104983 999360044 476229607 988982973 666324917 422201674 504006101 757844406 332893188 577285544 198093618 257032097 183215160 303218298 101980736 471853322 435380642 667649397 332630897 127249389 863628588 21117186 673889700 180003170 8092011 446663565 39838865 947798568 841496291 209526524 29117443 119643440 997252636 494957629 240459874 370127001 432279205 738457972 247994845 200979840 673238589 411137769 991725548 324899625 38787400 532271294 872209705 149887663 319049188 783014110 309653916 56610518 21606505 495401984 280495005 274851804 74159572 897140920 988226789 86045627 799376002 484235852 349142792 27216958 874204318 870560633 4579072 540902291 959891039 557790350 731079225 809801038 253156107 573238305 572178400 719592245 699377703 183597684 10998895 500419469 491357931 711914649 204682120 70776149 835960647 645921626 195181315 266932579 880275990 386624543 5265736 66017773 267397906 907318693 662562676 315126590 321224203 800895392 382436232 254317938 32355479 853733074 79441053 237864896 736357055 801265296 103270999 242927066 894748604 542308755 232501885 26166829 958771041 77693260 935902656 727799407 772999094 184043536 342150288 968453640 385726490 812751116 795038886 746743954 149516159 80192203 466925577 568044659 811631931 835356140 419505537 568044533 653187722 906724137 711090804 382219501 531872572 298513256 433679504 485014601 466918725 733002328 773418769 294586544 140586110 439110858 849756181 579253763 457612754 878224949 130372163 342563476 285972402 724473580 102703511 54401729 418249306 733192035 381006927 988289284 93224594 86319195 872404172 839723179 369356695 629019497 283453787 405828337 781052401 892992293 71878648 446468559 190683255 298355007 737766619 979097177 417639268 835938145 793412190 220403935 23794027 813612760 419247524 922659573 248824934 761591944 251741885 645452930 613060113 243476742 414899369 528751964 184644945 295574534 857218098 951779304 700419029 833454279 548920160 479231286 335014306 882701226 724204042 256403376 751816613 979234450 509452923 609326267 59579246 611106801 633912522 810798384 539447673 467754581 789209103 221244556 656923670 915078186 824958323 546689159 7193519 46903666 931862976 376465716 574229150 684313615 87070951 320695876 853974119 143185276 611362592 756844913 41264875 387205439 947321118 255064694 562938181 633931248 36478152 755388094 105354246 730759093 293380652 285210688 371325253 403989262 553959056 283431659 889582695 509966123 229235076 883110315 838594175 308297507 388597225 689431433 736883812 701319992 350369873 624620255 329560947 215231388 703402614 459714686 232799864 631383576 519930882 537515616 621962122 69529632 410317328 667687497 475009906 873409772 304979658 952967286 448162369 544771057 302312811 943888278 503291093 806767551 150536293 960223425 564337512 1544445 79956017 370498584 729034941 739211909 564302087 203604131 629458419 746215556 387494892 446404578 166637582 964772049 178657019 597793609 784152460 499815504 205104408 129415880 214117652 81777435 327612700 653907024 860915665 869714879 367077271 204675425 246096773 358064636 427595393 982583518 3954164 155831109 285081910 725907915 719469173 666400858 551799597 815166951 761448253 788181235 323855928 511981338 361006649 749210520 68035303 384247680 763176010 363134522 748082358 101009766 52904133 372906819 33662749 444398878 415761042 629255740 233601005 824424623 924944148 300542984 870860514 509794990 450806336 96960743 417983401 243375295 695177713 45224046 26513150 536877319 829410878 95877134 942181637 364766352 439290065 691800819 794190078 612365110 956729169 867441688 979296351 157475074 885078967 606232210 932172977 643309686 967319950 733762515 132185062 60118839 668901317 356952018 16429033 109858037 525551230 403279619 440228296 739435079 536008210 677867163 586460563 660288210 214067617 626194431 973821904 897814922 333467732 966951823 72888363 667292876 714149974 352421657 916328782 96482788 608418850 573190922 570200881 176930640 617025578 635415627 829645163 924487630 634824109 483221642 451961025 543927976 715778381 534236538 565092688 50382407 397133249 73791777 693894370 989619588 1902952 775459696 515368052 529158032 672322757 849411975 608453489 995399621 411339834 576385505 647286125 232638527 903668912 469185501 74995588 376101666 442450369 238281196 374086676 941300692 409406645 31644674 759369011 857232087 137197036 809131324 656290133 814771921 927208506 925780757 503496766 689569686 654255782 390071450 400056923 132641982 758439292 895978898 598764492 339030423 944368688 386870945 587708203 452458104 889699761 452927342 580893501 348642912 405359648 374326466 282116454 790457913 585331468 319258272 527568590 42868546 543455213 980692512 650665949 95385864 508238121 66166323 703875466 114267487 514976923 975836513 634157712 285894122 518838426 928932602 485107433 173289530 555101792 394782423 912028617 937349618 243951640 828086333 895931358 403228173 477140352 667370017 657320344 67486084 191276683 450386725 299822931 948650955 566818276 185869259 478338364 632366107 984480614 929362851 695707748 428639325 654283229 787793380 215255931 556246079 519242073 540217384 512608182 549376821 163582826 479086372 58875804 979055115 811919127 975885426 509790409 320682453 381401276 645607288 538697068 499916420 226568718 193954364 162012201 387787146 36467898 450434844 512446235 215887309 423726225 70072923 880567778 401450050 160183040 573598180 269469805 237048565 656104451 922510868 737784986 628724717 673151871 415278956 185807125 647199292 58925461 901143351 656059114 44866108 557728165 839960198 185040710 578170524 805108231 95889339 220699495 893811128 246685643 247908691 632344896 229601493 113213547 924990584 719317797 431628749 207871817 128395279 54258130 186263158 387559599 346352484 280952926 69242133 464050565 38086943 135482184 217487820 495083347 53974214 398912547 373375466 637273247 463715157 616756384 555254277 538561861 351781795 891326659 351770697 418658206 437498947 802416198 511660296 717008085 31836945 278636691 755578475 346502856 771644114 131547971 799094 799155394 290382959 600335615 702957680 103950774 704933640 830280609 457147211 477921549 912644670 354735467 473212536 282074551 8531239 504141495 303185324 629029721 187201519 675902239 527617865 760383671 809511892 15511506 926116113 382813850 491892988 146808055 313183066 711637626 86062107 164071519 468313295 428938802 503752644 707655194 650118401 975304979 108239075 855914948 891449507 466362588 72735819 824022487 627370608 121066124 993052387 538669893 602999521 902288035 619461150 405524965 81505314 661917617 354173109 457041586 39872029 871846932 119157828 206241859 737981675 473238542 504894896 950122000 791902430 664520072 311575432 258623287 406926567 220725927 79525582 934783697 974025840 491567588 857505379 361540129 431811424 267376640 269054597 671222239 711317440 568674874 823518041 694696242 968566077 266478719 222660208 862688168 2111299 628381047 603711062 912752422 605736000 1995371 350481272 643468564 203124994 458617752 290093762 984311472 425137241 407603070 144016732 39402468 321711154 687685731 969479162 640764713 578865238 839167880 101388312 847763224 571615574 376085654 728735663 990913430 424253411 458320693 401334673 425244172 617800075 789868250 706994964 400313410 74655705 312663271 311080018 203283925 781282689 983372552 83783458 344071814 573046013 689714261 352247909 31210403 128115051 675105971 579852860 153106723 552769697 997893737 533790331 505724768 975382163 693331161 296740766 665040850 42648193 756761760 372700985 335946007 812848311 662346745 337583709 764990545 105557499 170724465 917005265 779512641 831591514 235448970 886685366 879075265 185268290 255158559 954418107 451980633 16357674 874071286 556053913 247563138 513752240 851699114 640260878 60388292 515235568 594158854 417806800 539491091 771136444 414048406 638177463 170804989 656354073 744074221 709651104 763834342 204127639 46925629 432173469 619439674 602877646 317549783 453795134 458918348 717108827 188797488 121557111 609506573 974052521 326403962 510097486 972544920 652477761 880470674 245055958 461384229 962763731 830167497 603431227 532167724 53007993 471058482 244858560 542834610 139378848 712586580 768688915 126769387 802754640 30557779 736101046 604971265 744032190 15109511 134611815 557329473 674588146 62790966 804401199 553084700 619859319 308741870 159441999 710118653 130015988 959440185 957380797 831438463 636362693 172529710 90093109 336559190 923719519 947441003 73886315 229777552 865410095 475836271 73654423 891094018 259589872 576619489 325894729 818112270 828325270 442201975 479116966 397190121 388564934 34341115 965308076 440655525 124954221 494451813 762136861 105427169 417873359 198503833 2277159 920834754 700792396 53124849 62100276 61026782 591063623 795733738 371415795 716341144 432583760 99586298 121554828 54912400 333559470 930747703 45885037 327090393 468769562 129884688 603556577 369295860 129286363 652460251 221352107 274300891 714885241 889789669 469243506 466080201 422484305 330218636 914225576 691630945 866796961 984996796 570371432 176360833 388828750 989917512 516026153 694723743 857136108 927522737 667165211 487153008 132618083 419740029 979173247 848736124 644369686 865939777 717684934 909915238 718836842 868121565 933184561 263181791 217339915 812193004 681247889 170614616 945447562 765805390 686273618 310797542 662703905 926715070 635982040 772056691 918946271 457163285 366065341 938631954 845182851 577622942 863089040 258528417 804992837 457534070 265309558 497792500 538713977 123406431 168074259 375740138 701573324 85639137 391487901 365202303 928393807 724404126 165178960 334895786 918009270 176526859 218574507 614681066 268241238 864054687 878633877 739625052 843928337 557353177 883554879 85261678 957566571 477439795 109745993 925256312 768891756 969474948 166151346 48115693 862020723 66678376 214201937 64499382 730129378 873196604 837313420 916958119 680786976 534783409 563385331 700520594 962884788 365166837 431604099 572324359 53147399 188321465 361596511 277259722 927881046 747816840 919556561 205010398 960371087 823203871 213627994 919232434 532358472 572605909 681301655 336662222 334646337 288967817 666349469 20483312 353741655 507259151 325611662 213118110 314071266 584699672 556777673 674018170 232640573 243961126 138277518 616184696 751627987 729594669 68715842 529337295 865305181 427245540 96230056 454395903 902175754 658918332 251251231 846167364 508712076 392708901 867437361 865329177 78105794 117573344 855071481 262983128 376748967 526055102 985103955 647120611 433955285 658079367 253852531 201288705 588955584 425073499 36961706 437235850 725097098 559081942 196235463 331070382 834211875 456922255 965450569 378306276 814518937 292102024 575499602 133460718 430539561 230179394 997106744 435617442 748631689 600638832 812905337 56862712 93347046 901188543 707049972 885144304 951425884 102090617 915912729 84027529 380886842 299660619 358502123 942435252 297856117 510711023 698779395 386683460 34159210 977582337 157877146 471094162 333414540 482876184 379503134 798519657 234561448 528979542 422319880 773745587 435162684 153060979 289964078 389841326 453157426 830654802 377162692 94849210 529381892 555689308 668563464 848606023 430749053 812871893 600630883 234349951 867019305 707164499 405959013 272670507 234713153 663181311 528057723 432702828 330389709 339198726 3055030 447033768 784104143 63924980 451891543 128047042 304101915 202156986 152329664 197393081 373814275 154613526 951619295 473528016 254597679 771132684 273508230 164532787 849194637 137052124 253728701 752696101 160812084 274853309 448602928 329889616 286430735 523339766 308152164 250269233 349477461 649457233 869741046 879619942 993499457 83949255 653053592 617312235 220985250 658809243 918154719 747302019 248076081 913553177 818038435 440484179 375121025 65753677 434182648 243152833 689311587 451847688 792934276 290779377 509267100 243202447 486258879 445454100 654905207 992560921 372338586 408126162 160422304 2341595 788250216 233151955 7197889 718839112 134208553 211649341 860738517 927074493 487837527 482452744 11800464 800426987 267592362 137226675 847800912 986879006 300088092 997955914 724889038 842950697 662059062 372337028 383525609 444148370 474063257 470921979 609276930 473167946 746071579 426046227 789810604 797416301 516704860 315711720 674117258 813567432 819037012 674512575 61883462 854368133 685230100 663538331 641718202 28200533 49817564 573724177 347379020 76766321 187597251 904147982 846362298 468996922 745187843 728850559 335203355 480398892 517443631 648651904 645835139 148652934 252597365 285476041 299817718 194913124 815127956 544776040 316718740 528410308 977642978 465279283 711253464 934906741 319143343 363311964 94797304 505215931 208668368 732950160 344287374 804984604 38163827 149621874 392198536 327467890 829633119 795689049 254237288 924552614 739670610 361774405 588935710 951095419 501251639 677467670 184183015 780077706 553132206 646560920 269646791 390415191 464298387 382107790 955144791 591674132 973398480 483448958 990089364 937590389 484963413 333673507 445070019 886471432 184800442 858921834 360317916 98213354 575194223 604593572 515625604 955577071 929637787 146279240 217294167 401113176 161175348 530498306 708483432 752947720 251188075 755430378 432573130 413575193 926116184 510186843 194475697 439528618 155925353 817321016 340719457 377249 945516670 13738851 212479410 315047296 289779530 400358117 997632107 845062103 553533669 570133074 495427294 774160207 552468306 371560871 23812237 391660007 322863483 483943242 859228606 596902602 119338664 444570936 490595704 629788428 26379044 860390299 333203740 654762189 609774233 513738126 33041247 771294723 224361860 770836475 985389288 778375471 664231366 168169769 910331494 145425659 253799157 82566764 362870162 843538884 129380931 109902689 164794722 589954550 430338064 789598076 375654528 208776989 100357620 968906709 513206605 287767553 519918794 860885646 768830132 316943009 964555576 988261813 351252724 612025945 966907997 900719039 251108024 382544828 874063200 612867471 892506008 630235460 463091142 921049044 835432689 143176725 516210488 254141326 611194356 691459778 730741634 600176199 910367817 881024852 438733863 784122973 409993589 830427415 52415522 166771794 718649137 321833677 240382037 801215603 442587100 71677859 822772015 83339462 511867009 611291947 612225823 797403215 534542451 108891816 825656531 122812071 132625683 3730357 213848152 120591746 788897189 56662800 160386309 719370002 227495907 403876356 433516943 259311404 473723029 375249252 544708487 842304526 952551183 22855747 103658598 785681905 298569483 224270624 696552530 326173969 611461647 621419822 825593094 948473547 572705725 385972854 858511616 14261857 178405612 596481398 559168770 769402806 988571855 550334213 347015825 705824455 63709310 347124021 550660835 758423233 177584228 115697971 185477019 355509759 410036391 485099209 536929539 110036384 698795801 346654967 661927233 699507693 605491311 838078482 76029162 90972896 883876323 920684662 718461512 959956396 319202106 721727188 786627787 233779816 337285128 289202867 247462796 627401469 265803911 599849993 508102633 30442184 8584930 49978125 889208533 280917812 388303879 260532243 287598772 410147983 736451707 366444997 479888937 842187318 83797193 965005632 62917628 710191793 596049239 256326897 632443236 744102435 15131942 662154266 993647043 826827483 927348098 148981882 988237125 299350296 795681086 730947446 770666770 456291028 56969894 544124820 183062588 625506846 514800468 991959812 215756112 69048512 849684636 461651892 623286360 47307361 570972110 602177778 726527525 118356327 677660782 813488180 226523155 421119123 742550456 354241100 386284029 449056131 806578836 475228958 812114760 946295849 378677766 565662321 556408459 822016518 803944051 604570350 618714975 610623943 465128260 985542164 719623941 58368535 719922077 660529297 905955154 671060229 719284450 694072869 185262621 393598117 877104384 724922372 320633131 438530373 878647308 711361705 322901343 277785062 627657383 595478696 840442438 804350582 586830220 163102721 506732356 3266351 992094168 395111177 889446207 435047386 824698374 681459766 843849577 886225199 363811520 708669311 387505821 591673449 501813813 258216384 14241841 797752199 261702147 684177370 73044065 755442376 64870154 251377720 366454151 217251900 177516157 852123616 383667931 589269455 17925548 531604032 223005852 521790482 35178143 310958286 611005220 882144885 88093194 230634961 373170189 646483865 372178374 276977998 646919569 811641508 327542877 459741446 7334133 507049668 406064016 282812846 475480021 467325845 409309791 710054592 374283584 910939823 930243923 635506877 118364939 440104610 248799975 804303007 457186547 340813048 95920841 818628030 571991526 110440852 428444073 965425081 802333380 832449126 112409300 483448819 715744378 27558064 8048364 229491523 123957133 297829441 368629742 412149155 428617577 569861508 361774748 663998911 914345683 458697614 96985008 587334809 655916164 465643994 872238814 737819257 76696488 785023595 7454296 926545284 247708200 666185316 987106129 174804017 683232008 243523309 815497545 529399090 526453712 269162245 992797340 942479313 15809472 327586165 566865225 581386385 937577918 758485205 239100298 600715523 64692230 475190835 740821286 781055667 346287247 600021338 233139537 744774637 237305690 571703145 576655074 522141258 695460428 730562117 375573659 330443319 696410277 186140826 55198028 520865442 278981674 759483416 469583416 169283107 52404674 908275098 66967306 379921150 118451998 17470528 81124364 338402039 46383337 383443833 536810407 169884196 924993507 48020841 839114279 199092949 259961673 937638002 77323525 427736501 875026710 643457165 85359381 175508154 99332487 762535519 138926039 699429596 128615603 779428994 55560823 654127705 147425499 776160682 284297258 339276299 536395757 110994008 531080129 77358829 690734930 592592191 282968996 149289222 312219142 440760765 672623290 671662161 545520147 600820052 834524238 184970168 507142946 998302474 879014863 540644813 327707400 560475661 199668994 669024501 146668973 638824197 492721507 70935501 124897475 113513205 162190602 427097680 691646464 807373106 991645545 110547674 888610600 533271917 623496428 382952082 928002218 823905605 615090057 96810733 917524947 524322235 892528146 179657223 283078669 760885307 711660694 492441404 103568924 107936274 75685781 115109190 792593517 504185384 923757467 333640742 15724966 855723418 826266667 338247950 182403510 375237712 444768052 713779701 946774122 978878165 458172513 936993267 422379667 859925197 911398928 104872440 536515317 651102593 295751201 389403245 391790949 788221829 568886796 283160591 892642621 912783239 927610248 607896888 943174737 963897547 214286901 314522989 197871613 938540708 588475554 670562392 218349751 982982577 363553645 436419394 221253615 85157582 767166782 405101297 649481058 853121355 833544124 626684686 159839273 590047659 101567464 775472341 429427023 955800739 97970032 301135589 271030789 733373288 519329893 417980868 115800670 376948035 643888281 708093069 2279468 642002183 301334094 174445343 493671312 913484133 20892247 263717738 699687171 190506647 647185215 554410286 508116991 20861166 758335619 32319957 199015585 166704186 781452207 436264214 710246153 649403504 662458153 753040608 124877737 267837432 525706285 780434830 852741005 613318483 674754789 638983150 626604759 579969604 399238856 251098297 64068843 645763546 382699663 216447722 694803313 450604905 412599708 86687332 929837061 892306171 268166983 602290491 523357797 80914381 238449737 289494639 466434811 210588950 862944006 337966671 232835331 102208663 30588965 609304828 169957353 669729249 638525244 603213195 547755237 260290510 395756799 82815065 35705006 83667742 909574943 665150067 818184929 896414554 323114895 279555348 521344 173331802 888081619 62380938 56463949 780923074 341610160 810500802 532279489 805544199 439285320 773096554 60769158 962134963 848500061 60880089 881717642 299587946 458814611 777813747 39524727 710393670 159337693 881914929 382550996 904543173 717504629 579368040 922593102 916449518 647631566 185250861 985704414 215133928 11777750 280394548 335228565 936037482 114440303 811775943 433086913 327210183 837502846 674703191 201169379 466722063 81861340 391239650 298249748 361723180 56590247 514309346 506395236 221974102 438561348 237269850 243012563 216629362 204305691 528730367 545912756 877656195 650517895 917214833 317970003 694624395 970004841 322397803 120748161 578648249 98357377 282408624 475219118 121981047 328683763 890894406 57413499 302865951 415625408 514868439 282893597 94797883 667743317 537897924 218306704 602885998 534402822 663762818 678063393 944547144 459173132 623706128 392604238 13093210 60431965 434130303 92456741 465146399 574008159 660214365 510001767 866750189 292748120 300911032 208264614 475754771 654163488 953447210 720747634 172025841 121382643 793229720 627282509 673868806 446078147 897123560 911018255 622657299 78497998 722370372 847666681 205689115 810839257 36744902 805605538 521400203 996928272 706760351 91518876 66790094 207198859 905649001 247134409 294937516 227658315 520477803 879014945 9753968 24676220 143541817 944861836 75000065 75220630 311926495 555375170 817033188 25495676 623928144 263628280 89168177 493859651 647904615 257257596 271678255 177004973 948137979 357775673 459583888 803673306 294160000 242965953 411202996 18649445 676890303 913872879 471340374 595372028 44548280 529694371 982052618 548853123 54490921 783789047 959980182 596377710 47659406 831626273 585245531 602022425 665128598 115923684 215881963 367280754 874958003 12900098 811013146 50521060 357471049 540480556 123941509 34265208 727649383 469509106 950362787 714690245 548966674 940735604 503382917 664192348 981039535 46074165 572501888 426206232 850403911 109387922 264576533 271269048 905402655 39025390 630157286 417710276 127296805 402089324 841126743 39112874 660539033 454561143 583515869 106972291 623623169 959386732 301653910 594832429 450967136 764891903 431265073 766369067 796164848 761085535 401468882 126252669 535043836 177870209 664199640 836047317 668145668 908602138 347640309 944052771 27965020 668620503 777249989 363625839 383451271 110355998 906221251 994316596 172898213 476010372 825580358 333461823 313485488 722973637 711825285 660427601 987108356 753024071 193306939 639069678 719968162 785073978 68186878 926469171 470334048 803089347 132167823 259534112 732946088 971926311 690197879 757791248 944512345 826720978 476366198 7109301 267581787 202294111 582480442 940588985 3268772 134820649 515907765 723788450 598905505 75897762 980756069 98629294 179003176 422569548 710973982 511170800 774487085 411090352 172629264 441682267 105610091 215889270 178393678 364386027 363806079 51841941 741993000 582136062 999429822 24347493 108522454 135099064 863100133 365990658 537340659 204068747 175957384 608326262 517045940 319637866 100751072 424014996 115114247 662707650 235698705 69092200 356722677 75403634 13698754 322178312 111640857 821711587 969386124 59143118 25917819 511002700 886867409 343909173 306945055 488279948 740378374 529803004 956949029 343820179 185713819 741057941 812521839 572161139 918689293 891216588 937575814 730997066 461069078 193286308 684582406 959036785 650565315 435054558 906852953 538513955 687059239 880045927 395337151 361427641 883830129 533564122 585657190 42590383 571392926 175472582 417196261 595593254 328961416 439125746 928623024 706093177 870742869 3592312 292843938 408691599 161048110 327464678 891090458 57141163 136342611 103643455 248905109 234398165 980919444 416660977 470295524 910968712 249172656 80390579 318492053 796134444 491040351 367536247 302405733 639367916 851616321 422010076 690613325 182634388 481901351 42624410 405555272 374986701 800560155 515664086 110032440 196657061 700922160 870350511 747938076 379542802 356892976 548403467 333161789 864353402 687043066 365529999 565771936 716305564 98006562 352319830 456499487 834863234 340636460 989424377 79810176 138511381 765515386 956304790 62683102 96215864 277807548 439141800 413654896 518588629 100839678 165664251 535112813 303430482 233214128 314315967 783306093 383236944 966260786 324775287 145126681 914554520 745901527 528075226 834349846 668082809 179150385 887378850 732862351 41034950 347513371 944284830 951607851 925626123 222785702 470204668 424565782 4566297 291734624 791695027 446059624 836065584 919909498 259641553 271772624 989010962 363923242 855061695 97633966 688508226 564680296 262117617 251371268 486513634 984098160 319672683 102187291 886196937 55812565 116047407 183067994 130451392 96116038 545215162 245684787 961613988 848573005 878122013 474743391 475517845 480685665 218510931 355228594 676506368 706003087 574101509 648378030 166121955 970636673 473314666 375140671 200562124 155078713 610902753 109648734 873502541 377526139 602368054 88884816 633497280 854170215 612737695 35138215 990329479 376025355 359490454 481306634 662494417 952276423 36755974 615677390 77304042 451464165 468069345 264317376 527476482 590511062 919793065 118710047 68273341 516685317 817397337 61938760 606665697 489241781 841957535 980298975 228343096 674635657 530783097 157066916 158852614 770936673 535476847 745649942 406456518 113433576 652538949 777788782 899218275 744531801 849421658 178256549 460950394 729189242 160087615 159648753 466094895 997014289 134391302 393864737 161320634 175881064 149424789 129668157 67361552 363863981 201332145 330022303 60849610 724042355 300004608 752820292 185374033 571831284 734047600 831893447 67357116 58642809 712404707 539274984 904993937 900604256 718761902 724316810 982032591 586674007 603618568 649723572 273434447 61350068 314953919 86044181 889810714 276186477 453415400 396213343 823600395 570161319 735082584 558308986 458287768 185387625 986384524 330941307 559196599 366609244 765189615 510888656 61675587 491547338 110102502 361066026 16496706 224251373 631977691 593109871 852492887 68780329 886122446 972863255 775606811 646055938 206705153 499365441 469239768 862022474 229575406 768376761 810122925 69717089 931732587 14421195 472373626 73179093 572652217 325192516 111404747 208665310 858137011 435092349 983928373 52186813 732864759 742354921 692089883 639376717 821365679 596144509 683663071 573857003 262400764 709645138 174846520 18588678 490925662 665521421 678071362 101123542 39979980 715411750 382345235 391877704 240539670 889727508 90889182 135869167 774298831 511120537 532807039 916187571 261601450 755444079 376001474 165225488 188002728 702243020 216671289 614810711 139861158 476062046 684204771 890703970 516265036 279345644 509897215 796793919 191931973 521381575 898837749 916271202 644400598 114691574 219601690 191707293 999135122 640095548 749117132 248234505 848005941 423644040 230755252 929913985 918997107 525291619 519740049 930170139 62146526 234322384 207791832 847032656 818478183 80065696 576834963 651851326 404452439 279124669 319329002 327503122 52559497 317903727 481896986 690868082 845156561 923307054 785471189 845448234 454131494 302256096 545616890 605479089 708794018 724074774 462523540 276889278 400703603 823101616 325777305 771842392 655984906 318793112 389476238 583366104 449531067 266579074 486883199 743322917 570963083 385879435 843771875 816075512 706290993 738521630 256264398 569792783 839174414 669555151 843325134 105378340 136545642 796442879 338939201 456704914 858203964 466244545 564926894 55422109 878461427 465316523 406675606 113913016 133513476 768915591 495345981 111319091 422053798 50718963 864123436 541231709 93012765 110149025 421770779 225955439 877525142 768025877 994955195 349046280 174186018 55110832 608173783 722776396 74884841 754407597 622310939 621938931 201823540 532048857 387322327 780950800 579046834 755814300 445698142 434784936 31232964 883869253 908243202 224382638 941836003 464829898 596872776 359261012 40286636 135990235 212979418 224141997 894796240 161352157 916478283 854438864 432118146 284842016 289719215 130735917 231137711 499135846 560684982 746112545 751475807 680890262 254216627 350491693 417124460 899143323 997353245 411309246 821666005 940121230 862975666 808725151 535816553 994269489 307074244 785490616 154185605 332583357 533899018 2011145 89107472 119531960 938178177 301869847 305043413 558989621 520973442 868614411 653744025 531770926 261526235 640874120 332302164 875681765 812987687 153202327 52821013 713167621 801184244 209970788 680708225 259005256 441024280 96538622 961676143 115470710 155915629 997035937 928040405 361570317 641188431 962632488 173405367 573505346 413031366 132203856 642962935 490124064 675318279 94767194 908930902 221468777 226581657 345186697 921009298 589088267 212724304 785986429 847050172 457021937 873077919 708436247 184890271 43864456 261637127 455424290 790062970 547203333 774519186 313106203 153064332 790245974 611213560 883134212 203342648 496130166 714318403 324975024 566571726 106976230 101290089 752392243 441508363 960540038 429284493 52420346 348297496 978068960 62842489 980436341 555144783 350375173 652246229 173983056 912823934 323194478 374951477 637535685 688339428 447996568 304863037 979825332 795424488 408132113 744972019 513975153 836999842 656176560 788347952 353467719 67709901 372979478 486215165 400504974 438641442 586391108 886277158 479429798 263405055 194773496 478180030 133010964 318996238 732715633 890295095 393223040 474245918 741662352 676767645 490229040 578326596 556505525 348666417 220948649 472768735 672402081 213243149 418837443 921945592 607863888 628685484 641475447 421750090 277242151 413466760 619768561 472100414 795270611 656531810 535945545 768013984 418029691 834921538 923949856 987435713 112884319 65668420 681861492 424626798 540064087 774165999 988974299 458727087 287348351 12965798 239367404 115516470 249996297 783984974 53389769 423628088 988214298 224978543 144679038 834624152 159707801 698143896 59249196 210120319 20399805 744203414 942494834 638947241 297984921 737409362 967204016 891689906 577655114 539727587 369504412 465197896 563027160 257226118 795641349 591729275 342105995 527669961 41832394 69683056 343294029 628254684 42750436 205817174 594634366 903440205 189965977 135762105 659524581 96692562 677244595 115084587 766983808 587002548 641188365 219324099 591041030 206956133 180055057 709572939 402794510 210729372 307076136 679580931 358720970 108454457 74727399 614839543 956620359 631324185 223774843 195740996 204723910 822515659 642811042 733002675 571373691 50132825 444051918 798369793 192118047 849958685 593754305 910320953 666008017 460938341 723024349 941330994 863100140 298706569 125017660 402615732 489146783 978836938 904746692 738921221 601279479 94256357 563745720 478643151 738438729 511589185 232503602 943939378 342231272 739386227 3735340 878793079 316575015 783233258 849702599 15379811 620788800 217594897 999978047 439910290 191358170 991513369 529743718 876737244 782956751 244326088 111544861 337507567 873011378 699719766 35450641 59782087 904882019 202320290 835881318 480804402 56263481 417449983 860810310 564060015 490529593 711168733 940214415 568197561 986973777 450323500 432681736 221619052 600491629 762960676 996821819 762231581 193107969 324067188 838835432 599853959 175944240 935117381 519734979 578760642 788977127 497200486 602632715 898834670 531805575 235329540 333565212 92932534 882502823 45671559 515272908 618307307 139040115 711362442 780245381 309704488 409151378 42503087 675994927 920916269 959120591 440649234 232251026 603456907 789401985 777122773 643370978 480348517 368133806 774396463 823753246 286471820 847614726 154876804 260145912 400308933 266621907 783299217 931203716 694959866 178065756 296514010 317990916 375136700 613586689 791747931 245829959 187512545 930460461 811884180 423740133 687760807 428079910 876732925 168960705 668231622 176515035 427901782 143176308 164094631 852737636 105627429 270170751 119430571 905380743 433423054 932970048 326290416 759856766 158379160 184533179 775258641 287581368 295795135 103195318 705156547 945426612 31813864 642844400 209536919 606146770 81805161 683612539 547078719 37533252 682283231 158847475 655598934 875818707 138921945 381611644 289564862 514554989 511226812 178157831 619368104 214805093 24190144 173619945 427095111 291743618 790768985 529859370 375158193 85111479 925064073 177892616 649719421 916131007 666909894 285548702 760512688 718492667 279045892 936753 759659436 662902308 590561462 513066653 195977545 736770928 917519235 568976744 659749196 586687929 591099015 949604774 364770365 109871153 378158026 899547611 659915289 954660811 246939143 528757481 201017085 345644683 355314812 493237575 722234657 438266584 115505519 142645891 37142552 33816361 402950078 399543465 8098516 857686480 208109162 668328659 788802573 147519604 970401827 115391920 815944430 709082433 248379643 322739689 876087562 584464184 664190371 205288199 374670479 177351399 459189421 504881921 409831494 854446113 484432212 714560339 154738958 857977268 753162542 920700015 515616000 685105323 62295253 110433662 302428762 846841345 673350777 293770596 638369262 65397200 601848439 640588917 762792874 567454749 946107379 608693899 797503734 485171031 920459333 275528195 592769601 377090460 550488209 844099724 20929376 907613804 457392890 387632871 816196941 939564742 704491365 673380956 247933672 179720569 106088789 328582961 898149089 732849297 886272090 167391686 324011611 503844544 697426399 887490639 472645959 661068368 39542823 802065104 290043779 402891372 648758738 118516142 372802936 783526943 658620324 133641794 328327901 301224026 541733237 971881604 947420815 711880724 455901398 488781212 491100159 951151489 816581800 125678158 985623591 484894856 393015984 992160697 82825969 581552524 879891225 570328393 606399789 545559164 848768060 296522380 513416631 459775159 832183608 935320171 15251925 455244044 175746425 950585396 570580440 532717202 997699413 633854501 190717478 171904427 933186994 116856241 49572296 794981074 964094763 580172504 981812945 780542243 873713712 37600399 590744634 129138755 564192168 458753148 717785141 891476504 935120510 391922147 152415930 773024489 990315610 627697209 672793174 485709904 189990415 637063905 190769832 342711768 907591431 473363919 771236505 181490093 280182823 923751951 69905350 622880413 751639642 547419130 762580969 391463486 843008334 444244081 650670126 374347788 279728345 212440147 799440161 827790730 713823402 23425781 59985271 333203929 86459190 720470629 549901935 784986998 139719010 876748585 437381184 110223472 894000570 344910245 185526013 816312430 235971842 828628116 512715217 968451283 403795123 955631297 443678266 480853762 91310478 344711185 503367066 313425206 623768772 764370616 441076442 415606006 766330934 790027556 305030836 431679508 80033985 905762344 624051087 847660835 250474405 502189893 891757424 726260986 446811995 825671936 493775627 161480221 411199204 612617893 301956629 915983494 715227511 377499539 805978983 321392839 440755177 573574508 902839784 958747428 882878937 118621912 495304570 774984165 808042336 742885401 874248206 119525974 525782627 149894353 661242295 981880810 456716137 214353954 55007899 541713735 765877944 378020366 980867345 46821938 494748706 597046825 621670921 546181170 12816919 59141198 694355620 95001876 246573931 391883047 851253805 714850535 203476048 581736646 949224 742729873 489899273 418503573 29769652 496142415 646220379 726421499 38338914 409070659 645371965 588028567 723099770 236744368 659307820 165597287 821417872 143024534 944776856 957950252 554064893 524280456 658054243 330495515 69664836 380128853 558462235 741291427 521949294 727193994 618666296 943073243 894547073 59782370 738447705 715108132 227222996 205877142 83207112 202828571 560080878 635572438 876298602 256858489 376153483 257025662 317167181 800657948 611767172 299914673 831447828 997978470 795210057 877557553 719306365 16382001 347505950 297279504 78140986 816218580 432384535 746990154 485810807 175905213 643800886 221930842 4766744 17654058 551210980 159530814 39822718 994523448 996239530 474073312 221325064 144292961 308922137 540078283 670640097 427610836 565742230 269346577 523312795 792695897 431493292 219053355 100059013 778372915 929697935 526121027 979632787 815635713 381113573 769828938 624257878 277132078 608676757 754799280 231279564 120324666 629618554 786369292 363269257 839883289 92014295 397054001 643170607 888606475 844872523 643027784 819953996 64950127 451604704 924181974 935455576 343636537 199578326 299539975 511255579 142839633 44927794 299100424 977718325 100504841 712554158 537017434 844733394 843491276 909709193 378176258 54558327 946128044 547680282 907990925 437903011 603091030 929973088 954316792 479404472 571504825 978766992 989451178 812945089 463253906 464890822 805511930 220526689 532179894 658506028 194430910 194129286 142447157 663239565 971668333 488852320 120781192 604366068 989680694 331685089 897756480 678654937 548462095 449662806 759257429 882492061 584928728 738318358 311611164 452099898 826811956 603270074 810912554 299980355 591723248 907078253 662897080 815861509 664560672 159943710 899807065 30252820 744852597 730868376 800841408 898660689 881700546 96172704 218219711 64756762 755685536 545923920 944440694 28383576 405863413 601163551 78972608 275987310 469557282 432518846 553163970 522113176 322901004 985025253 877273914 187750295 270358122 269728785 488559699 449978106 686983549 638241700 892740790 980864255 150416846 970591105 13226044 541130599 159707320 525892660 949027106 183496828 701547102 698792781 905986378 644170999 40520121 722243370 435319363 810088329 330222616 823654514 614786803 115731663 542174915 669145714 251387540 255906232 813926000 530514851 5805946 36080278 998407965 218345866 572324195 211718482 184299294 614017837 708577474 21105099 602670682 536791004 6872792 133428772 363467686 175768267 225044059 716775537 610683076 45924932 591490778 944527132 537894344 759811180 220899543 387647511 720256379 3883530 335296732 68628542 774365110 822670460 360463429 622570448 432090417 53943999 634119321 129764850 915074168 378979939 924055034 232700667 847292051 840719245 57643442 932681819 314719387 508287940 828167452 234560983 930861773 386019419 664391334 812809992 594498702 237421399 487841986 520700891 954596036 138527813 60930967 54907570 723801032 731479128 364716070 662406161 154210292 59348449 197021107 572984199 456293918 50590675 428088263 207083117 18288033 807568069 509186595 861804012 831985504 972566518 11408436 837837493 543878077 777953440 489149758 690308122 993273220 985816608 583655629 871136766 143412454 912323564 655978003 197249430 202222820 750367004 825284060 240571997 722291035 720283049 858718809 240641975 840688153 840587481 923397826 488732018 579617343 474270686 886096109 253030425 774394105 778106770 703634209 829981505 397058627 357958641 900905177 843793922 78881511 223002241 277210381 716645587 813525454 61871372 289791427 761159540 499042468 423169901 253049361 832061226 986814128 627686581 37930096 266835942 193321314 888614063 960395344 67433770 756331909 350451661 428924254 510862476 572331718 163722676 854463715 796925660 24731952 777905528 759131897 26133495 469745950 792878425 413462450 756252079 537884115 515005375 55494818 726147172 928321456 712633295 173491703 492533246 831399304 357925479 877949884 636785095 730227376 783236309 357339530 799766791 86633354 127808231 915395458 971213479 87829790 162472286 646777950 760881849 882878073 291867231 961511689 552267579 84067432 999298755 89330094 337847127 229350497 856345771 210478610 943921516 702606253 999624645 52997723 684817858 341880818 421317443 118702703 69308861 388208445 487254006 717183220 139306495 470473153 500174918 905437966 916881654 41400365 29462630 198270808 633926159 315845152 290706192 113174968 102835545 691220370 969735656 281315682 455283528 166357764 215766105 637995439 780945368 106569360 446978670 161513916 589777143 182546175 169849132 216975167 469930483 16851251 466395285 22492365 423913670 463004698 185616095 842949094 851415831 489862128 472281391 114599015 579547671 517296560 172405876 684079362 827209748 680071209 179956102 910486475 340300945 143639194 212985396 428296653 843743694 186320913 561139253 398173430 191414143 677619272 390616188 614569556 545893914 215248332 767444087 231028303 11350136 969003022 244600713 232304274 321206663 792303824 507062765 532024200 839032776 934497942 797922223 189450227 59977984 817296013 444436020 55376531 939112849 618090747 818981995 884489897 151275591 352213834 929255663 24886693 877144141 758786599 347737742 135308038 600358435 897717050 487574245 727612045 373185338 439414266 770313119 522987102 981978179 106557414 799814108 99726943 834861141 990181965 209602759 393283151 331701795 808324806 22084516 21622226 57000009 140051587 64831574 969478800 390512705 943268079 693231338 915546245 633798304 664119963 569178217 322160465 668375935 480921467 110629788 979822858 170747275 242851536 413750360 829909027 923220443 810899261 600765455 994040682 592130930 398790682 238950647 221322179 426490151 42146543 666323024 485889960 871711905 850018920 382612178 182758234 549231871 816011597 448042160 736948827 989437774 227145492 547119045 419528426 854896176 490637166 298931305 266182729 367224625 88137469 5510396 749516791 33851552 849062275 196139556 905420495 131815741 957766052 262309842 748330260 622982182 460733365 601747200 76711018 345522507 11062434 812352337 464446516 176248265 421007078 784759437 396064904 581705099 12885189 14032699 83624002 32270505 887244906 317149375 244261828 538468656 128789370 421529042 683107743 783291235 967413201 68494496 933375729 306909983 983545158 34170648 631576281 470917772 299642413 449770297 39369673 365380736 353174975 706426019 412268722 134412486 930369072 479632311 22444485 413704314 759290108 237192148 378718026 183815013 898488543 893536712 831227135 515365204 799830354 168053709 597955452 352271847 874989281 334529531 430384085 265111584 508261416 576148544 93450782 267422847 615897283 209939802 74890867 592536659 357295206 964457327 867799514 897206585 448035969 345590649 706702361 961480104 107871222 395878817 579343285 948498492 123658505 892193373 481183755 146199384 245198345 422594789 880443308 565372993 288196922 255828394 587892750 731847244 310329112 992545780 203040407 694756607 862684872 826322230 935502540 91492605 184486547 226064525 893912558 666134213 501680194 785268949 67300608 351162644 409074092 406161891 908841541 107560295 965113997 934765005 872341780 731653396 20811989 402215765 323183224 616421837 440345884 82075815 229425637 141173398 180118796 239125764 305623491 246241545 657673886 255961305 628016380 995105464 292193176 479015690 683495640 704131123 570317980 744094725 592932621 420774423 531193389 210513154 502788786 733548670 46532462 469260858 673158248 242909005 180888432 72702836 512650426 554599412 587220201 211400141 857908365 757127830 102905996 311925619 728274127 596999964 140124902 533372885 677056818 603267942 934706436 584206074 795052917 931994925 816205033 802440157 859356502 385272570 333965806 17306442 290145384 145765592 219950593 944872144 289168732 185809459 755467706 175763808 765495316 456269248 236060864 868136468 715786204 828355875 708618932 191244998 333793530 983308495 670686258 364194864 923482670 988797719 239841517 615899878 665318809 54872996 322585333 262455718 558164685 231040598 72073907 120250755 689670614 843524628 57614538 105879986 356984104 676358839 956031792 99871351 511523520 54138374 876226677 437932112 99359772 64094060 745099778 518807718 673193984 481058564 593914791 129565779 791819287 312350752 935848546 695639112 61092301 102807270 575840275 866519284 372977693 532391742 928403757 230165746 578665938 687588869 278875556 97951174 67544074 193537430 418629605 828726654 847898922 545144460 111725922 887356917 248823046 635980559 804624151 39860699 816401956 256951752 712078642 420109996 706119778 612382749 925296218 401911136 734453963 13863070 500997803 603518252 887557741 915034891 136997261 856844426 827715908 49209265 48206855 305856754 319022744 945113633 160201114 240363626 9265254 855223756 46554669 145584232 611792205 668906184 847517629 100043033 384537616 555744545 568638376 123282881 698939962 157328519 325597302 590093326 617350579 759953747 653568981 560592308 550498776 794745848 815028666 645031802 979570460 881570747 770667292 505440137 431500447 561246177 794197328 743352889 728567347 940681798 812878076 394487320 793008375 122620409 574043214 69289392 408574528 71648122 778995084 832920219 347256820 51039547 540550816 645073534 891080740 902012934 858504339 70506761 831731866 780716958 473451798 489276864 608671383 832016092 210528799 485103641 581323971 561429966 464082325 54042433 670358254 854445078 542100118 169317240 938070910 434494953 321268813 433288410 144935532 479383769 858233740 964088382 40803806 843116174 623339815 98955075 807628519 817404692 388517823 42886511 634095119 736700653 378794850 915583585 197647729 391324131 69604874 395841299 520433136 706555489 841818037 819248985 395067701 158326716 948478301 791853955 489306771 912780719 10925077 549167847 726778275 768316620 523463142 116509816 226920787 433967185 458968539 911182197 123090548 955473744 902213584 811515774 159978095 589769761 930062382 192511322 700436704 886632338 415261081 699824242 604858751 38045289 264509109 39318225 134963 786586875 990810312 245091121 574158540 351414798 207494940 469490678 398994156 672828722 632454242 876250396 549375450 16472181 320190412 772630654 186471995 751792790 406177878 512147553 654221899 290778709 71336939 265042782 86545731 570598721 654844750 96403886 435765533 256966802 424407768 348821777 498545881 734067039 714653132 399013033 28516093 271816409 176966431 29722017 560912162 780008103 30242318 607857426 1388785 534612858 78353346 823755169 631266461 270504494 967112760 547242959 3752878 239660255 788433927 91677522 825889686 305392926 631462151 719992269 777506670 505467575 574081301 288156415 865827996 726820219 697326073 493861107 508332855 901635382 792558044 285433447 135494626 693011120 362877959 375348281 608267148 145644181 551501995 986185019 49080225 312402168 79338663 345889509 927362600 186673539 116092535 57791098 239219595 721283907 898481795 834937636 424659837 824171759 778846508 187688249 307692598 209867256 959104074 190244806 517612201 240882083 293849521 912932773 648403953 406213824 163563128 98741474 723030858 84136363 512531803 579737558 170464388 577780566 782790360 4206465 621465473 53802031 597364569 21964434 660939160 176951199 188562559 306001566 935106279 34749263 854926468 951002864 164426744 307688009 85748446 762547153 796795478 593796025 796857590 798380937 694100964 209969899 219522265 659569193 469512368 317979391 115574923 543118835 869417710 23359928 338999453 312273849 903754798 241412269 812217346 241445472 899976847 397563790 452854426 592405011 304136620 695422370 718336004 934394766 468847858 300326728 388543543 397879013 885249589 409885846 301106948 222189723 909151146 651493458 344975531 218178846 434537667 177122445 139456832 530428312 349325061 260439340 409206642 758479257 674888073 389987078 863975942 454841424 176157731 526915847 786215955 895381542 407217393 517584485 373845290 481274163 551073720 31666289 948543833 697964520 997552512 662982178 647037459 222145576 756112377 107835221 323980293 895667565 949350808 87862088 210939411 790768252 544013064 717987409 988045465 151036203 771378901 156514452 880421094 812686732 840131586 779469787 798648358 74842887 456961632 819416890 227050854 838470875 43356957 855263715 527315628 185469520 780265834 42678308 454552520 298316113 597975097 833906867 236072909 800871186 100036264 731851541 652076343 236791867 865214967 898192501 858426319 995581885 496708066 349923306 496028287 175915796 861961671 833583231 535406656 12712657 178884687 315758440 644626659 266611493 498819230 636310553 58967207 926091438 764190652 614837726 738431881 698341863 224348785 775442680 970849262 684342177 4288732 831195710 666641731 592226580 198667182 133691155 511707592 964782929 133124229 292300627 504526670 503523442 975534027 100991651 705830637 50552267 296331403 474819720 810205752 233195058 373463627 385208749 104249611 882523554 765604923 155186324 409761177 748640239 898397134 663147835 180355590 836727882 881500216 34863676 698684841 215810133 393421332 271830848 343975272 837911171 306850032 263258720 442723650 579298587 848905308 673155446 483703150 431178321 212748356 215776708 478464716 969850098 174275560 678482502 600288013 614828524 998331309 54883548 960318935 743596072 426383600 829863200 696766437 534922690 459043726 584482450 845403395 147228357 64107423 372233677 391690174 177823563 43693441 160774383 699704728 445157069 537191976 857753298 602335822 952972165 261760053 565106953 669331688 757234758 4116319 517895646 969811538 228991984 437708481 229633416 820951414 723645457 536388336 480379625 401808901 231210430 880686737 187236836 694286341 461321130 601206279 248004424 533525446 515149982 14501002 480057337 473457473 575658351 322039552 572360714 182432361 941767129 965411551 824364963 689533097 423080699 548150328 438200693 732061267 662575913 43102351 62070120 631691036 825338543 404494663 996500255 188251235 298586982 486125835 514855063 634853225 152798084 282244203 559395459 999569123 264355453 908558558 472047946 856797692 674828250 854677152 244884867 191567333 291498252 717583736 189703918 356619960 105681259 738491564 6997637 91511247 711555896 684758553 62477267 308915508 958289460 544705350 834055435 677414520 100149804 954702741 72757072 576044104 674516896 521147730 129473280 42891769 428888346 918578393 191259846 375493492 182457405 673366024 538573315 949125594 491974494 848402585 260290709 629096316 641491955 883685510 208803174 687148288 721385175 729351989 690969048 910958733 947413361 44816523 537652469 447671963 780996069 693069072 915272204 106046326 278388333 772515706 346714913 440314558 56821922 455642759 322947484 732648663 264757368 646076119 290166462 65272259 369906443 187901577 358657193 23827304 177157633 632977606 834014536 641613645 61163375 889458814 87183663 585065486 933556168 484290525 369776656 673676919 636331046 771528197 362423310 402614650 761480289 334094154 180600847 329430294 290873500 638394176 308780831 775087680 684600558 589068550 617015118 982706606 881375961 840569984 739493215 586807247 224428061 741402132 997175529 430687255 957303676 674909171 653382185 847270902 626626587 828587028 805483814 465757165 742595763 602012561 328804273 167808087 41322233 835876629 612168010 105472708 755523391 666887728 644194646 344402721 91798377 894096058 103624741 910977300 350974013 278381972 799102892 44008586 982324101 20538032 129387567 886305499 718858170 39567914 360112365 672861435 572029040 895924667 396352296 734684426 256601199 26338128 943009949 985189906 192773389 973604884 179872557 102193565 620546684 169178242 165736821 440951800 782446198 160498093 642213867 414360230 406873439 502588220 109434772 366287706 788154511 845444985 869826668 28779378 820028402 35830182 250120673 190974491 127927077 228338499 219051594 936479342 239586148 220626385 291233827 659523574 92301373 371120181 478665464 843363977 826910125 529048660 670438359 480768039 17158047 472452179 157934509 742274963 878875563 362738130 498475810 399273484 117661414 496837521 749222990 757101048 56516535 741953633 284047010 138549297 818817855 5321513 923366672 375202983 468453913 464866241 304160274 791107973 878879989 498387861 816750289 308479778 302668070 541077125 609023981 252183636 646666366 413629402 730885255 643607238 116043376 331228103 918376546 244200788 399527008 309214100 390309320 100113469 959817642 68918183 273049268 707290700 45333254 698650040 522309358 477580099 665240853 522144313 12213113 718920545 837801766 192757423 604215369 83580495 593818472 807791124 949442552 273873068 15336541 897114322 431775070 373749984 175512291 619632501 290542517 81180819 789525933 279590372 629322612 878860359 137643186 512543812 613151498 624820665 442920677 792191892 352097991 460183694 533894600 468323139 542891261 90749353 276295900 65336177 857427417 967594365 453901362 652887410 68142386 387535571 508482997 871580551 826045225 85347778 134565433 907127995 779621713 946587401 630851542 303672948 310590199 447008092 840577489 651870391 591570998 996535764 628458625 556484633 802604075 50486575 247895426 983678333 76395282 96197210 896141455 764096500 11693330 772756612 511669302 366021971 60933135 479879828 91490673 363211373 837941257 217898271 621438768 37421458 315672106 634610983 320092729 319093856 412686073 11652841 707911895 873318907 567946366 621609650 365104125 174405988 862611769 928504417 786656492 436046708 520490735 156566590 369211687 491144452 255122272 51158910 676161966 899346322 384966153 80412761 894397152 264390332 512336148 31099781 827322795 839450365 85284319 248651841 150120622 145031515 755423972 926862601 34679208 412881942 948882831 272872547 248792007 552566568 960707942 821549838 303843930 139880307 51414577 153660607 33011125 777477960 756459207 415676467 316027513 453840272 354120279 414754398 451392110 21441399 177972732 736751467 189080263 312659752 16483116 927659641 65170431 482842066 656283505 797800695 955509859 757812618 323507949 598545155 196457778 179066407 778003957 456623230 66321138 200312211 530585686 303740251 848780318 815279953 864750160 146764623 300655689 709897832 629069618 366368151 290054186 164715153 582989401 879736748 724623316 378728420 453922388 941788868 80150109 856814272 263700714 260897 522459518 684160334 73172300 78742677 726223050 465609128 190159648 858309667 555909731 472136959 672260310 759576315 502443582 804415597 724419091 43204213 700008000 722591469 592464884 355112824 460711406 761477972 643442363 884643635 318175242 85041440 386536971 939247208 542690217 725695818 292229441 180892161 363729912 884452807 765609582 333071007 819320953 937040232 633225224 582624401 150632579 883367549 391268389 563141869 95251471 787518469 152460864 393291241 378870934 756156787 411191810 40820072 794347873 812704551 329987991 211206627 536041977 306061081 453616236 465529009 422938667 280393513 908500424 380632518 595591468 41594701 654193917 293814377 163467097 559045479 617404299 124901591 8887979 915176252 449708629 454586777 742838645 106479598 880267168 746846984 618402481 49742893 438154339 450689767 699426492 470212952 591167935 232257224 316832960 859206191 693867873 851456669 22942058 486525397 673756830 783777170 199649447 779473532 223560960 223218983 451903821 172301215 931222158 863327240 115537334 395181752 767870347 59781154 504948640 652253796 909859091 522466190 820828740 910501479 911043113 498343549 110412587 300615047 56019143 541981568 413530099 537553302 251869446 819555640 943968128 56883787 232200234 140582830 18184752 267128149 306756359 365720255 305202020 658950697 339361110 168109047 981555424 770015800 665517864 999363486 482601881 358614734 285982901 521825938 808518150 976544144 234817392 83715207 584670229 266697425 77111838 934553299 752830031 166051285 730127817 671717844 182678836 899849656 132870135 530751602 744176730 689411874 308384580 845473614 933795307 887953756 948953971 758826351 915659600 419570739 946819264 799963902 554438658 120179529 143411136 941892930 524023365 305828332 273708127 133064615 633094692 996478143 239777755 399228378 217852731 431982779 283677180 997162189 711661071 32190947 620027020 730150339 681341410 731859704 505829684 931789994 276013889 11077028 630196072 841556549 719756907 579165473 178896815 836444173 837377039 271748032 179416350 179996494 209402627 920117751 943534519 44190660 803496164 137838590 852027989 76155857 108617702 871301489 248007086 20868447 676733653 160319031 911221222 716593268 190795236 161794834 751895342 364927551 486307450 467908353 912908596 544960281 259743724 699916920 181714843 861012148 667567884 225775902 641407475 186675522 520981794 612413623 342033459 422140249 416642881 843812293 637853561 781290978 150745670 187894278 376263607 372105670 572067357 229597115 498423751 197783420 815034795 801544953 222905497 773439774 814674630 622486640 517593985 494526693 271847854 343400981 173336491 351775588 332746382 578462948 352072109 381646438 786959366 496021426 967473563 36523736 147303391 132323084 863653358 704053107 255556809 350813436 94829560 773505706 64240971 84331932 473122246 29502118 277269082 367701577 886041814 258571593 860034914 953291746 26457755 483961175 675275336 338881169 467185759 800967972 952053138 815748814 52096482 223333766 403171610 862337411 117350054 722677317 41292775 145029235 984959185 674086015 187681211 129319239 744277249 666536907 319273902 748716708 739858672 11012698 421326915 702489182 566136875 69308745 159345557 569669909 967132441 750260180 152559438 503206717 801376585 515968280 369607761 498588139 185773846 907702897 335309620 826817927 225848501 919575393 27540712 364910084 957387606 108210749 845665918 259989576 51632315 214643639 642609912 198169393 91578751 749678305 814887979 871177371 840821004 380155671 938632022 152980259 119757927 303556162 646731378 761226746 156179317 783091034 937427369 668872643 713454581 491362347 869316457 666257134 92008183 336141984 382469170 123501946 339554344 396487191 123870336 921646200 565611433 66188612 538687432 949207129 534516215 853369984 749054966 568212844 481017992 551916304 153667688 846722789 6567659 345247102 282760525 786953126 710098849 884386550 487283827 555215094 860340125 922178283 592643815 703838645 789376453 305090777 867906350 947547070 147836778 296498392 187515382 487744201 376826354 228981647 733483723 595030331 317418302 725658706 25656948 647970662 687183143 167173216 370066618 330526934 677557002 768372963 302295544 760033169 430896411 437548567 800459432 500283357 49137521 723903206 748547956 932494465 266971476 338341558 528149295 306215019 595346852 568255487 362535471 996643529 156920385 828567277 925153693 359034269 81215580 762878195 454931638 508064123 441754291 180625021 440021781 904564500 426514127 4457739 653322842 445386057 405370239 499856054 40476414 546379932 307310546 96667832 655368365 107330791 203503200 263725053 790611796 519278056 877267797 45558167 941349091 686863252 612213311 890477468 295374713 86582507 72319761 554727630 71541283 518510525 833434555 820820280 326964420 789079753 866549353 76554460 372239160 395652255 509112606 672778273 153426842 745336416 237000293 260518558 65026829 659299522 885107856 219324521 129141757 371490447 223441444 340325367 592316450 694249340 190152938 200104730 526996155 595827219 435348225 740243256 193781358 146888213 732115644 749832541 574928116 14968978 839959396 460051436 495530748 183194109 615634475 335430488 863131714 108034526 564879428 495341444 536182180 580249884 423510406 227299420 468974039 808311549 960025131 467075849 594674153 319315046 496145566 342656090 39064024 60900941 463687882 337914985 276106555 857684065 85204036 209154710 87084217 401289869 300374926 269462494 907796339 41018836 377469079 841003491 910248799 573209345 872538881 890713528 134272161 552831991 80638932 800983676 914790692 130882047 829541303 141396637 114247613 539884790 784227060 853790333 156383086 233674565 453746120 62078691 839277147 661480158 956937353 142559620 600212222 210538516 374085829 197516888 197992923 319869058 490278393 17681600 60944356 86484245 321556530 150524249 808871326 757716396 892649347 357938870 67629086 341797942 840533704 966853185 991505850 735075470 138139170 157986471 432134625 537088103 614875027 321251054 589895691 368933271 377830646 876495583 130550292 361009782 320923995 338008052 396563763 124491054 819279269 33290437 678234315 292402375 107112135 872645032 6139783 123250504 694917753 748317264 790208191 197032080 790308230 129559018 791280801 363845309 828255381 239689798 213991371 544609937 411971411 20666 405986791 153925755 503294064 528576611 591771918 962321431 623545168 161246385 583292378 153737298 709925415 596592898 831789906 995570422 17602637 316736247 640770405 823746638 118864532 714038926 717218494 114137722 897905486 705290353 964073072 144712939 447436450 167411784 224436504 783255024 659924927 222531896 507340646 245567027 500345174 43061568 950523871 818538644 804805445 733912389 472066387 101532149 243395855 310286000 94820368 143454232 597492946 900600427 395274754 427552937 917020308 928805671 80313004 472561863 165619590 980353200 38825958 296735827 640304052 96206308 131533314 807633456 483657679 972702356 256568907 559867055 397295140 299722368 576488994 281035943 300811075 625083677 760578673 722515903 956918927 752544006 364017605 840642705 504239992 78432616 447318260 137640181 660228004 839838606 537089712 305616743 491461917 196719971 945453242 328262635 349991292 649166429 756444835 569629591 131117668 692253381 417041355 585571219 237923342 499272230 813547473 328043674 527138331 688066116 627949677 90858937 90374672 88619674 283187924 40879264 192103905 252345318 100787899 557112271 910344647 94683825 340953565 490349782 749225233 34118650 447147109 709895994 616842125 735828296 385599094 156437519 454730372 84999814 359804021 643034422 829578039 480059624 734798718 44258975 788697756 35846613 213039301 176653530 228335178 829011934 58090394 114445872 430294120 760610661 389143188 353822668 258986223 996158205 36805269 582118209 44002138 571853026 919095303 419535986 175110972 117288664 24332676 818697394 963474503 659447097 12132795 880047765 358223257 624005334 971875471 377468392 359918242 859738714 328752842 920655687 269895204 542652638 32432750 208864330 14285547 480705426 388242901 200647723 20286706 735321724 36313952 197840783 999623372 461960365 900993468 71983853 7501694 883969163 506816304 980676105 96959416 104820092 479623278 493898190 486940138 956612772 433151221 540326763 232937644 662988226 461313276 520815973 978888062 357372992 581444986 631304809 205681023 421452002 824350795 845965386 772435955 915849041 244631768 846369271 553303988 577868829 819877331 394108123 250347122 730872828 89886460 143967837 609734221 985572773 672272089 796620937 671351799 269588673 391207138 171938938 235052901 968523841 470602993 280576669 96319370 318006712 230782759 384501586 300924359 920201148 612503850 132212192 875224305 611787384 31767778 191535726 607023154 551496638 105064632 889401075 711785140 38343993 84382940 197296774 734470204 546129577 608325775 745539092 359258610 930540854 615759639 776904714 601696214 188621271 824287069 743490015 107266565 969823021 785855122 522108155 600529483 926493036 238976470 849678342 541398739 951592847 855099401 159295734 218723124 122287450 367628234 336418544 583104854 124502743 895860352 117526396 676713330 418907704 201584167 667876400 909961836 148653601 4486394 859395548 794263141 655577742 565617289 398912239 63000091 992949985 183265636 656204806 70521107 696446981 493482098 593842634 372854598 789096536 778731922 375990118 119943790 112331529 754420365 628099238 781708240 45001708 208594205 62326976 879652184 678353421 127678876 376125093 273390102 74246418 573802355 421412641 985495655 274240919 934798757 853436271 426166576 569575463 214277839 921235432 758543754 441267123 583723536 255226055 961810020 527074758 653361397 353320267 344592085 747444546 805073435 412807657 773351284 955903907 980620071 412727686 680544093 995392656 998619978 127509676 494251313 677657662 356696466 249679410 669936067 41484056 13870043 121414035 805316897 962937051 381362670 938156035 616524477 7216387 305616551 143737430 44437228 465742878 765599640 217373983 78809859 711023979 548323042 169407561 721272267 950705587 199027134 50307982 464136526 148108228 841379597 367006967 331494385 277515804 895397575 459571914 859449109 201076380 606222627 179401166 26082442 939504839 722797862 298428758 312883104 178348025 992386822 22337661 821033887 925495951 242927070 110284436 220317510 8487000 690338955 465292887 566585728 450267488 344727499 827559087 747805743 867710537 342315953 566153865 338431549 4451358 522223140 588629534 374983320 924380291 328812499 325653499 731957957 302299007 715339299 556126974 207559128 670545561 38973972 858586011 367807213 466791837 57649718 794368663 338725255 141331306 674233657 372552439 527811442 865074829 963677426 311025765 685830452 270027966 901275748 569966172 896920234 573980160 340594225 472267169 351024620 534195945 675751926 204301925 400044396 644854344 904987045 758053245 717342067 184959387 3492690 249271061 565175446 330681213 667606213 72433629 820608188 524241546 527753690 246961196 945965818 21983029 883254850 648220603 149424160 600795229 710113235 168735645 311449566 294025943 146174043 645765820 163867786 485080481 884527961 589330081 587199751 405046646 897701404 809095363 368730438 544649839 989033645 928248130 352956459 276130260 130568183 166373224 981730139 23091637 747573764 309598383 632178284 75321061 506257284 568015454 258513823 639187193 549091366 301442541 704950467 569889753 242429567 17745110 553058032 66683789 110489173 371483158 521752291 950838994 681237460 504685767 85430037 638031978 689239616 269353889 603235831 541511073 329323933 224615855 36452719 829143703 814754761 269694866 348841205 652634080 746276241 368211730 591286094 42379455 220032884 443931925 274104206 410334226 997377012 276357027 627946145 968896014 855042169 434521636 469404246 943039640 799933456 499604786 540383360 306223717 24027917 734127477 200792608 865996664 312975101 433710733 491865439 728684931 401961717 334512167 677735074 203357188 22524689 975596583 102757732 444777234 126037834 208427426 199116696 107315854 751419475 28257255 510090446 778260731 357273526 697563486 412538176 439695397 133186259 92048275 807660936 715203144 309602297 98404929 164359155 45640684 747561853 940495623 679172750 309459847 451351416 196131343 611621820 319772501 444054844 135752864 200576611 797921199 792227783 671591252 433528233 736962951 240347192 172667365 597964768 865594745 205767062 618086946 752585318 410310541 539969892 168705613 244309039 174182443 783280382 346920178 321636232 254394462 620849447 949718920 225656243 55544326 754589739 949507548 598036015 214745234 965356094 533683196 479519811 783330779 54045024 527158053 839980891 600677183 194695264 316666325 434901923 591637130 112786182 146228027 357900001 706946536 568336793 888144991 22036579 848404863 197535197 651056121 486437821 849030080 255834589 355894850 393131493 949427496 132324760 433890926 702165655 250054934 861336925 799096031 4668788 912424513 33734573 621369102 435766023 481047924 776256526 375245791 107546917 854029381 61495496 357297186 137065665 670716975 956881652 860742391 562634508 15540631 985564038 447969513 330867746 408702735 526731348 854889744 733982573 613461259 396764526 187695640 562598654 787382519 182544884 156847996 575725740 271596688 817444020 202508758 114323095 424045011 394122907 571881464 505670310 855394039 314090992 254164242 156195053 264109365 289260854 407585687 599480985 889378899 772363412 362908648 535411081 706230374 950761166 45958955 74986871 529381780 148589726 57383060 453069704 550736540 962234622 870251954 235730298 911998679 302643202 516003368 181099742 640752657 579220301 517627993 148882368 23114216 826935518 721795764 603654534 599196409 76253246 303284782 9062007 396280880 599962645 196062205 550667369 277474325 646437520 823884655 675239495 783206211 6993759 9276087 929726861 518937599 677145745 149220582 6009194 336914327 889188263 607077852 973013507 846462079 182458759 962846974 230214380 690270681 571851790 859909839 589123338 843513108 690831105 956140471 508535087 552443493 171488106 397997057 415208707 332502618 756686124 209770703 25905759 510747273 74362083 167154869 464165866 417106935 762599202 957967513 293307447 928355751 616602295 224786097 211142749 973650175 899318251 609291135 110599475 28933992 481076145 891389527 376231752 606568080 478629050 8351451 40369994 802330511 689153481 273190736 70433078 850613927 845151574 369477904 243448149 103382240 530705338 997322079 159670938 802532629 534147384 452969183 472373862 987107266 302470861 241655546 268884534 22723080 122224724 889337334 653218074 694287124 741498127 836028855 997096458 471566555 20113859 331659291 317548271 686248758 379327092 598072373 994350119 104257550 333281746 651793052 675093876 234164464 692928012 212453393 591623256 984870714 339180608 48818793 846212333 394623751 979344669 120598749 179322981 14528740 884538934 432296609 984989420 555226349 125954414 160793443 120565658 165238061 797953260 244995018 222168175 363303163 736384435 543552071 373379742 823031554 629172160 358472397 394098914 123257082 277028231 943150154 136949992 43037187 40103643 252289392 381031516 155416034 387767103 928695697 406180194 938003050 464089131 945232685 457666078 393917259 702640138 734569593 611772603 150578887 556539904 459768825 695082 20368544 766320827 288858685 827962372 450592034 338657268 113740866 302874104 633470313 494632473 604523800 767957295 929481447 276837167 373555801 440503035 473669399 510079498 610272003 698368858 730187434 373283828 877336720 847347467 820467971 811319203 133102352 676700890 260823840 858916780 684308413 708238781 179264193 332189444 118380478 239486592 815619273 767857357 671150002 590983149 222532351 794234963 892534093 8979943 638990882 166677921 945537552 124158348 447541563 344451762 973627815 285424365 7191355 464985945 406957867 729842919 884892012 307688375 570470944 343454330 753512549 53979718 974559375 924764262 764182861 277961118 377045697 429323863 503401727 991215136 320343218 898385022 941272485 888758190 752610639 554999900 539408992 308647338 831222034 946665150 837301275 959648039 622573205 390966195 30697273 157476550 395839011 275226112 6197310 133725346 28812399 86313447 769698370 520691558 615746882 595470234 782116288 828944189 751687127 971791981 919123639 611743882 435760913 294392350 252598329 902202996 380194267 771655037 157427978 667875599 739910018 1009796 519640817 683325901 275390409 792071522 673774133 789172375 26198209 797960985 800129556 764744062 342161151 417448729 244508406 187953194 352420052 982302477 206211878 997098968 640691239 44172887 23390524 405937574 394605072 601684302 771526124 646052445 889736525 23996708 882557813 100007489 205476486 642428441 601588737 733223974 751351035 821085673 866421939 332390210 105365121 344082000 709090738 913939610 722273885 432241883 836985718 626453573 708135628 426048689 471674327 216308578 274140693 331500594 874104810 557924159 360846939 338902085 586499420 189951531 909830371 107524284 587465447 946177059 328609250 47690682 898096012 723702089 119146781 657985022 262214799 784427306 845465580 6469079 687279383 868096996 856433331 530513000 328998417 48483515 704302999 366374461 575805921 448071397 857921967 964172117 998952990 355182526 493504178 759032187 939754645 428423609 740558753 521057745 815214820 879434182 768582393 470769742 515678930 987545836 393545666 124813285 393532938 803493684 458370565 917438554 604164424 639467490 682116481 381244865 287168010 141181300 446878598 109024438 357224538 793949804 274464790 607259299 563578736 91365593 241847887 675972407 626471874 121731823 303708899 626078591 243462147 283035589 199865252 968031091 546688883 446899782 139560513 784211047 849405087 293174324 907875789 430272855 123910378 338743448 37466917 330195719 296776682 628776077 11115893 293189750 895525977 43459592 286514509 236446115 738963744 512722351 853753370 153417570 661627779 1271699 461342951 537493594 309266346 608973936 327169524 436767409 634759716 874955716 335010149 98245122 57489536 466622427 499995930 844800755 315773797 814832155 187571246 654936136 379083606 617484365 189481836 464424228 629279896 314475298 551485927 568883292 275914678 789895135 905758123 916705416 642331930 207436953 813648083 572836692 27916342 843410374 74595947 469901115 498094420 246377056 325088577 793948799 960026659 224099019 787056812 952868547 284685092 571641300 216778599 557741621 418614018 604181772 381513164 809474129 400608543 135169216 636028845 221234449 263862328 485753637 428400616 801716823 511130758 53469280 13303983 968269884 313888138 892708617 784753734 108889688 181749658 321910969 574482778 280304022 297709834 147740430 185946213 146480696 597572659 150151572 351834238 572993667 101435915 6274975 506734659 314925785 527510347 255399833 533174950 716501111 682074892 775583969 169719147 383405340 960292819 140851875 830343695 838984459 219075180 233391416 592882727 901119443 493780912 486258694 188602810 903338252 658888925 298500969 739151341 801597395 203805681 828518508 483712959 15810115 379263594 165718701 171738792 957773095 211928552 502657743 671797039 269269470 416609950 133467990 701943500 263475355 250094565 496861750 946012276 531260419 184319654 786975286 662335719 574075608 703955304 706841768 812929280 800677055 777856979 824128650 852762501 326610478 424399422 524653886 674825014 375933596 813145029 376094671 841256809 629214184 488090622 579489882 889945250 331211559 14670591 875847827 564789372 334970132 69294962 85612896 791634551 62358892 250137858 228384171 383486177 530758103 763664696 72050331 942694304 834168678 223891973 497503453 781190392 500468631 268107667 680851483 551787193 950885787 885652823 421581355 515986131 403502561 49979927 827620988 30037718 173640764 581352945 147075644 335787145 788495313 584097266 24343844 337819041 951621164 156338901 381744562 38374666 275459833 335968691 786372239 867901337 513410835 354220965 573908002 609330226 852483479 582301649 783808050 826592948 137818763 727132009 355189546 88636927 507867713 572474535 568736904 432705622 290409874 792155130 98585097 957648631 985388647 17168964 656438823 62388028 107240974 391076446 607082830 823950565 346301295 486141032 704438208 176839490 587735630 998407093 849874629 820245591 488803873 659375047 74034629 145572817 357433403 971250072 599710125 215141299 757271222 783430918 242308574 937394517 763782964 121506546 377234143 730312182 805034722 554000441 58479467 348163193 136854743 535079438 970578815 143467528 672034682 545807636 708711347 572041042 983248976 167153288 893707000 226525734 541647759 203099013 439580067 735000321 793162196 412722130 449629456 297448903 358422393 835629584 266884152 781620057 243303823 892091293 507167736 725902566 153641616 180077734 34530734 95812071 566095620 485918279 552527926 888329619 122469651 641367781 976070014 945083223 537418631 211497554 846625938 754653052 516736841 414518368 530401431 222095807 88642966 816285453 374768398 898546781 814716101 383061946 500385288 984581346 924424514 960018380 815731062 356746458 528239267 384098376 70072488 527044375 932500075 197885192 221493514 922416976 920259243 775718931 498100466 367760163 554456362 485041163 205959588 519415076 926149202 174538672 753673033 474917296 607862075 39923454 623783214 116673291 734451569 778113095 861865341 116902742 808828471 118325581 990546663 509329223 742591333 681981327 340701196 226170983 262214784 3614574 822516112 645386611 850234425 273259763 952030083 213008610 340938125 448162118 146798048 276038630 820729441 259336324 549830476 892642891 653588533 346633246 80473111 618229106 773036259 207513393 483325757 288145993 950069768 565917613 470926487 623509754 209287304 357348849 273740052 376639337 159248482 224901034 840370829 711849068 362710104 230239401 289542625 763519451 484866042 90709462 374609305 605496789 312046321 624079566 824998518 135018224 943749247 964768465 544808872 670899915 215211553 313550868 211269844 68464633 718550959 905659289 507290470 338579749 725770684 371876628 87210525 664220648 392622243 604763130 256446422 516385555 985510924 688066812 497268070 862481709 313456505 73031200 189192619 749203447 404424935 424505206 190672231 827810607 760888943 791676708 658666164 411418402 143249741 390139117 666243106 609861352 770842160 133822506 220345243 249554690 720068207 718983886 724693434 20061718 179454695 784516183 921238556 244506360 643509321 940605328 918587159 1685254 890295902 249802529 751563037 107483105 364991762 527084307 843024742 960023135 244473093 793271893 508874873 956970618 424590388 598167432 182860595 139581443 254542580 223459263 739689544 515967071 607653912 961384127 716772788 879407327 546119203 542454222 807781662 657290006 771480881 726129170 511328190 483915728 248038779 332014156 290507887 530454791 845567813 27805872 650224231 985901635 346514473 628936448 51062552 502878012 884240471 691838560 117739026 435550615 330719725 782066881 488082854 351598235 392261965 611828676 456988080 182353305 754383794 119010207 757393154 653992591 491039273 760159480 976641365 220293110 633955354 161957161 291639222 590960322 160889223 486022353 889590124 521770796 695163555 801798727 634420085 562614547 583626465 662279777 508069461 555071004 267875958 533827092 863861467 448747718 207274631 716781353 362900156 383725557 519513630 459641134 967956274 848861200 340479608 416221497 970120068 77190543 10091966 541116286 750074241 183928134 912841864 922272944 845657854 640971326 495353252 763577974 305340692 701547250 808019004 477844850 513746234 273896097 886555620 225663051 203186417 440008499 667240155 601555073 843112016 112741911 210417838 987319708 11809510 488826838 359437330 862127801 359737539 489500585 229844397 445038488 165654359 440042982 969059900 665337339 446201129 787831286 512142174 281545371 862455459 122727455 160861065 419245198 573598178 800510969 911012836 851777177 908887847 760558336 257348140 679528040 619556736 777480461 736421811 504328234 346851533 256310950 215735952 192298273 497084465 843916909 228735255 413655814 537472812 864237501 921255436 580735043 551816785 994771169 376770051 63426231 745552188 13388027 777637307 307749349 22280413 523687112 501411765 301555324 389890850 883941926 17180770 381804251 616686189 482694243 604359329 526728299 477485309 43863645 874874223 472218886 479960377 604303064 616610596 300655139 299428993 474903417 713416393 571101828 974055886 799575231 279688428 908128991 389781368 536145286 899241862 960518542 905865926 690851376 591981792 736017227 180722191 599533967 630114586 150502002 942216171 532694070 832849861 181951497 746726131 383719260 708226745 285030234 944120055 708486794 314845614 119990391 29126410 625045329 842434901 727308541 309270812 763021751 871205409 842298326 446808368 908485517 523418090 732420587 580090240 772628792 196773093 378775368 171700293 906778517 521791845 857215058 273973654 326341126 203224052 441683618 814935115 595685544 1760670 15971795 657646683 531955163 586563259 357681875 733376133 606087560 548283178 699775240 527582260 938822904 489017537 307858614 281622527 725748652 687813820 279393799 922044224 859756844 25035169 675801789 377589682 412856491 576722938 560998589 39158200 219188374 431502276 37650899 659752970 875607993 764162713 707901954 792189444 437464622 825752513 698124051 234622455 45901482 420052614 461895092 908311825 386600278 597982282 975643180 322751669 464192814 873029313 400334462 744798014 949796212 371800684 934474374 665901105 410997347 84393576 46583197 13189935 109541657 184469132 455421896 427632867 521994282 618567839 119297586 964216553 47216043 402963103 216132012 917318610 346255827 74930305 603516427 131742042 269025391 570770035 772167274 577718308 896705619 377045383 417900340 414052929 961484621 792928726 953073805 635989363 43295592 607779789 135932564 558635678 75511170 191987275 508650939 996203796 60841482 794758607 699978524 59372970 96318150 639399269 569199652 413974452 877701176 708804734 531937046 24890581 124358142 48901358 918798842 535922702 715169997 207523604 107991275 488306913 929171547 240752255 503234346 301229497 434455870 40350094 336449277 998063829 522598990 930838578 434465501 927388940 961061144 112718311 962721534 614373085 106141896 500250300 880163067 355735320 86141672 263591392 728571815 966884684 466380363 498309046 847636534 117438139 729943446 313179726 108057691 520481918 855950013 429738290 452924361 456915286 503757198 921460372 862219920 604578712 857565007 322769379 154546840 780474092 196876935 629959350 734853392 890653362 118031039 162922033 40353696 326343606 889959187 434027803 996070905 409193841 568585196 353240152 845030831 773958693 141823162 987283222 620588099 112809510 797196322 787611464 589536750 135990746 965955975 5006952 646613971 2180467 484553448 454694548 798778312 93182604 769867940 652129788 198534684 776773832 868997980 346425918 965512686 82447752 689682438 199392208 37459671 557324417 750496243 428763362 59286514 179893253 207024107 30056507 287367989 883911636 760277356 678862659 231218537 129764383 801707420 178268700 621681720 718277395 146725472 166299330 929511540 510219910 63992125 260588863 866032697 908194676 64110492 244003571 262885505 797424802 705446422 899272790 707911629 909247857 369231106 346577267 779790728 535552960 675049109 410327321 238289893 316312056 299289663 309297060 446514106 406374650 401523281 532901557 767116047 916279177 337105843 480382430 300517304 294618320 321505716 811814213 117212185 777051877 391417088 889330305 395311852 231785715 908377879 539293255 239256312 204557598 930606102 550513356 237792862 161794223 278452491 243855623 675299718 433656145 672919579 995666715 933157085 27605411 123786405 297744817 288516413 247279676 658862638 922543992 624610781 515946277 117739516 658359158 243782456 423221275 619119317 166971768 882369886 290160744 320788676 954475189 827765334 968003601 740060160 548271972 231306751 300864691 143205178 555668318 418865350 329981359 402367845 286902216 822541848 360428821 507682636 831532018 546597789 822184050 775281656 882554482 558595521 713565748 970763520 634295735 761698202 793389161 532213466 59286193 943957311 228067629 206165684 626614562 291999330 821687576 714137516 290866793 201759155 231555088 550151951 240642201 362860668 238806924 590431793 17061639 867446893 104264174 711462529 666140605 125011244 612280332 239776279 602712494 328285575 721351558 51014218 149422936 238722950 468479213 204425711 334408748 356113063 707007098 922032696 663571762 656390872 550009488 192182084 640353885 191125292 162772799 212082895 664165053 436205873 974359600 718963856 159551503 527961015 594796828 140093396 208990263 722286836 923256428 40902776 566267051 805273927 63034919 795613944 794914173 601272008 658781610 843029367 976774523 891455564 61347374 271162356 275105297 877614014 522757761 333551577 196156056 872453396 698191230 80863008 839402209 789837629 120867793 604012262 105617227 720733113 107105650 740917903 67295674 404178100 348891815 436573308 573368539 48988047 339352347 964223891 653757568 483839458 705838448 46815829 640703479 506786156 979717144 677361959 839754961 137854652 754497881 777399292 863925847 258156880 20587539 610991026 493456468 993651954 879649604 165774552 564688024 656506574 575105255 543261404 575701993 509569136 627634954 116510823 895091600 812170858 766443893 865216963 754490834 203607764 335274097 950533853 242145493 9520454 122290745 531579058 671439667 746846090 595576475 707654895 876154821 430916874 656114021 119397568 516328295 702965560 686216295 484872201 197499372 123870274 313624930 42135242 51111833 911705167 614490522 239604892 542316278 447329342 936253011 121669822 607183080 104768460 859510180 561144158 259901134 913510035 124653430 635601134 450282103 743619303 722535723 411672283 291159202 205850456 874867882 547114095 903091533 693785099 606249123 166893447 447915298 750822579 719203758 838978021 947069788 800115427 709335877 98256475 382936448 941582216 244029819 400328774 178130078 432900985 444108544 266200188 396792481 183757433 316672063 248087610 961249997 277578116 289538117 446344291 483870898 506781171 943963287 247331996 810532138 101007558 897269424 550580503 384835 21060042 619370178 472238773 210174923 568141195 602815195 980970910 701505093 154890288 234010819 951157132 126665625 507858694 412071748 543805256 452171377 414710132 823262968 827891536 815293312 943238758 342810483 676241745 944896734 129541184 850573427 973064643 250932115 333485072 621299061 731732745 40476833 835163440 968330787 841886187 701476013 171280648 4277953 20774989 352805625 777072049 819999572 875428845 783608382 588810047 832658322 244548620 148995209 579630297 595973873 601051992 234561035 271748423 525188866 675030735 996399412 744990853 199918958 784959337 489799477 275862426 104945012 743437347 357704395 236573904 127727289 182594899 73844418 479764120 78741585 380733830 925395944 496608260 543001707 472345663 785077615 43373043 143472627 799572758 10989898 549979971 708036706 257991852 833203100 448185254 748715376 854984548 955549817 823994512 482572308 255191415 642298001 429183392 73020208 312510172 854451468 212312861 999444136 451440254 335972446 738484467 327194128 304607618 406830674 732116019 902700574 345457126 359419942 958734923 209913432 594785476 719543955 946376329 726589182 598793839 816855741 683324042 304593752 482060765 527935686 847362627 525114654 150186262 946992997 591767842 809006090 266171089 538805472 73635601 541668031 1462575 472044981 988998100 299877051 583823140 595597013 91014337 965041357 394194123 924210618 573114391 237124740 58722752 419583994 21466771 952294195 750907098 326324584 640623643 14825832 160045218 261326471 866886098 328727696 670876293 168899281 668487904 431276571 71349649 332654335 53608387 404488611 531791507 567715854 796014478 716121813 622094744 633494889 598656744 565095984 874616539 433296581 799739783 64295353 626667250 869094627 386899995 469540704 957477956 918073094 277722837 167404255 333526587 408812152 687773414 243982041 886579607 163087926 609346327 690070690 153767274 700126052 913755128 933403869 281719097 793720952 485776412 67189288 477914666 338385983 775339599 582413908 552168866 166727943 381991106 482471965 921238768 288804632 767138759 242556840 398955280 700079919 467261101 326857705 72565536 405841765 374251560 781020817 929584625 725065691 771872758 206450527 147381957 327526554 924194894 220544138 377376932 223374680 489537553 602361090 197087864 520341843 49055446 600076356 485656086 755780339 914585160 515346100 38533478 147313780 869034072 562163587 598860817 29462547 22898368 674854306 234126511 235703676 68061683 485177608 497551351 864069208 717098981 969651836 111884946 691211387 783451425 62053593 177721812 585507067 80052815 181073937 605927409 932284066 878625256 544891760 668799950 738035420 929743396 118724468 217063451 237223675 928715386 925655837 396855556 454501291 29371667 604063231 693626757 795669136 876168840 383218588 578365871 353370815 976914297 87692875 293344786 78614796 391216478 897967682 298289018 985509204 152626287 179824159 104661568 843382074 710262422 340892117 639000417 355958531 872704680 507891418 769715445 372219881 912494950 856355449 97260403 762212046 265067677 980926015 133117162 751724785 454858259 213592472 104905778 631224952 255903027 13031419 696787600 91830122 985294542 585973879 165455305 925281070 30575846 580056206 778870164 635512861 483265433 323986900 21989342 715877994 592852256 424191784 811903586 66649962 312601367 295143226 626194869 243745726 200297606 890979173 770941403 899158325 49357680 1734973 697638624 649892851 646031358 786205583 321649412 986428266 466583145 829638201 306751310 692495217 914950892 49829999 284716111 487102166 172313295 435038735 942527225 245923129 323881246 148327356 525761492 933886743 984594047 161859139 652141158 810483639 276815049 381116708 53014186 538251405 220085157 580631319 882268510 887483905 634199894 339322903 858792201 843256326 361254723 348267180 384164154 629387952 440702019 404960407 564280557 651343250 624036801 251505320 39238608 785577776 433530016 99173066 114288050 148771140 610863420 162006043 941599136 157851414 427051255 684403917 165345193 388436994 44396608 931269716 550879867 266406136 331346279 754116954 266595863 335968592 657387842 867563958 669876907 430198563 555111286 843048754 652510762 638148200 104420264 756937062 59381160 195530899 587819997 685851402 322789209 610672859 238423366 932978166 387374385 361357152 570316613 630106564 117638780 378260844 492432939 357429739 640456309 252349113 885408440 887908710 735436560 810549149 351977338 31337434 272049819 870381185 161555006 210788931 544467823 717908226 393525612 436910277 721768482 23652067 947215355 846432283 545839503 273091148 42033462 929048483 557614951 676012279 421896897 915080197 223234791 61880305 863718572 360636985 640148335 275075873 728622736 373510334 61087430 407474881 891915907 493292290 334239604 675331493 173148455 768268769 744121734 762353736 558435647 665964414 325503374 96194960 147242069 273258426 491326965 38801622 668609613 931990280 554019459 445532527 782332170 679252707 869545441 201651635 831226810 156042672 389545044 463464349 677324376 650597233 991757353 694809780 757367121 179590400 570563748 941570238 423519377 695358455 708021067 80547974 412371197 167928318 239198133 874841347 301265816 675325046 628505881 601107942 760812407 161606041 565077015 768465132 5421806 790977846 34810585 442781637 822544975 436934914 383250590 407390518 478867600 601670347 933273417 222803871 529496070 661192370 289453765 313498271 610009290 363431495 564167977 42611885 208899138 964835458 708224086 347978197 26331820 450485098 510950472 615760392 15376529 832924520 926966575 379433228 766543009 837689514 643814458 554823750 677148020 738254146 320312530 952434559 183119717 873740769 931726619 683082404 658366278 789669900 85415019 727503953 296723046 869258136 288677167 58772450 704948332 883374120 671030724 359333510 73143363 381168061 261422115 716970416 835761432 883266048 884622585 661037190 198874071 419689764 678778675 783857397 949280005 510035885 666951106 639743287 523476320 698815937 28705226 960451741 189579125 632428488 697326592 372034539 184828973 619889145 493625089 60484430 523235883 489838439 151675099 76126961 199989042 274002049 489412350 947482024 869971940 525688036 795237478 474743757 445480846 26128365 572345017 637794725 739990560 15427353 168721550 831614908 809315711 524064160 962937378 107564643 439894717 987863778 40840736 26292912 650109619 489066949 124669299 336424005 127689959 518294934 693580533 552105139 627506854 964464084 337988091 664142936 248488772 105112609 92018567 937033235 412979593 199728483 659559658 169134181 373267317 123127136 450509415 368496664 661646140 113303906 553029445 752261349 783987621 187290603 675264452 121442895 460141779 798210634 843035392 400402260 231999977 271483922 871818869 43779602 13745373 781739355 208404437 456325064 20503648 236148791 284999289 877489250 336684481 997594510 556440162 313387375 357586280 988718181 491878411 404708611 698186066 772209221 551021226 610911014 776947616 923713742 144438843 651045023 127774916 868928294 727791089 841774608 516886585 845391649 59102521 716516814 651226589 497486516 285537917 931742800 682162361 130305027 717421928 702539075 268162882 917307011 921342787 333506285 775963026 340139441 148330492 732756348 739193116 315602199 513924964 702371005 641413401 435865792 38210009 135359276 600806197 575741089 718401065 460364990 33997128 272450455 753091249 974288828 298952383 99628434 55125127 671687960 650065924 336806995 856861423 176015673 487567130 900186473 271099896 365232704 703692420 223761740 484050577 679171098 538668278 48497960 643316336 593866047 920343205 816469127 697701473 743329987 527414198 967569788 550948858 471507318 444136016 907784542 936973516 479377618 153474265 146979749 889763871 546666350 899505467 222174294 226822527 729777905 857444571 138579 484234435 824710990 349556459 538251198 887755949 1013075 510693673 378765094 408030114 923879006 475347832 979590134 312696373 981471547 171827040 742175164 943442027 277028189 563763305 631623282 66585202 274751603 676696703 874367802 708303338 289523867 392959 369947032 458329712 806702158 927040993 981507273 653911803 147670867 271324317 587714883 506574901 596284508 257945492 171421587 862790769 823244473 166966271 922777239 116613709 367618698 873589465 167266563 706796913 117619784 133494927 609249520 738567723 660715276 801797837 543057037 133584296 626559169 709823760 23448052 870672068 157338353 101135204 687846426 522180135 601999288 562180954 924044158 702987360 534629816 90657602 937265660 298864700 147275406 540287499 911098783 404703718 397035583 432961107 107610838 934798534 322862199 990898737 539536818 738054623 483190687 862166738 107847938 304193439 159129685 643614274 448695060 864536003 892589022 707527989 202202494 98071197 728204368 988395079 484888596 198390971 887953073 338902436 200684306 355316684 975591957 375712185 951281758 650740453 382070996 952743998 582651013 373238175 253457322 751853193 589660604 416517134 835604231 88088261 14381312 8478329 439782465 52936820 971300579 876452679 752860304 64742762 22504396 556887897 483317420 443210055 662444008 32383177 511371664 110636909 536823122 370040076 272960636 10181425 427312479 793131030 537568714 504683925 862137826 24593426 303310958 218194390 754530390 342897979 14934789 148436970 894193802 879313751 236420618 565283065 49523103 872161476 630471177 429761669 668726050 540515798 759188974 448001774 625498673 121047462 104961339 691576447 492063389 518518252 181297399 819867419 809426303 198792469 678371209 460098595 544708787 471041851 393983672 316775984 132592142 773732966 786030098 476378891 808902049 16465725 539008380 408430350 444460714 831778864 590412673 60619929 756690746 134994295 6785158 938402892 277777975 525166906 796193592 497525833 109540976 54411424 570063428 904440522 147105176 650090491 110445029 727566464 755105230 220988190 931100560 176237633 427863627 55441427 798527159 678223357 696414846 987524503 210980883 459433454 233437495 639714664 853177786 620782859 108026714 152632601 94671787 548777068 542724597 132494628 469142999 924912879 951208928 577380404 19788287 132189510 953281789 723436502 849796481 387408255 572700472 815845978 796460633 724070539 935424218 573939012 463925269 559051164 969749322 193018904 936284501 888445566 639105930 426334634 838794353 384794918 574676570 717711032 403492465 983623060 128461359 539175593 872116329 893477257 701640032 333338152 123170779 926325725 701540277 550233301 812767452 501114849 888077224 876491150 27674833 21990292 850068451 382018055 884157357 411813554 304785893 976889549 990087888 484030229 595501862 725339031 997290791 711179348 775601916 889236633 163943860 569059673 932775862 317296899 633697057 231305349 604809555 321503056 611656801 272385701 189811565 896301621 767488805 423356502 195045658 58131063 299076075 328501235 362239235 776612580 682539082 951135908 390545461 849451652 540905928 522975404 918689689 539105008 724118240 326822462 958558832 136652656 154701018 693655630 895224867 891654851 407188935 180704627 906675754 626330460 440308140 592580034 747261512 516963564 570751706 693925737 936021480 659639272 384673628 295445927 275612890 699733991 208660347 210095268 376304717 583904054 417107627 786673928 614664494 510029381 66180522 878156943 446038346 294375946 897789513 438198180 738583602 443363763 356390653 912300818 633053835 91678438 982902958 780700993 741040955 609720102 598500633 709456714 109971670 867833947 265812205 634919876 605373814 878165663 397290984 152003319 110222418 830710326 431410558 582850161 3421733 349360934 360032950 358149252 188562010 894000128 406866018 233206599 664354655 781516723 798149531 859929180 741432324 772492181 227699550 449722343 745907809 838004338 461744314 274728472 907653536 592805742 400292984 877799010 250781339 104645774 632181037 129161921 466701840 53337314 797439650 430610277 990496482 382245715 321375862 473862191 404004154 73160640 290766000 114998271 384529826 629806386 715641181 470485818 622978430 645784235 640755076 215550329 792824292 884541343 179347486 112259099 324215191 422335246 286673616 478224813 95785856 686041805 913446359 333424026 958268000 137529945 712374458 160000987 310785981 161083240 78903069 962095762 799105706 912844246 95922030 807683380 761665627 590461784 691235758 238745356 415124888 804617640 439972979 253554977 944892857 595305866 257883324 543122868 799540913 516885572 97330737 977994077 128927132 88926441 168700359 70425317 929184871 774381222 819631885 887823966 615564980 415530895 194821194 215102549 983254935 423634560 723525877 923797592 241824488 287362837 539530477 568107219 614470290 279077980 675105349 692764477 771043358 201551992 246534033 697373959 37774211 125997807 795428520 705181761 295107063 636595429 627813764 150480402 849543233 493185064 934116577 301266900 628715160 154660798 703804435 338527337 357767928 763720284 163816697 460565321 807813077 754458354 949903306 178664256 647518764 594649588 612243735 421239843 958783454 564001611 296886058 254076753 997612298 119342130 478120196 754458425 822410591 956127207 769653297 665155897 702259673 695008785 730896734 343405353 58977621 824338366 54327076 961194814 672724045 829039515 645329269 711123017 859003390 81222001 884694502 667875424 478473987 975748017 81283796 977927841 299988263 663239539 629785958 412195657 625139177 88844683 603960011 911706194 55682915 389771109 890674803 423838974 503157530 901326397 719297873 713517446 981723824 496972298 848447814 740380640 815112462 751839491 586317384 967253428 86738987 90931287 627170987 661384741 143615979 152939602 330146266 155344394 275694198 175232158 846292259 396225988 37050328 473424843 520177062 481520430 507030233 866488193 374134223 398980276 93376578 105832040 502866110 957996404 400807386 475773032 230473729 207962045 876866968 242429125 232351156 518653595 146330338 567172046 792464552 894202777 183880688 160611674 156009550 863922520 889524453 219423786 514735769 537075614 363929190 66984364 349447607 871637648 62647901 13265842 706012175 517294477 327672219 263058775 560080136 984629439 96285420 618247959 598788026 860968748 684859687 649716752 202329736 203756532 896402549 498778334 721310365 798644442 575337993 296556285 469218132 960237243 879683456 119682377 278528594 570321678 855639758 516847176 825648820 212611435 562687874 653407640 642187842 906938499 672991795 390897063 794627055 287255528 66065891 723776246 307676837 538454980 463976766 68111674 973714450 592619959 868651029 500170287 504949379 517439441 871458737 809197033 967874243 65229606 409327662 82066955 79282971 252044998 761417533 573144123 323685796 937585631 626429606 848873773 390720105 822005733 369720371 833672035 845932639 496407189 74006925 649729897 245863299 465023319 877859864 172068822 423886777 17690748 96644044 922097200 825746720 126825421 465826065 147033762 821950705 807603320 716130422 172908525 458002067 145435873 70869052 508969098 354154093 356297906 162721710 131560195 129422116 738243246 951521799 885170795 856120797 724172686 792393730 749855406 206552609 927770320 116463029 747019909 320487805 498540834 774785203 806928147 378195306 151999874 582038283 724604637 416856801 448215394 775599350 771035990 658897532 807915960 430877308 37982027 795857984 312685017 526483043 443601947 961697754 396847276 706206526 563370603 817358286 930765488 658517809 36518754 903536510 651592100 439135652 35569011 203415849 186900227 174257546 709082504 387061952 320934725 319284993 282374227 263544212 95516217 166421663 706627539 261910476 637408794 20798084 181896465 819185525 183367581 403298472 290820233 536153283 526929492 748692782 910993889 891934311 1472610 823772097 632599682 451681735 185365835 151284364 738153879 713943851 467058940 537288600 433636939 982718640 788612514 942775132 721669776 114872255 104850252 467222426 856491263 364812688 530094983 335168565 740751117 302699130 691399255 1831265 636901816 15946430 115757163 255429710 175647121 805729159 35391980 194302494 615947309 346671620 830827042 898612631 193788119 891437149 511343393 896643455 483504983 797120698 540891874 767639469 552613997 83539569 108920637 840455205 384502054 73124483 339439397 506235134 492179191 927493742 444330825 376892433 775391420 430935752 830694229 510756712 506477036 458154776 108766380 647565299 886446135 475312814 572110144 671739232 776823729 276477776 352561757 572885439 97214463 311633077 149013571 568659930 304580141 182478971 265177284 539603707 677521861 520993867 86614892 335505340 371818943 339865909 480497100 626507849 367377407 979263038 22882344 873412708 770819601 901354840 213320122 690869896 129321356 7232183 134139665 703885054 409023447 770463406 34521261 588910094 913673864 208848082 504796160 616987838 93877662 405523095 282078333 807138430 369604530 849463463 931180434 947605874 256959719 342574548 180331951 481546729 307926288 982949886 89065636 596902385 706594010 742771162 573164697 723156965 383486008 327351449 307820432 724334932 740542827 544446692 177053946 424907095 414457283 586666410 644567793 527443655 818426799 327915555 500121705 657135304 715486488 125764171 598188440 99057871 963331756 864128242 923550169 5581788 474358999 691821567 175649722 146857727 946325815 635543108 301680771 657178285 212220438 466711827 87164000 72808071 436009486 714661900 85036592 502320004 151000383 577577174 276987712 594405664 153253615 633856468 166949910 557451879 905104135 561567570 699263603 702620992 411312644 292649117 363952421 9754862 693819341 768921868 305675487 712021189 607562908 750499778 934655886 250700713 662486176 94613390 515439256 344789781 465496988 633924669 784049778 910851610 486958951 285967182 542235200 298470070 980015571 625189158 168432501 714687427 672387086 740759487 408102010 509319671 903268648 763401100 806055593 420403734 767418852 647557076 64230987 738742435 528899379 82035520 189203544 765048877 758980860 461090640 807883056 376387982 690677701 364467387 999883905 952539991 179585282 928361352 899541224 508594453 788810395 62108496 294433232 129158492 973265481 317183590 809506540 416555143 810721548 312812813 203125981 910159800 825951741 159765528 458414515 856230090 542150539 712727953 58878911 858738738 48280373 75889040 737430151 410625336 529047631 867753448 889893321 546291564 210131455 563357822 365416997 385310653 913868298 971018060 619491821 925982931 516631137 131519985 639628849 112865659 340490620 852391423 727191427 828456065 72133508 685535850 777509358 973478057 344435282 179329780 249674034 52186917 484763657 784234240 301234483 128871263 715293716 292788724 156699161 218385450 664396161 333002295 451992463 619231115 842633225 826781265 215922572 405852306 751276351 987764056 274843032 464773747 995866389 65044286 993519180 597322249 910774362 284069539 688249423 757637391 881246096 101328304 515119017 405112210 214288739 482623082 470340593 991445338 822012372 203653454 659339031 871851172 171709668 220679725 428518530 560254873 355455629 872229450 727877929 560188248 792504690 461173561 108497707 990563321 379115480 259239946 362714161 655856979 686363103 510765869 804681441 601880293 876988612 791097695 917514389 133609077 833368505 241168330 173994294 979188337 173892537 968044479 278126484 813335894 702514081 421550983 369697359 387551273 438120933 377793512 144111815 790133091 257157206 383983340 143688452 81673564 879099059 974565638 874884273 671498991 449299055 226012184 760156921 790157577 167696352 458428875 903976287 494020164 366680089 825556311 690055501 307316583 806004639 368270699 834732202 665536834 582867107 86028769 993606569 675433217 573003310 851471759 460087904 638389866 983300641 363943015 797819262 374890532 132686455 905314053 473906567 134098638 90028751 629304016 464031534 206909836 945940644 300172990 425517284 898119925 226167040 307740720 864611477 816592307 308557855 804819847 818671679 38984900 656866965 220935712 576735860 559589311 532744446 768191688 625505810 848852583 229195126 495121627 509790760 803209507 749188068 542855317 314391942 507975948 897000538 357444772 210471531 110858191 696992555 824524152 736771396 972653141 110716634 689485770 105385277 79047873 338760782 557404824 689946817 103837452 356137968 976339352 270499257 422709967 307014254 645581020 211064086 652017912 387876078 369477330 613535855 972681335 826750810 186816882 170475206 714645573 760678611 196645145 764621608 940714886 784824038 387542783 76601327 531012271 748578408 75038000 578978495 153097632 575570511 380400359 808224868 35668853 700581793 256397679 44228313 433518926 186050616 368821959 245543032 82316726 297016867 852856471 636276463 333027646 317532429 490552903 779594233 722896841 833083131 397406436 19848525 158399804 300676741 324056577 155112240 669590436 13273522 783470086 922825028 749378453 457546390 380877358 776977403 918593401 594307742 863591004 352085030 145257807 144061026 841489450 287978369 300340242 147344077 460053190 121703892 328945671 705770601 412659407 182305837 405221243 334799883 676480936 28475579 262125240 317281392 226031019 400468336 988753702 154813952 170951958 364150166 377279876 280653806 872643954 206754287 533050258 314281513 242861144 20621675 523066713 351474854 767046362 637995004 652470309 976572499 559521030 619304086 943522829 155822030 250792748 789293166 458771080 841721017 651959691 885019324 463707445 636292682 635448348 451012937 334110470 90826288 199283957 26513678 759628019 867143749 111225162 358944673 368918203 792742838 681276689 371431467 367254346 825355710 811332669 371166238 177177877 563856187 697625691 240075707 656611343 70478682 95074646 891713099 193715912 907530803 554920323 203803910 360560171 258740703 203376793 300951143 939200102 609814345 631418909 601437433 638576075 699719476 626943543 272992461 104369067 258218423 144448235 851458721 285696793 93566292 618911619 93158187 816565873 979156852 158440239 881157940 171863567 202644013 236064764 650371556 817691112 50824353 92775744 260350647 788220656 316989735 649860264 270606367 194267298 256872274 807369441 618585601 130171917 470663224 522328441 921808219 379900164 47306284 236659746 215314263 572845412 725879476 192242540 251409167 950624243 947876642 292652603 408297632 209653215 217852344 221161363 213749430 449695831 488488353 460544006 169370314 621405488 287036845 319088795 148351416 130041951 629223225 706436403 195224363 82917137 672643799 13022390 573835622 189143024 757339607 580642867 242727131 219391659 748848217 73480408 327296108 507187326 142073702 408690947 138178338 211288600 948548216 184290217 730451569 663145965 906136137 734466861 767999890 326914570 989444881 669558089 156661871 265248768 957627512 423042579 302198958 976596877 700511821 327734399 648841348 616081364 791160365 837824591 336031711 450183755 204873220 346617933 774562992 565614675 664847823 65268290 763186214 103525707 551646663 478727239 504047163 315248217 39124264 320850028 397693651 709253588 816056843 202490921 738060415 559665682 84131895 256917683 623836776 442060924 27387169 918267756 476985896 157337198 629536046 940815540 467843865 705934934 456177876 919967480 879253928 470951573 664028284 261678325 156211349 860629889 734855986 513303820 97794768 463304013 258915275 787252180 216172427 108905947 11480389 970192208 434480236 644645476 301179004 391623325 49465930 154947234 458818400 239720459 19965084 643009553 854972879 565220421 285516083 693242608 126436334 178354049 578840310 612824297 1083398 841235004 498104918 591361226 38673801 413186033 397206662 516555858 707214377 210191265 89306513 120450250 199424241 928500029 340976027 319984848 385241590 150642972 160518975 425340382 944477119 227072159 773587154 185709626 871464015 619827558 275497242 739095994 939701223 919823060 607783542 364837779 878772567 381946334 299164137 515304798 611147018 104471756 447763140 977728398 149342920 780791989 401175049 988445353 447499045 367308616 883953464 346424045 52919949 58467338 242560286 883669332 974920520 587487084 493568993 770069323 596069423 930871646 273198439 140517303 306496533 519484254 998421239 899833747 306912980 784026286 775432779 644896937 992209338 579320241 512370569 304110636 873524101 893887729 15374702 897738467 830819828 257461484 745061924 947170652 211259808 985789371 219269659 604867082 126726629 765250064 820889907 985092787 828714967 404672857 737796140 62880017 20593795 884866591 475373306 263485212 785465072 829238417 736440898 862889423 210913531 943283184 554443661 404936545 106234442 11820834 102823003 626599888 197184837 834090165 832354174 849242593 534054187 91288356 987393562 693134507 104173245 303043649 432520618 788427785 303482449 947202161 585021884 608546987 346994846 600663459 873913158 884798089 683157676 109047408 800283282 797757523 855398582 560229864 19494918 631981192 515388281 2839497 52711766 832827946 62008170 63260193 379845102 568759871 642283924 865239414 806466494 682420182 827732251 959248306 260914770 833306561 43992909 9280845 378998863 710533976 91958950 110532246 4103935 880381688 841386655 496369574 917417696 643462942 295009305 220334233 542855278 502031278 12932573 585043396 959670781 744149775 779360875 22167016 964795338 45973722 225133356 24722079 251653404 89052675 300985696 621888072 261725929 721617877 106216759 777387889 330485007 892216269 663480573 225781044 760238234 790943438 345161527 783863416 147721338 430963077 911033977 247734000 188356054 780208892 598671033 609798757 635403575 784514327 745835069 559615345 233567447 253933805 445520783 193739896 110439063 941282698 652996193 11210604 753503525 924985598 671472921 332519307 770164241 69167755 809534745 186963774 114488227 793283337 104182006 906385185 32376496 304163317 323478681 401055438 35845144 478762227 808226912 795996559 667590166 407999422 336282484 828127644 186371850 519902954 213478312 761614540 671483564 672555031 853310398 133212154 476173994 498712999 493848269 278565936 253101626 746437951 434394388 693978861 811173664 54228253 973282159 113780632 504672239 680982904 410255799 912098269 899360171 41523259 639833708 773482110 754446691 268463837 144493046 235187628 69479561 267318023 587027589 484370161 856614256 227472645 809311225 32572875 787230438 731167723 933532039 780968347 870360984 953684739 884861308 317161887 872062917 675164089 582801879 839160128 54064323 515343029 786976695 317386272 836361015 306335584 204989207 508833352 546492937 44568292 375574345 610504109 410221585 333001487 828876014 790458973 680212770 148901998 288595498 481032787 273333881 329201 311959229 324608529 496063158 646045801 227907352 587500579 230976246 880516688 348587661 792503585 863421570 324487466 559129490 229389884 109611837 260347975 364933624 238347041 492762910 586153872 671458483 259291571 144955800 238940559 950347176 344879553 454864063 604750322 348559497 809062321 467463321 851886154 576576974 991998705 546786682 790732375 426010437 814041302 192511345 759141165 790261574 202638114 852881331 741734800 156503768 163422069 263977689 717264170 399950758 487954785 876405722 628819618 88561398 585723364 967229182 357586205 583553169 97201182 241405793 480177242 935852737 907401105 603120111 648409837 121486755 866089406 486327289 565209427 448890740 808807816 103912639 236570772 758357233 758930367 1168179 243725454 951623115 922069164 281236728 685393089 732987684 822136910 24837642 774395985 527188496 763200287 575497539 892868123 414881631 988736843 524759088 335397869 458566637 270729230 410213247 20702493 46348508 82916772 262174704 711251702 794620852 520587036 818451569 189205596 830872447 28027029 689522992 274912977 984178009 923976628 597212114 334759599 815639536 900652955 570884514 297346895 672379508 404379286 984473273 548286784 20353602 857061283 848501822 188962920 644292716 460078298 242063125 839442901 226317781 556882930 723130613 327261639 99020522 271498711 394349308 232489097 683008309 197482478 322643654 16308443 237915560 321269178 570198622 98595602 414650365 780124086 847457694 383847600 8142391 678321917 293353928 521441047 303313710 180450056 494902539 627474410 927787355 929819052 677905042 482462488 100768109 47367470 765472894 185962530 873450440 952307608 351686042 240959082 815503596 110390433 331071343 542103287 844112018 950402669 322428522 474094251 524499760 8029631 480478226 919539621 58371794 482864506 287934083 725240310 989148389 535517704 598984922 814858862 935779036 126130933 548759027 631176461 286587258 878901527 598209419 742948494 445537149 255241612 177038737 15768220 159676425 814726663 280480314 583758974 677155035 491081604 499262339 879740587 248944600 44042347 640949667 566934975 27380425 764457860 97938933 966956020 731194314 672986973 538249151 606737731 805207337 382963920 378259709 49059257 3409678 192754730 230333501 795468851 923411511 94393856 313379705 229667789 644536599 939523442 870312606 188971293 9127395 661271469 935440288 59964536 391133391 234272106 181241324 401710114 939683587 464544328 467354425 837200498 536030838 685466014 106401107 282928862 188990558 499999268 758926834 37436028 18694511 736083484 436907261 527792558 467763797 802177937 720147774 858774054 838190146 880270772 194528839 679593394 234451608 592799866 441778039 988143904 247554885 932527551 901125285 478459224 939439326 899513828 794321259 916935024 86523642 414999360 539583826 791330813 233625074 117650952 189547927 6583932 371676910 822753778 946243463 672334052 145638757 692333159 733632940 648512394 823883153 718449913 366991969 757028372 635368596 980244926 665251521 806210133 907388281 332408238 827114353 913416460 794174457 541627512 198773767 901299641 687174397 132044468 260942581 843914215 473606405 308990624 741309797 705530517 430244174 53966845 369625994 988356756 313385680 818357763 747703565 665588126 312039617 264331472 966741984 571498867 576312439 428579860 50455528 667534990 525943036 76915379 694731132 593715532 355898345 573285071 115002461 654708653 75965073 694179334 884034268 787806728 445538664 162123207 876985660 263336741 936907779 716200818 793450815 514923381 580445281 16456939 709346378 864612977 741395210 833454246 815292240 306027675 103484099 713407923 884212438 713350790 965551869 486193612 643017692 75588044 59722616 967570428 382566574 592833261 724791205 474373971 224854772 926825922 766627953 975559057 923684856 990182828 710144331 235277245 912089263 423301976 860969583 732498675 269575395 45938166 59253373 939474192 343620507 725198538 84244345 164969852 427562330 648626364 948354549 319957494 364571316 961841323 380771785 112396389 152471007 658961816 33415033 818868476 309451507 461538416 523250288 785607741 25333635 593865719 613438681 850622931 482108790 946992349 406582996 290954855 316237970 952550736 966125372 724869136 964054622 731631763 73698190 776014660 43338277 838240148 914326114 788549647 155137768 205467431 673442609 632445940 572216615 784717694 256647824 800230074 86780339 415143133 565677046 142347140 302262051 312666682 283226709 801422576 878262730 777942774 387820481 694352121 391934424 402669486 183883882 524725428 957772330 352315417 449433082 885880676 226570968 804120906 450380841 365722502 86920701 450306543 361304001 658233286 148166492 723364849 325503634 260962610 251794225 369936022 615639799 959489519 20368373 472939991 365400738 471513921 879944367 517536805 249812493 320473917 263638563 612182824 695748312 629224399 104839777 618004826 766904001 652307826 40995474 653654152 365084086 62475839 748791861 2874201 781011122 26430596 269374208 832997980 40940761 446359163 511420258 449078286 220416119 350015345 893309103 953762287 395616485 893781352 969475456 298351491 699133827 874175515 442202813 143623953 609479287 492796994 714766057 88229921 824745877 274646422 536699217 728735470 587486412 650383703 226670280 472646712 809775702 603910870 279637533 251390882 70681531 651558731 149495472 564260452 477382416 941989763 224158390 297189793 63303470 69362308 850646417 641006463 367968474 614404337 134087575 675037032 138759563 597744159 39858055 800120521 554659869 64490081 200141349 702395171 624847419 201991068 898714305 287699057 133309746 313311812 448658135 231403573 999899041 514210788 329558358 277717737 85002329 299476262 373503020 463671825 96626705 762805031 120707387 775848538 386238321 628487272 346597790 460603280 273006726 322300253 47170607 927158910 921272402 872027350 113647888 698033343 636232727 75058453 738173077 422131836 48510301 991128315 628923576 910871542 733447624 895931374 517181544 801502342 422463170 159166327 113102545 545755202 530700255 268606430 687322915 177780095 221434018 686351626 23684614 578998326 477751012 892298141 533142472 331452319 986784295 571394778 539627927 809622546 51459866 526615684 104375404 202473320 275213802 533480772 788845010 938325434 920252134 907505356 736187799 863250384 605319049 225447219 301358432 708021649 948084105 735736530 763035295 242575710 789419835 707742638 934498356 38934721 55516516 539093580 374586093 858544031 921273185 357514631 93581376 797364823 681961297 844436187 764126577 924663000 67360753 906120148 780985739 320712378 55464804 523783384 258896586 576843450 85184542 558944216 674544614 559701002 654270101 404358061 950889087 466626918 584577090 63775896 205742945 161264516 777224815 783012073 762624863 170688937 491823864 499361844 249579936 842745377 495874226 537512718 857911662 802605179 882146958 801847211 91430954 685625773 762251407 506847066 815764564 59783747 438818687 619980173 757579199 762375266 651168107 368372896 643853558 298924869 767786926 661594438 528018248 836434367 17083084 679317964 482091035 14159654 943316791 567375957 624621396 133746191 434359735 462425337 769379736 631728035 822969949 687332071 464961594 451498895 479227960 205429826 258127131 464626130 718975285 81598960 987036779 260440274 397871795 56302095 608557325 167989344 107366918 513383454 960319744 469017696 462722960 257805204 550422091 720740328 745711252 477040624 930538897 195870094 352597559 617715929 63590606 553464897 400404677 842642253 502511495 389005131 336836205 630446244 878733906 310272026 270540317 481155142 985861621 777914783 134093908 684900851 992840911 274638252 569846894 78728636 182053188 189045872 655047757 202105540 847459343 986232084 710136445 679481092 401409943 974561340 651581324 897456798 531713470 72993741 547340581 26404964 290995982 280052247 554016181 429175769 207332348 938334240 865150199 351126786 796823370 813599559 290982943 136591329 692807752 383614094 887203005 313122078 574306051 455449144 956975740 63737756 625281977 934828001 26487191 651923585 635022272 498914584 960960492 691340242 290947271 26861301 351549111 772584853 79052681 539298929 268909343 555381379 429008990 217230247 301097137 709483088 908838462 193771456 934311271 984365086 586369857 851204438 267386400 277782913 176923068 774355833 23861568 738273031 921773603 818431742 743004932 231347485 360922497 327585379 808101640 537113228 224869001 817406196 458064127 438658262 925517221 107548454 350251293 699682639 165357278 689163932 260724050 596359446 812446532 684330506 728411941 332401443 315018965 108388468 63142812 67958779 686811105 878503652 209809980 744127043 189757575 413265863 523321924 224697578 277678838 585750102 157875711 536594643 498525785 228018870 848324944 267088425 872371009 331869634 117179921 609273667 35421926 763922700 777036271 946533926 441303556 138083302 530827811 900634639 544877195 503933571 118599741 902237643 410359973 72287938 969574622 191757316 507872295 839394882 407045324 516543138 668565590 79686268 141384015 67774694 920499515 547121334 426177460 511783391 294046489 886495495 547180937 417613857 82686322 459545363 496958724 259847570 239309185 332883195 16060286 68515032 260119133 391440656 516369699 760536713 183463635 383667988 628813219 960869830 34943673 468081344 718713987 970054306 464818944 254545642 872517240 256265561 190536649 166743467 802123518 578306448 33560457 256391413 378456428 262864701 732118094 370126168 921502955 266306696 195786043 409226233 315890800 134790684 743019388 368541962 771773225 35392265 97947925 452574352 757578248 273966708 45646000 737105747 980746707 948929748 898135932 388121371 466994012 198600139 464304099 407332315 284732719 39439083 608764608 317514158 764750275 792794948 221359667 149233007 337694134 140313865 696826589 311838559 343507531 798387402 820799165 368601117 640058441 451403234 205359702 623602020 346885953 997085454 550327796 104246533 868071367 140089375 84439044 290468269 591457617 461639264 481266159 37593157 840106214 835056139 514383822 340888838 690879531 387567793 553570683 661332181 422679568 96795977 39512023 771083007 51718043 252736928 777151208 158063765 186188294 836273886 132499597 787842216 463210109 720766227 377248188 940883669 983152977 80708313 82237447 377013934 266282507 614801950 903898889 292680581 833993577 269944812 73634693 872489964 462106447 101764863 80531144 281134300 378346958 821667297 762298767 855441468 779446508 316707883 299464353 506441292 325049406 2991371 411960217 69713309 742840409 489503599 280751846 356416323 791975706 680836016 176769574 751642606 755310660 987173863 7545044 21240185 364959130 240733235 965805336 142729078 713807592 988758920 607848000 418269996 69934098 860583382 302292069 556368688 201918011 385427665 458871082 563908589 98161886 853101742 618619276 264285092 631656087 697738363 230879516 548055788 634373482 40742790 680211505 12343991 248905231 932275262 383569944 993912209 813117035 860458520 663153755 384357817 361718135 581865576 857853853 475544598 100982407 815004706 486854540 557458269 483322416 787658070 229662704 593265787 458048639 369330880 506344435 444922869 939149032 267092319 756393944 629897891 848767260 103052821 335572430 591546795 191708911 779454421 855209503 54576384 988322127 363474625 659317211 435337325 35630583 288141784 611628008 567447214 20920816 947182641 956028776 888270661 93253429 100107102 266194082 458430996 458255212 903384427 904952542 331637537 733326430 136497824 335975913 895122786 141754195 4140303 513455821 461536773 315646680 830741694 512507845 392041108 52607548 641975704 246850238 240813633 919195669 666394718 439809059 694637458 763960790 20687888 363381750 444655795 659750436 993605252 205615181 351747299 483695816 172771861 917030775 156882503 207445129 1410583 82341385 774129695 298576340 551499604 726398283 828970703 405706159 284737938 821547132 917732971 894368682 49318455 35946558 345995264 399853140 171380940 659640453 425640063 174921176 417950560 803533760 260472243 477257659 132697149 933576459 517326478 224441130 396693836 169527902 766893055 326070919 822586313 801204214 778947320 252636213 768523190 650416297 411581916 97637807 81555996 55937970 458199101 299192551 268778810 368035618 950797149 461752767 173662469 314626434 855099562 46943867 501297408 376944297 999953278 46503171 952392073 324530816 102791779 155359260 993695817 452772398 869592113 834867593 579257725 440993871 884946617 579733446 611405682 750240040 497538907 846878103 854214111 64958018 833626256 886471356 596365478 724061111 208884867 783016594 952649300 104524200 248208856 334155833 388949102 538705753 708465628 125365548 816360013 954318878 537299084 997801040 574049132 769824029 804147841 459776349 625547030 681184859 986902136 194329399 44191635 434153788 880156488 205289346 976268659 580606620 907740039 957759576 476891713 451240337 928138126 247961221 942448567 908358913 206338057 341297365 321163778 226210458 259203201 306470499 461448839 204864009 894479017 457393816 200285781 518851037 881155451 488092331 259570597 82843995 64472738 691419642 391286530 914532299 636702884 481151359 131098732 349684901 997654169 810869787 151633507 162005078 938217608 293655003 466754244 801557399 104540477 692223668 850954465 769470813 790331437 473468207 519821854 55041251 477832277 248156342 28727213 7980549 871191711 912210624 453102407 418806994 706785557 932355172 735428418 136688109 606921543 209734650 690869047 606755374 34664669 137118562 355623416 898782954 934083156 606212645 62979966 395794012 662140569 690064620 827220631 931644779 433135690 497931241 83679395 567481185 418974315 922568600 542965717 739261263 128313118 941728604 710539694 566072922 716390286 327050167 232932872 307626176 282281623 154383328 36971158 409364855 420979016 699363766 623765947 583745138 479619141 587105259 991155627 209853183 491134888 313231361 706121628 750381812 449091992 27865224 559178150 960893532 940106795 171555285 199596355 729680479 391773240 414202650 319978367 937566286 319777156 626725798 484159636 862157211 445721849 205349230 713896434 589592114 670001518 484638427 16087956 404446321 510061415 856073181 512387854 203308652 293529083 907809393 234134640 393372878 151848791 802046336 848140755 755779798 782182322 438775169 467864989 661833146 334002072 630625937 142752880 388044112 43476433 685609160 508117930 838836566 858209761 500627683 407682889 864180848 889359934 4705751 742095009 977942778 13150396 17058046 264011374 488928819 995018708 629993465 418336898 594737283 196661888 452496172 479198448 902190273 218080970 376748504 38732954 946334480 398686267 769936728 481951225 715283803 316897856 899045068 517892201 556216602 470224613 288428747 63425277 380225063 942151243 803325016 199184588 667458136 1288165 313028195 385685311 8507521 301584783 438102701 864141076 579546880 603058522 403647519 79361652 478105213 706768109 378179803 333352073 228024182 334784298 97747114 328144158 667124147 375031975 614342730 752644311 500436488 872562483 273554502 140493682 788036016 345139986 604893985 610515075 834094574 460153843 313627091 37599260 231756765 874671989 79277717 975801937 546336829 639313193 89990946 48973280 665279251 123154553 912783979 873802968 83986003 638957046 418568934 453893287 456617372 963326675 353107058 995338039 563452579 997071406 654633136 305562412 455948988 194249898 65875259 976277418 655388457 505384586 638972919 973449467 634072801 238184912 947298931 520144827 324167513 923395424 914905308 130181908 927113768 974232403 159291461 681578257 985489723 905059060 680192151 456789042 174932415 148112473 604194188 399183370 336038898 530190442 770569841 19610351 496163142 35257251 153663124 536349667 939902712 326536236 619802001 948653082 676431948 368386386 917822672 301429017 956720805 122921674 892333950 247800048 832137135 278986079 430319046 117599435 204288032 892866618 587132825 383325462 185850967 385420530 252965374 264416995 341814356 314062788 921097272 24027267 215302442 679290673 428279747 799852319 350741560 126629102 615857721 960639434 319971138 881896835 601849129 462748396 423653261 346415660 453702622 524657204 614437509 733721325 799720280 948918316 769452211 20623689 94568100 146092277 723646216 686491548 485589058 573982455 80948302 765181152 975960391 955119162 471585681 575414365 213867864 583773223 224797624 873178402 30665955 841588179 52007668 367439782 531359148 520153388 611935722 322751464 296518273 578647492 402553754 988077462 269303476 203149688 69364068 701232283 197450190 838266622 416641212 856673718 526774680 512157809 619271338 818408359 223423514 4977426 595569129 206273281 45840364 97956325 792063515 30365879 643888195 200001707 207237954 440547543 325640629 438058549 811664990 437330251 837106521 566039273 429959127 101120519 87250622 852160760 597002481 166580173 50287254 911271222 18381278 583099546 276612445 323159656 645945064 812024704 279077177 706967301 973309654 668953674 437413874 559696969 999082081 443363905 400103880 385791091 702993151 913633093 291193899 576222935 636145005 708832127 390540621 367627799 434483722 84366215 265236068 957267958 72444142 914174637 811690774 286574859 369214361 60375547 633586995 612635589 762499297 597201943 316905595 729890686 759281629 991893026 372430688 324854552 387618360 960063708 335752842 26437803 241136622 993750462 288887662 705041390 601116680 977757023 28789622 553761187 485786160 205508913 344176900 850133329 381531886 453186515 465437570 538005292 403783624 101081154 293090803 801309113 684008092 353624867 848579632 921627422 773606035 729253215 961448968 285764207 922312986 550250442 174535851 29345708 973893791 328230839 633034814 21499111 353318982 117575960 830073111 330959170 53445855 946616331 519030169 167517951 472833924 787898421 157146009 271012007 182033574 241401188 590946651 693482812 868766607 450573515 599892234 370760401 859432190 453496464 363277196 808967675 242605084 881659083 521367767 555573198 456906245 958282513 438039586 316827107 369471628 62501456 225810021 368567281 470493217 40847781 639845819 230694613 890901477 882745703 891353824 986286608 735029019 58547346 172407130 22959310 263277776 764886205 202909855 519191043 103090717 943896243 201078899 538535659 970328453 213156394 904657975 616774499 670145190 233909 144222410 93590681 360502182 908195398 465753855 538001436 577020721 941396653 267589727 987473607 4558195 901604204 757750934 123464059 741329172 617030319 71431254 952118661 503668221 292746803 223868902 891982647 596885960 610139018 806830978 780678587 472382222 385065388 703704395 431040646 565103288 931366872 352816138 807192 6891632 238258311 675080509 965395220 755452166 439257161 449203534 733158205 692521960 349907360 696779880 565032918 852297802 21835419 531596549 977549459 56324571 947138947 533306444 57611698 51118836 118405571 42839102 164465841 813695015 676435996 416063860 301295464 394639601 833137696 158409116 324285486 431875683 451381916 462578196 166945681 95114127 814377447 285078602 218023844 746908726 581396251 164342216 716399467 354061562 177857524 850073106 609023583 382946485 206899360 508719515 625725098 8442041 73125579 34545129 980312590 391284863 379746213 326793298 533566123 499705332 377388394 619548343 891473800 139933163 304522024 792759800 115524822 265831586 153352737 224624657 13641582 825865049 148062438 49311537 623457768 180108892 610087415 244659596 486676442 348645263 729196593 473670017 382154319 805832019 468296077 545162616 665484579 416590057 441940721 845697462 498999862 883800791 802557016 686223441 903342004 886540120 55527189 378272320 246963069 55750331 155707459 942675241 302567904 967966898 826955252 826137367 734412843 231705548 744007107 177248524 138716959 119083000 478075530 652052242 595152551 867679398 249031599 639510037 580155385 628264311 150027003 664467607 958448388 280252647 766143667 328927010 64771011 127405985 600449348 325564549 56479033 28700535 312765031 137397803 529846244 392488006 57717753 279427974 431619295 492079006 909848515 962709409 927624718 753546674 562929228 86237387 989638377 695265959 619827940 855503472 710046418 161299359 29363637 425710981 759639954 837565873 495683692 724291427 443940027 271239669 22034732 850220391 814650425 287560677 137959596 452823088 262574145 576228279 440027321 882547366 692722143 172071141 701724020 161328227 273810334 589984797 99581131 996751759 951847415 786604130 781778309 29663452 128869758 988126492 566974034 203013373 231641112 979326829 899818101 587292033 238774464 345669358 247994895 272575639 371669557 938239333 972454857 534456472 112646831 90596603 871058021 410851550 387192886 7943375 631484445 45087482 514219482 580380259 799913543 327170333 646179120 934393854 885753492 777087565 161388856 511418979 335376242 77692559 361068402 960492882 470423383 817304609 115824389 991404200 193635365 433880864 992615543 880544094 980604829 21233126 513357793 369507763 646819964 652518858 425819405 665633756 395573588 805581742 876698321 72339769 754666182 445337767 699339609 58720536 165719223 704200625 72306036 272204316 194936303 793623704 1574626 847048350 305185652 539996007 907286664 18162290 37566250 456615613 198524258 926389223 20315537 753493523 301954296 813927546 479868822 395037168 495264029 821878478 114166041 15642972 145215734 664523938 944780996 904042428 847458327 108459125 445488045 589105259 537803105 653110039 445203057 993353170 23458697 666883435 835870770 947214993 567322965 951500898 346135356 731938775 597457386 282184663 425601889 326465023 670549237 163668440 416121290 721314074 506723881 955260715 782545627 653183762 745123733 781314127 512549794 875226687 720913212 152124876 358726646 322638452 951868445 213676598 714550244 329113260 877332357 384795438 477195947 587726237 325722859 183333764 187916744 192105286 918954167 400032978 513911048 326193962 942058447 135984351 193655815 295786132 966999034 566155503 30752029 419767949 159536328 482118599 268304324 123113249 750051769 191684308 884115882 401884948 229619368 766402546 56077922 620652371 494886660 426618643 465091691 621369725 828294144 629204725 294506729 629246669 430380292 726677502 455820850 837354886 821637724 74138053 449840623 411234091 348417619 658395514 496675562 718329913 631577936 317042471 818960786 258122883 28299900 497566422 44397723 276644488 758997202 76450476 251071559 896823962 931293938 469701628 321952662 400558890 244401986 809830815 74330088 299569489 524048198 928401799 652849275 153087752 756996833 97646829 1850786 524187079 897474398 577107092 853166099 902771011 184661034 117998320 217313029 60401432 180616929 620989931 257011376 571251578 895158140 910187218 131799700 760790862 587994985 626397515 206098960 97690976 937177541 535880880 390424066 509598191 853014440 939599848 622020224 513934765 79393140 188420343 394887472 887017685 272669738 333780523 282261762 333962530 910466000 784950370 487129868 959730647 526678041 709875785 899846574 440380375 423819252 360735658 953947258 151062738 187334364 575632496 243733329 807153980 451755814 478319348 629677977 510686118 304991739 353128890 925889945 231946140 115553835 765035887 546636493 801891472 274412948 231653782 474792864 329720098 500418102 316558989 115401192 745846945 787655669 74746106 228089034 532711630 594777089 966843870 608066631 489565187 2327 676518730 421761514 357260907 263316357 479482306 79889436 195701730 36560857 999601043 822261833 959435208 535592152 312686912 603967471 732353252 487515991 605954527 837148295 773926754 399470529 274404164 563922664 481691323 779671785 753480075 111408438 452498051 972045426 927090386 356855639 705512944 169619217 423298325 587967713 628940352 687037474 307945169 178393374 629598148 535127346 55829897 650402201 136459640 543213244 174141908 975087300 732491030 826572908 610505898 265337944 725416138 416768202 776363965 485221653 683909851 9684324 270143060 608809495 354663202 481789653 748571600 617896112 129952699 506838321 185253691 53973952 666841199 967679714 121962926 875605649 216281089 440681119 864107610 338151951 811793508 385304050 824609326 536188407 677823557 386279287 533938900 932356038 492594376 741059002 71281398 551479727 337237496 700721227 606056364 70664576 273073217 257358213 521674932 285760093 791781516 745407650 896954094 327501668 224016294 331691623 997893134 247593539 906254544 474459551 888738907 184243573 579209161 413076841 247976314 289899698 132937853 673197281 443243502 292467977 449697435 910164591 159543505 666255433 204060953 88596411 184167862 685608201 46965871 871740883 646598304 616333937 823488985 381945140 867140196 761906587 467616466 187688209 30146254 94470348 695722047 265361783 663928920 770823494 623990808 816749020 207470489 673971897 817227738 188612777 546556522 799599487 558292883 928428718 413420568 609334468 267514994 663375877 88513526 577463356 128713480 145785746 965520189 79194372 969176365 558749488 284446717 610912598 698788629 141742227 992902310 622391671 345431698 347134434 967452409 612475415 793413214 406586737 741199945 12354320 48050160 688256997 970006386 777878219 220351711 10194941 331390435 980538591 497234636 37832721 63003852 947628455 187779693 39566262 295285718 942310564 451622576 571793587 54243553 576561133 431169179 202517379 306767557 184553114 441755440 791855699 721966079 317134453 771866017 881634303 313062167 136591473 179410312 451549264 641009827 20270038 173452631 890636728 942245688 71020465 582764063 395835833 421953883 682751424 199033898 631129755 48377384 455750357 221698928 43847924 465580485 343436226 936019245 160501087 179530756 557775888 521847916 73375823 846205516 157278389 464495255 108416341 649826848 491577260 565626765 454177055 784565123 875804261 855053232 48726359 531009802 221341141 736123251 6172887 315880355 142484641 388702395 247398370 949673478 998811929 945187980 469740066 244711930 112649692 495932511 534984862 10390264 107534135 654782981 96902425 299352207 834289016 523179952 933477856 476873065 481082981 953892652 254326764 234809748 967962793 564704995 455635448 776485177 278044753 839937037 247360995 900636131 605936968 653561403 627441477 136909971 102959549 911558615 434698819 216935344 979470689 281300649 557195860 314478247 221136027 331861578 624870551 222543037 855810019 840165453 393112189 253686592 240826633 789032028 50137458 894499150 728785254 349736422 318664234 587612699 210340401 752343207 830705574 229504808 349741240 290656175 656823822 241380447 874823840 361876130 229491070 38095259 665375593 240531237 725407370 417400333 675442349 554716258 753407873 628153707 715280049 576833044 572025021 273990149 882866977 569246591 985786280 871349959 545970646 816615775 244362250 235913450 308072448 141958734 166202208 385520693 748732171 518079517 10369114 354652749 553638719 56034512 990482291 178893972 195299584 612120119 507067275 278174319 106862049 112862383 987804064 306457242 813101269 375878620 273483007 650084070 550127509 293475161 245305080 490638893 458204524 334875167 240158863 427602415 623187966 409775877 424373468 378218138 741257175 356151910 135351557 915887115 621530414 932899857 613492239 849777372 12246947 349370511 857094073 769049679 227609828 224471190 184926387 298223787 59750451 353267842 449716824 730765928 42899368 1664302 414099229 648229594 896849989 940749343 348117249 53018194 965467359 741263619 210650684 902700564 188007095 227386849 202739333 673898100 650815390 175201185 373798236 496896550 124272795 909237125 104077662 19406652 668049475 532917903 877080853 322339503 267129252 412000302 393030200 523693201 984260284 47364946 33636502 785905489 892474198 596081579 724397015 567668197 62537139 493762581 171472991 264346375 235741522 201160871 906313815 662065840 105357869 551432914 927583998 952535147 592795900 123925153 938757089 953277003 188748294 701882442 546209558 381700011 526133797 49540789 930900399 467934921 957776816 148750778 787751454 585939428 558838104 668384436 254812633 916872794 772284177 676395841 493454679 938910128 712933984 713431755 989883442 104964575 243752738 757517431 770269269 304773488 273718163 524235581 830491177 39105369 306588409 342020182 362923576 172633766 275081077 349111163 326323109 280363946 940385606 362044418 504665768 121189399 262608515 120319878 980070213 280751993 533181041 480970113 177250895 991163591 857890335 429299709 175465247 743674599 906267283 523404997 593042262 854082574 195294049 381695689 167197296 905553689 460245668 823197875 45528572 497413712 598994881 192532299 814907310 354957665 25375465 948463485 338186320 964388318 70081780 782385866 494190713 611626259 65049321 144446993 39518028 312073040 234902749 261896011 939342107 663675542 579697732 886213710 741161110 29112137 294595320 690813144 732389880 906738646 903763239 164349942 488614295 710043536 966702014 901566858 859400601 268099046 892083086 803836121 585653208 490603905 552954362 330847335 195435440 365490576 225247236 737545391 631695821 968014558 245684486 733054331 34381989 975693505 170346800 563388541 146456689 527808537 505067915 617068770 300856950 627592699 876685257 882077283 889542485 239664297 630800572 21597122 142973416 150372336 943595283 679727501 85821438 677596994 557970394 246356800 531913520 223487582 755105301 769059937 900876523 245021105 147109384 42554622 870445575 445078062 188633080 285957608 983698773 440125403 78276533 810500811 816076618 361508410 525135409 968548270 330460857 589460806 231462510 673106790 819541200 523645878 329564819 627471138 239500215 855161285 943266482 156278413 280463965 754407438 786164832 518725654 302420369 592135571 714559214 622176235 497126190 978816025 75188710 365524572 939958736 265157334 159810590 595996453 203028820 818390721 961507198 979631454 909897329 726323010 413085542 828842372 142655553 110438215 562952267 237942496 646968524 814413141 131335626 388349453 174823568 320684862 664897275 761289226 824766229 112537717 453496540 177888392 629073813 651461248 348654302 179437507 142217763 19886346 853327554 996563530 549814971 335290566 295985911 574774571 730184679 392915195 234262342 581425261 858881115 191961298 800994656 435087829 206898072 100941997 610521040 676042712 843417749 555923518 620164762 693059818 244650194 470082764 469734662 418666150 887339426 943305030 410816217 133882511 431835865 210191639 487075831 623548442 482899281 473562179 258668473 209036024 581723314 659011012 683298526 701967802 85078486 610868380 540682574 310738694 915442519 939576259 460475078 390207280 442183180 856624484 500346313 620069046 239960945 712661680 948472768 209124271 630865652 393506540 404088937 6449451 812668890 151596765 102419296 506977655 523491268 266311169 972932589 912497786 534756295 449794726 797869286 871322469 536779306 452221087 968251436 567740092 467050285 384930586 300532928 756081849 776430952 389980490 855970126 617159501 851880922 657327784 29672182 450697353 907518548 842014804 12449190 798782184 352286591 401151654 305640034 105528474 910118533 262883289 415882954 701293786 166539595 691785561 420071270 21562731 252653429 796942375 364346018 515987043 689612297 683742204 694967109 522054335 897306319 506417566 187587537 777671144 685334810 750923090 92806582 722622779 838698360 635819242 355281204 230605310 266148155 442121266 521160300 436040993 991823734 518159685 796070772 25241064 190834751 877953406 329591841 299769938 693821674 462899907 260581527 27203650 781333313 881607541 401434763 643077154 472043642 185862860 328478917 541651238 588265931 132732618 300456488 992589322 247447449 79148977 972834728 440913388 919954188 507737503 423942200 521510856 834053736 360273899 198012275 975725326 99347687 955941922 520172918 382460760 197080954 804482945 964009411 314296040 289690314 540402133 485919598 220668889 214521165 307231578 623553436 235401717 994236268 702033321 257213588 838317036 356675451 302355556 356128800 624600806 960397758 334862059 957858673 294608113 49878577 518278914 397478660 379151644 606697469 740820074 171106602 508348271 207059104 942034797 898202325 627978602 278878069 423300922 114538249 347551623 799778200 951640099 11981354 920197930 459099732 669549052 999251953 817566221 620410031 606351765 927755045 779774930 49602505 153643297 238274890 723649277 105807012 212788026 478509609 336160200 435361412 512541101 610084615 18310911 545819274 547917095 786628726 736956482 502600875 225710787 272381005 421355137 552271141 626220567 275519567 264069342 819529871 850992592 533931079 265236114 564173584 483858525 9351847 298262043 779641638 759420054 478143205 448202298 872453966 490564473 307612002 605389547 9035616 424942472 40985054 636996928 354250611 490210814 145650422 504347384 483925002 500276312 477034512 426824659 217335950 677325817 379296715 256773047 660267359 688250763 55360206 728116720 529092449 323102286 37710208 832673354 780226994 497272208 33187670 573276867 284988098 707032189 303137615 410154631 818177011 360906105 183797967 248095897 20581435 803304443 809439975 455457192 250048444 254067078 419138834 65001162 161546679 791567310 554233768 616075651 311425647 187842848 381964273 149230828 240128398 954253640 969818348 744307812 554944368 509590495 766020983 572843264 529857775 741112576 19925213 71053430 99851267 755626897 638470614 539884655 21087575 401020780 818627878 538725673 407950203 753830581 311517095 104854889 378577351 827971537 835442250 613170177 656829681 44142800 306245044 601756294 831642527 957023492 946299008 357009867 280011094 176364844 653758586 101766618 594343655 768047822 839943017 595961340 304408777 553810020 478709111 407247870 801578455 650652313 687518716 352410870 482607247 275092107 903435068 895026066 265982447 258901642 896704622 838668108 905328452 794069708 142790464 856380052 936135549 211756412 912686111 303938360 106010177 727147261 925690938 70308849 669968292 77684870 456248445 317292540 609427594 341870951 947605457 463478729 360404179 597287352 486571714 573753059 61617987 575625895 520799326 751821310 55088406 744512591 445366227 152452051 961563297 175160979 395825164 322142981 451658856 612437495 992549508 311242554 551237197 644525697 192309585 31581736 790093434 916724513 74829919 550968581 414345984 175167281 424690121 50429633 692822787 976318978 251768432 927506310 193535545 229834863 347427548 973747388 794696700 126792902 969222546 453870948 865498698 317528868 727074453 913415948 667820867 350323408 251826334 710735997 738691575 427547945 430615261 187526242 734767918 933754406 598493015 524443890 439233645 429647228 315392440 723259463 220740009 745799519 694293946 956193658 292957333 74716775 470352985 127922109 122518123 630317285 514423134 973135532 927888020 825161889 79052589 668272372 28091761 189378838 781633201 57667582 329002796 65072857 970089253 117005228 494013693 836974267 129227438 122815901 823323039 739976421 930048497 84918256 233324945 316084702 688188198 942514749 50057667 760927596 557195977 405699309 884482815 188070132 911398495 879839899 27201183 96943661 458402878 159274932 818239424 902271717 720750377 850769576 572446205 729768475 778075105 357753160 388905773 253949040 492732822 623017197 449773704 468174416 567194880 667447276 805098908 455439082 648245427 969913561 36506898 235110538 283577259 821486617 735643022 688773659 137592288 219724957 233439484 2543654 13965170 558728009 933288909 572863077 333327670 7425557 500473625 435535559 799930435 558950016 23207329 974613940 767839126 215287279 799591561 139851604 577100472 803278153 567881261 841700905 708734027 269015662 840545547 369694667 849719011 98188708 676968119 76718307 32188858 772043350 953150673 770096940 833176999 233988287 658234416 152406714 405071143 693710254 300201448 497106319 963857114 122384143 621133277 585486099 627411683 855762834 161266918 193397236 103517398 658445538 67351849 203641678 198198570 789846864 78314113 145601917 306724226 188948951 978268098 815322933 696111486 96766299 958654458 841935924 121726581 448324138 784947878 199609469 431392380 574467547 584224919 546274938 327219722 599638199 794913054 21149528 535989854 857826854 936708156 831388061 898821036 246940950 949265407 203961211 541859487 206727670 829000820 277390964 256346928 839668781 143701103 507925591 390370654 733039754 307064495 601048051 520914347 509346338 692512950 326387487 944621012 435524566 631360983 895045289 906161298 6153159 624401368 78713906 242153079 823434142 633744517 627173230 102575428 689918526 247039781 534523254 731308771 684776877 304628617 336299512 394858332 769658125 595614610 145111684 489634007 126638366 826154812 360101189 282199629 760631590 146344220 615454212 213804906 304707363 527400245 630145120 997587796 241236345 534632797 259612090 193294736 334691203 900366163 361867157 116338023 612157703 922602375 182362538 619231130 921168908 594134420 877278043 70213932 492759193 970931557 88994650 785533715 948174510 503111940 373982560 557508770 471548832 138535732 789304888 419106944 120630521 337327209 800959336 224564319 586649333 929455811 749557724 138431596 932208839 747902978 161204274 847723897 862141234 168394142 805471926 849520367 612015389 803337840 829494400 714121535 470040316 948497803 546537201 823248428 942268589 154925245 299005847 167919549 285072109 314180813 673928485 260232326 995864371 323452735 804808323 955653749 513407732 957740822 794843938 884068897 663627333 557308046 853040700 866665166 724445547 270236739 86402580 903157169 162292306 319529219 734262503 764052991 73522863 467184602 886065355 780781030 536070611 798491947 716197892 764906967 241803696 912854526 372446932 75391954 554394423 966173263 85628993 589846862 245111958 571043822 55551907 998143721 416601066 896925773 17067451 685838099 441302482 439154798 776720939 549285879 631761196 513867965 287007948 879080181 955558713 999664361 409308532 777584016 660473930 814039435 259627203 571522675 452876908 503413410 683154690 76027211 577349006 818161793 82134277 717748144 878361412 446861514 995813751 906981298 61913021 754316874 977919043 110755886 803375096 112716650 593967954 655789722 638278085 517169916 414426244 529201831 17663472 522121331 843579610 463524684 469983358 256017141 931864914 41299302 433362293 101143946 908313343 636756434 505912083 847147816 824908656 526258762 23917332 986178640 518024179 300067936 652714161 939757932 237447119 368283173 431333921 76717582 524268895 802041210 216121549 664604427 314106953 165507144 825566315 446936143 127779211 535336257 296770991 93899360 997010723 207560001 383300555 570328963 235828281 548295232 838659107 885149187 566326702 512882492 867452253 683602993 882921674 631966425 521965581 838575194 928701313 165964683 550705096 854113681 627016554 642145905 355811760 939699987 747923982 413401406 227642502 841239864 447934829 592593789 320189061 804531794 29594715 568315868 313283009 755360294 18225024 680653912 491415139 58393606 465693317 812125036 271585109 88098284 961691296 195758791 928106188 630120227 114457638 839186864 997578022 527083065 840274080 135132411 686772520 423244452 699550882 901678386 668829293 193693560 332136617 879706806 106105606 995946364 387748673 776666715 215492684 196919594 725161794 798487379 876349746 1699508 223365426 356679829 693575991 947577635 201718208 219099443 254080359 487435175 679221345 170972619 48435303 259704973 264046210 79179235 150895543 765247243 354236739 533578026 740084280 70612773 672112307 506288277 64416609 109699573 755139873 553203487 27611147 635890370 702348605 988989999 32062263 472921442 867477722 355739943 80438668 17272274 178312516 974923966 551871698 906671807 411071684 165891996 526994339 323163824 505261439 212290876 648388037 154348384 258662929 869430552 625594944 90572826 265494459 562398206 177532117 367159613 923073892 464002159 712035149 6310553 625949716 827646191 614631995 613003311 129911529 705478840 99346587 545416255 178353950 913865148 188410572 229229064 404864100 560925434 722081967 391983623 560315469 267485073 536122542 794887019 241054278 508157538 256135784 709144039 745119347 744323292 65566916 527729692 116196359 376385227 721673320 851691406 95597757 423564870 603673853 251943844 827609867 144438400 784353615 781993126 797689054 286612705 786209079 616540090 665035387 465629208 176235095 39413752 592489299 266850679 310750556 207640621 335733253 506730491 424496112 124522843 130180264 359377120 931961867 263396094 571001347 274633231 231526984 92428572 116752756 843382861 588779250 666508377 275360775 659354947 287760417 870282910 593750061 585712376 956861724 641183967 186785168 90133887 59764697 121708086 580093281 899658785 387603892 817336901 445078297 29134207 629905684 744477626 917200053 250850274 872835019 395991121 212385388 56385887 765708918 266454978 951417507 949225185 148021322 913699320 639155802 719282514 742615682 696248422 319462179 120898552 523135049 141919889 92479086 117395915 931851443 973437175 98539936 829933203 691983841 69772278 278493801 55686336 838830487 686117571 45904556 135043862 757860090 369095321 849595448 269618367 995685075 71110359 941587827 250869417 590585164 542795592 441700950 298406869 199057975 618860187 571207736 88094002 192352009 123730397 284569331 707967819 427772518 271258546 152560331 724160909 760534814 46377209 737145094 649891899 61936070 717646788 787052310 742903258 669131487 830171410 529859074 946308476 611905369 115445086 314295573 633714163 192669925 131062761 330043728 935405936 343762260 923381543 943546638 831579681 921084717 861247326 840602230 595929608 75430650 298203091 142349214 89583962 254249852 5364270 825423421 133261658 921501546 767470800 911450838 275901322 965663520 706816856 951467582 7631176 379746662 918279042 829392885 445342818 336220267 507443400 332692321 97355029 989401871 367169659 839305730 954040249 247899177 918999474 955999767 507927562 747729951 706311440 512160655 600628808 557502811 97878993 188496681 453300574 504703101 197732422 89437256 544372154 128117684 972970125 65797980 461567256 144888773 729479630 981147994 809223475 85919683 579031360 622136328 330911744 494473010 545367514 758044495 274880521 261495243 618780048 449510558 642117620 704646450 776265609 448539301 660878019 277089661 577366195 598841627 280042503 664017285 179221439 349755553 270578569 409033314 540639366 555139022 706512340 640414103 523365935 19280424 927504733 176009363 747692339 537114948 598716189 298880651 819265328 487801673 672808701 371473336 400985547 941293934 990301580 238985727 774163116 552189689 269078916 509930511 142018275 991904732 567872023 86736571 477464562 820128414 19671673 870485066 726938210 1374049 208828329 13144038 603754673 860244247 399370337 812823029 27302291 170374863 615099773 223558598 719258585 749096139 251526986 101259971 983051717 524275883 526106348 484054047 944137914 545545144 977216534 567200838 34149739 242946942 319825799 830675207 831386681 403269705 479936266 366095318 698482996 589800139 358669381 100468717 592258033 997819877 570410504 67016485 727378713 878835925 933190505 896063577 204088067 589364771 131959536 992168137 61883656 882116827 877972402 432215356 469033290 105859143 46383211 542107112 59721622 428697645 946723155 379720579 619647963 120451933 785168713 279521228 141571397 217694637 585555336 707840074 6276219 294192899 983818632 303303086 155598897 784207488 46222371 275736810 870867668 916068360 741927283 991363710 108350288 366429824 609157508 977413411 425756751 134752224 387107614 250701665 968719112 483994983 455948631 184193792 392120856 479038813 896959440 994816199 199160064 299719815 39434841 37965771 315817902 674313814 956207301 650966936 550726161 34310736 100938104 116112573 965932638 564030636 705278479 705874947 687154043 920914981 715510745 805118019 953327093 20015877 69856342 499584707 553411201 804531041 35672496 983863333 950044173 295543909 774255055 662421929 302716884 503238451 784090865 396563198 540139872 649514564 558623263 248622886 890437007 847054090 413618709 789701795 483069275 386290849 233149016 71561996 444707113 951203493 942742265 70905687 74935623 435429308 523064195 515519849 115869867 793500349 451459054 711795550 684569888 781708547 138201258 231959477 892514988 557921629 202335217 225452177 968554405 435897900 62849539 858236018 54923348 154767528 114512038 178661559 424109693 45122614 335565270 676552159 604215579 931202676 81054488 746143634 197774991 565297279 353018859 61223533 248440350 458787177 782399736 960874606 578181988 847051637 480934492 623631987 88262961 954701452 276104032 213719652 406216646 284572123 863207258 819569074 418487630 463654101 281301898 113238539 16914357 802812888 521184323 443722017 746633074 517100457 125816361 831071612 183492189 120950514 315446488 205620203 347384250 923251159 863845339 376002033 73513115 571739335 507500981 756361021 939217127 865822223 840191279 999030641 660080996 511995737 360428162 396288071 132446328 631417901 482402701 141782476 717362460 170077692 456228268 990947164 775023472 517651892 337343567 936240074 567014291 897065292 753287557 836184521 185975651 542874965 240222755 124819835 701512471 417310416 729928232 806782414 868818648 290673038 88337337 421847613 587075370 484889642 772561483 924694683 449714356 773291093 536726037 375051877 865808023 176332283 880908067 857846566 889347923 68299967 355448855 352085711 729038541 760658845 434537203 23785860 289772427 421253086 823999259 644993648 355221559 957698753 945958537 412597034 395439128 298311266 969114061 862348395 344303444 595599971 876243325 228806039 832494129 864447450 421368387 924897323 356836936 538615681 231091810 681508391 463685994 582815004 263425405 616856996 814784483 350012085 575300932 990768293 196549537 735113673 157882296 718834622 725011884 453448598 879244403 327667865 115693873 924903349 245585044 826427292 548113888 251213428 845108528 625580828 410605210 549126786 224759492 858107394 963941310 632238812 34219763 330506750 845356691 70470160 53449424 926829364 919996672 985832922 903628056 273555401 679206166 862015562 838029645 151156806 996390312 587843382 464700273 501386569 263965429 378982240 715976253 89682784 151051657 853574871 406231793 409876455 503893527 682932187 648939376 304213382 866673387 885702142 715496529 689660801 131005668 746589617 372322552 741496801 143893620 858076476 382493789 967050451 475880747 691905921 781355509 240451832 607257474 36466256 9206762 760823984 511644532 902073749 784535636 559287262 393553062 193813323 788531352 855020405 937506305 746304806 326648197 814745903 486519238 861787206 703041953 577367861 500227443 248138574 286044903 525568783 148421462 858824744 532237102 610469442 831099054 938889592 284799189 272222396 88767838 60274190 357209518 581616784 825824084 370506769 129535215 878846967 109609584 460316137 653668572 932166808 960854091 616593942 982512059 590340883 714882230 131965431 91480165 796921644 742809245 198599086 302780816 316895815 888279027 847842056 51957305 814753281 54906128 794329538 24717310 478506019 657134719 660438364 295583906 636824314 337965884 54454115 974508673 304235931 904004470 310782717 860379310 528003012 609009614 783467137 953275688 932723794 762469337 394304135 217272213 640028381 113313612 395603479 113706645 284845632 566724301 996654073 54358780 152603984 447026368 864913658 79789605 937070796 745107278 553978682 688547 161501407 953751243 224397493 350842757 755787386 987794812 31659691 768172892 44353293 469305638 116777100 638849221 263989892 963244998 384238230 759875511 564422526 410990790 2559231 998988511 301980315 476042896 837871202 69707981 615365330 7456461 42438857 681567780 379026561 548103184 503818607 912960148 488494184 838735704 43461986 668185316 311115694 226937406 596682018 776121947 30153992 153628798 288894395 460562883 583694768 38989155 408099531 856204216 817135738 493270092 616529541 499204316 78854449 483624371 55695891 266713962 715511357 937047441 455842069 960609535 903045164 864165528 289764933 174629383 795121705 517451909 746071655 456527892 598398980 950265838 577916368 926183411 237698153 258399234 155782608 948272287 358620683 170261824 59603514 966937701 738861629 526655412 137385906 365132151 275271568 79353270 153137206 396820658 592674749 329902088 810714467 300926219 640368510 792459650 651319290 449333924 929284329 280329075 778675814 522345186 326467113 633271677 862759440 552431753 526304290 749271303 985497667 209812446 288798607 246996937 232869816 954166458 456650522 624200772 577535874 455165408 662135726 391955311 961515031 567755944 932063021 701010406 927063909 132240777 759792970 527106120 14497469 60212286 267040337 139741150 457444237 809527355 967945309 881747595 716893923 953354175 268961711 810669821 613721499 138307524 308169528 469736760 74211557 878274802 413815718 912333511 958580615 762933260 670729934 904606666 777404791 764245884 822095110 674443862 396618542 334790666 537636533 681975041 922990006 307175402 321579083 864126927 155568944 970691200 188208188 710157870 884298814 424095840 71475383 728149320 340479589 549391506 460598300 996326961 160609227 817885526 361798698 338861355 420664692 688869893 52226279 448006477 803167464 907193437 773499917 40809145 401140751 193259438 630185505 172563729 221622429 254599787 154369316 896772145 292289586 984403596 187432165 709353819 880429812 872870088 796550844 691806357 384845086 375005323 412637459 31500101 401144744 873665182 444098669 200216291 640094032 610742482 855676893 759390648 214920097 949911508 171542211 662126039 743884872 289928737 664622045 485357623 620809501 578868962 463171938 574453513 515992072 75990208 92735030 181889609 820084426 498571648 813208911 369707280 523955110 551774172 817890147 773644313 160041944 707717235 214739602 364633362 827790719 528922949 313065580 250062834 589101631 785840647 742452630 934691853 262048882 486114875 866102895 688770289 285426152 761477302 840824162 378002566 435081130 192155803 756417690 936938310 379252192 771579923 711939109 283039593 248092836 71749931 349831152 794247761 531351598 772928855 556746393 794739804 405063791 388072579 167699473 656232694 57584956 547473349 411064268 993581329 558158511 926215802 210664915 845107450 897371845 37705385 614860487 639298755 763812894 562534386 19041425 536051097 41931269 811298592 461838346 416354182 984983651 4533720 168658503 95110714 623213951 649221236 55695501 669148340 260216865 159984196 610067517 336365156 762650895 163671067 435460922 834419851 81640328 908252713 140348520 344430866 787800579 129303168 848144030 524822602 58273771 270760522 258826274 608582118 200350444 307294169 112251707 735319804 489728217 594142244 409852278 156459841 883350581 582279466 627426972 343068314 166166104 456030915 495337138 74834420 205482048 884130033 375057075 236880253 716699575 892571749 365702532 772711707 331918591 96262735 228842761 673223011 521121813 410608798 871411917 830436980 609159884 104209773 207612388 571423794 737316880 834250471 309483391 367411224 111633314 930246231 76118971 571032909 663796887 507971232 565293959 816392060 64626681 514677551 630656819 798862907 334074980 146844088 437852904 535555410 421854008 483770042 472240186 658361611 36736021 380744961 980478108 474348595 711646251 676023800 166610195 439348583 962613622 937857350 730490028 36818609 623902452 328749156 422377786 638041796 862142203 112631110 527015102 294606582 213162395 854144700 39734470 201083749 941346171 980309162 514193120 404334342 856799806 926037468 902231673 400886976 391129451 865650945 903541374 268872813 319464965 282251164 642049667 614602608 787721446 581198314 365818513 703983574 481219312 396198919 392338168 790114102 224836716 820083239 174126553 195495646 541814743 269850688 946311765 531115350 911764626 351960281 419253572 379446557 443084093 983872488 880188548 645243162 251665126 60950232 637033920 838220876 155538949 101110756 111567709 11464719 635217290 990850581 407754451 122450347 856827286 419325395 529069694 65357456 204390202 163958763 691017983 421572557 667189417 246273684 307437815 290725270 38110069 902096603 470056682 70091909 19920003 384117158 990353213 578618095 409791218 903627827 156195362 818956293 570605356 265973823 583265850 511771731 251618627 906190980 460751033 90773210 734682950 873951872 142549378 107081375 549601999 393437195 801153528 121733242 252549400 954977279 348346161 576410846 922743477 551171113 582658641 290971673 743548299 263982210 169532790 459864697 632146223 744235495 443510710 977355013 722172828 422561036 896115321 764127582 830757400 473571046 205653860 570056561 641261769 74168311 960195770 432888300 990189700 680284480 676088557 448786318 522665376 840547362 789139159 303421183 372103116 591458897 103062416 879183497 920057058 888622988 823068465 349344240 497431877 139089741 669300817 575397238 844188344 972765041 407393772 770843720 762788134 950170444 613054445 44992153 30474803 277933838 145815756 579568738 198881058 261331723 341030120 128016226 653567070 720788437 209632475 875092591 248081390 870733394 899343712 378965726 344506090 310193692 982034132 742050635 418049854 624062559 570109473 409392351 674386257 120196604 449234283 396835700 6405237 897794084 864764693 866940692 729393184 423843124 789368191 261297333 724886041 106385518 44725970 168589373 669954076 399262336 376721825 466535311 770244837 276256134 279705525 623289791 36844036 146442789 55264243 744785239 329745001 594372528 214573704 337192792 968567177 634967549 882768419 952360418 367669393 914682121 120290526 937892934 240649826 190604947 948281202 781990299 582286195 341258185 508881093 764802181 673725148 425748059 711264547 223787225 436185168 83906379 744416046 874793886 848495077 925249688 244705296 548059089 251918202 654345955 188429081 860629630 167480895 9680295 43475895 65402613 204458187 916448625 885637832 794946880 764134294 614507299 787266708 179988865 156453285 326166911 366569345 642642575 598334319 426874224 827447060 888591804 646211561 405356396 129404726 476801123 442436475 218303746 481967571 312503577 171554558 838299192 5296415 740319573 842131079 915279304 764606204 573343597 175022646 863688422 37487325 939636856 190463019 97637519 656903774 243412338 967201521 120712951 725264383 398608455 9059252 419699033 460087118 606585088 153971547 141099879 427174376 874048777 563376984 170616437 774250839 876075242 474022340 268779682 803337994 195991701 438490275 445085322 212536462 211275429 840852368 807613197 902139522 489523196 90486253 11383209 573641187 249882445 317053357 524563143 914182798 376990619 939872344 465266595 156365444 679781224 580699915 53924694 8680898 425380074 492642663 868599754 610626260 322677064 388979185 18189710 751389540 926253575 834151156 648478910 135734559 259057623 10272944 673091742 896677602 161747195 437121023 659431590 41131146 474908381 289694288 787041137 682921974 584210034 265448128 470084382 60073268 476796537 196718196 906916777 965205766 829884121 682296772 381229290 797214320 924214247 647615721 117428136 939449812 880657025 77935208 761422071 253237125 852149035 409833714 4664027 285440097 57914450 331570760 525735238 483656329 193938954 531983886 707925219 838359832 349868708 722558287 549818577 409962182 780375950 906768449 900422782 735646443 114350544 269690321 197096854 540542856 49855152 218422738 864394023 106833279 740336518 56987376 818425433 296238506 867746880 327978794 251922905 300674941 906254217 384970197 85147277 440714529 504362038 993806185 899708079 199132237 106890148 940536245 784647602 411584807 406401345 45025365 77516281 180926571 548210079 219001549 385777978 38112972 675651156 305526043 270198783 652864154 523718398 767106180 34982469 774051025 314353874 281328506 718219437 779259300 228611586 503818142 711199046 47021235 419832758 903914087 40758806 181725905 555363271 444476650 324804635 975178539 284407272 733229431 314080532 594298389 341128233 591174447 693793309 354834475 873942944 227508326 552193712 706120289 832759853 227778557 899027875 555724856 411750605 916954828 104197421 1898947 757821286 663492261 721586279 212678495 19371784 874172811 805349318 603043219 438028118 367910596 666439947 831666669 302582400 473459356 424652642 918356037 658176633 100178385 78775500 198115688 686921853 411089284 732546302 554078694 389232374 43274134 295218952 607600128 71935557 502996798 968149646 136466317 240758360 237944088 944403970 297010854 85052591 953236381 711857254 409098248 685472665 617227151 204494882 994221948 56503474 298891071 304418934 45198955 650111613 493841611 557038811 641483144 423105964 357089038 273419314 546906048 949178973 331644252 591739266 985020392 740015167 679023386 674963096 662479724 251813191 735496184 865218057 661985171 394606033 242441997 637620675 767894141 998236747 137017120 93844040 731213002 320434235 255675187 482390573 794362880 924734904 303492660 346327697 863308511 166056794 505497510 90718826 457678433 719444782 806325051 179300167 307952146 133296677 827347615 787049437 418340193 821179330 829818276 806508539 816228285 216052903 806883404 335359198 181131132 314481153 692385744 142808902 958793703 464729196 424633665 184663679 664546030 424808047 178669921 505109084 349919477 592267356 330500161 521506638 446288163 949210400 239637683 995966447 369686309 174002652 89948561 797058166 882304406 989724104 887898675 323584516 866861327 530882734 811814063 741106118 760704675 530463349 673424190 301500643 799129438 963947029 869087674 251988035 907991113 180416188 959235342 333925370 237322300 654641705 896615884 880655814 603735836 900094195 821163163 438957235 123657076 226022372 555713165 694021532 270979951 695880857 839798365 83953708 773960777 810141026 134098499 466904291 631177591 820525313 462350529 108002288 387706622 366922883 987884428 922024100 172219704 136527221 296165217 535647084 353542215 898041547 589781251 967842409 224968645 948884987 100282184 189545254 864334036 696296177 125445637 511543788 548604643 800249705 112033098 941216783 93156911 209651470 609510454 786717547 833027248 938617773 897793166 549962485 164096683 925086205 629130020 847594058 2223626 817762452 151924843 791588741 606469917 834285868 488964502 347880829 86161731 972364506 676331726 931024360 338025211 814925930 735923735 529553041 404885752 60082901 691160852 537665109 160669088 319049765 786787340 18231606 770790059 869618221 940650673 916639924 683920303 990794009 498649654 653848902 570244024 77220507 6539157 179914328 905997527 441769864 346093166 714660858 606209934 749662095 662105265 851136496 430737185 660588979 491918879 302433278 882622066 338409493 273847552 949462565 799089732 899913328 852456114 439791290 79945775 527407947 627175884 959667549 914717708 291016673 826840589 854933978 131838817 112100266 44804567 69542543 40665733 628057702 119341674 176137748 276824889 333112974 433674101 346075040 527821506 844197611 508143597 339815827 599251992 311058390 154788521 727716861 719103247 261995734 758138684 36142930 471163209 198815891 246486649 593184394 517191489 26049189 173233599 406501329 727705206 788043570 422024321 967716384 88148840 821777483 54192908 55839663 630193425 202221159 485757462 94199232 819274394 883810536 930376664 244703197 360962997 122662902 321792385 137347506 345022856 80091678 974846257 651427 85533597 112633351 436253057 985625601 556248617 55603827 853812021 691349437 741784198 585783956 340776944 178154238 153530113 776305228 41511385 256593009 608958341 891767390 955550730 157041896 387689519 852381036 169280428 63381940 831119590 951080691 62699422 719117521 359112649 446895962 749347071 610104980 7034569 602554740 899787498 476086301 81865281 799456690 280074393 643674622 648303892 529388160 436404465 598264221 402304543 806576240 283884650 836036779 36669843 257118606 381644531 573081096 753091602 779721874 709525243 501378576 254816150 995180056 433716429 925054197 375663401 856224999 946053874 565710096 32935243 408730001 740814209 555668242 14891766 925881834 547575567 342840892 459892188 298358228 429751239 520349964 383482462 758674057 575412802 637358597 475663826 549215753 734369393 537031517 39172857 272296861 463359643 563685007 385909326 329572445 474465184 915331793 309648612 343468930 303419832 536114563 752469533 918989031 922858094 862578916 774492799 58464451 180851608 593820696 640525043 939640974 568085572 308620511 164177815 21100300 571948671 999005890 965427175 306180728 202671415 800685919 932846739 427739843 552229777 913769150 141693504 454376755 510412344 599102982 636080174 242820035 77309729 797572901 644791660 908416086 502428753 52131628 568911523 4114325 601756464 894215723 723719120 256501848 462362438 721356500 288770288 107120292 287119393 30338315 119558361 751228054 376369509 971507797 214877451 753365142 752174049 790120532 567199248 293006536 216005318 237999762 58738014 364539312 597469483 740606454 913489021 384472980 199304282 82608764 18706699 634641855 593383777 936413994 631342301 316939980 545889059 518945859 129725631 652068706 842057781 274763432 739696986 518366852 249714703 24367798 387200362 486097219 561523774 835442646 517825349 115185241 175254993 49394483 911677312 84418220 938402336 841499013 556581117 910950198 394412738 417495201 862236833 635731897 754890935 381228875 204213222 396133757 926003403 158849367 82060349 811622865 481932701 728139462 235859815 972028866 62556165 627641393 608962197 32393086 107170081 40703542 742938545 318049814 202572857 551296352 906693372 409698710 69976119 386092124 795621736 817934725 672610935 545289389 343594798 416024798 379689448 636376351 272068417 14674130 995103928 348654533 278103509 955564 846640840 211146815 783277813 107533281 253093656 700617632 435187997 177277002 248627450 229005632 941756522 851958965 382844914 235038240 875920071 147721786 302757917 823389549 657348806 171129146 645351480 251614120 858427250 280119848 652567758 699088232 326764972 360501389 792624267 837943742 178514233 813517182 171860977 258628533 388100169 244417281 96803885 998652805 462057182 35462217 277378029 123620472 506307987 761159702 438392736 841198985 242522971 556675811 411116335 148261342 522539437 934792387 322930052 641369072 641491269 70645595 744113663 911767342 670982918 174774300 949199465 777514777 931959900 59810516 628268370 483075746 638820640 898944295 400588555 517763454 60464194 422059310 596905560 772193832 277693651 932519481 681454253 879926033 440825472 928513635 326947948 997347079 62291796 821757528 172454993 170856091 725636589 105509159 708666675 214637960 906903978 874184856 85003546 244238247 445173253 566871626 569164534 998017724 495661396 652648976 219984380 789467474 321819745 52541295 878229041 799304386 408799159 585803 574526592 427818131 318027731 457287687 350824273 68122806 736524878 700984583 494297746 812986446 159180530 548724502 76399002 837109734 448855452 262064556 168184328 277354242 844667690 253407554 560760133 565275283 96981183 808613410 664206102 903268284 302359218 97524278 776751112 111220291 608905147 151300181 360374576 348625942 319030255 342124340 495317533 358310554 633357797 801758749 97953603 126220573 633560043 481406975 884561556 365904215 196512864 276996628 24547532 841351754 403288078 901320582 791026825 55165300 133939017 885857978 502913112 708768305 121308091 576565927 368794814 499310143 245934067 308060825 115857132 725741673 671920770 807923169 299594829 229410113 612525953 854232472 19131787 751557087 958407887 636091496 569638532 334833262 618831314 142395885 239350673 571952771 417097785 890657896 464373206 967005074 799957048 903269768 556080745 456495880 504812359 87708980 891725642 865308368 227570346 161429706 26400610 226405965 282033668 940869018 841413729 780305352 435524461 653333851 53013078 698156152 103924828 523160493 887246877 371660831 445895237 635178166 344514885 914206136 864467197 385404412 205390354 516065883 990169822 993294721 904665678 510766508 363143566 994357141 125054901 179358194 190648748 244751858 928625852 349673634 945393462 524607361 873737148 242577757 420223662 659729382 900052419 1550551 210908589 488085954 620670121 469640410 904762348 608591155 568506217 324209404 646902228 169566369 278764916 444389907 131134288 902549668 202193562 45943167 76927990 246643036 766620277 341335561 368310337 115323443 677097545 532016147 247428962 480106734 251900670 998577572 773703804 158321678 154974316 995304865 130333001 496766143 168976093 189810208 56229799 528797693 101379542 329370624 114839194 59408827 283337201 351904239 15885993 347813232 585802405 524898137 806437791 877235608 523376636 479983312 226722303 909953824 553206057 243826345 370554469 433920220 779914872 5145488 381067365 158834242 522001213 877402062 69435470 657814888 471331226 978654522 819128987 794563760 766827771 61911950 229738073 153807829 482457674 295237081 924413229 101014555 24644659 841250047 382170559 228118751 104564589 989449535 852742732 816446193 300135035 624839212 546455648 186004458 148831977 502752300 395523408 895400406 629086040 737290668 666248904 584320259 830872407 517684959 477623229 130787091 545378587 314025106 44205032 380233139 871295994 17697833 209869856 843785905 604181556 393318176 756743590 515372902 580415174 611738124 660066202 895718774 771277135 903108875 79451189 775639672 843164497 757009968 41615682 901910952 81015372 611072009 690670982 616511830 963457059 746106335 700396256 143487720 840129822 44321583 499692618 505566510 470383040 700005879 257375828 238487198 699822348 73543750 5916825 996740528 486213389 67384859 495433885 770420665 767136921 467999786 698096346 133321001 332721799 984494902 749117629 802367198 163650168 406961866 220130018 713337634 475309276 386063906 34437274 35808880 669067590 280623937 26375143 847989384 789472758 415812191 484950166 229186911 827427972 494808414 637884002 954907616 69204737 977137497 142087894 451707772 153928319 976452490 730457176 649471564 808497226 6665907 287590657 335421776 321058544 209321091 862066199 564688029 235145357 614457004 611066634 11094963 935004817 958197740 253707337 144746462 438873552 689497912 708625311 306971553 29402594 132219692 64025736 446117684 937372583 506144455 569036083 696076898 810920914 42962797 621167467 872006139 116351834 936153565 766985496 678781322 320177190 881644965 827560348 814754419 625375260 758717785 35822104 140805010 46160326 532230313 467245017 688063022 611505668 946589644 515727905 17849150 448877100 428773446 397001337 900892847 591974332 143031795 171670651 301871816 638142425 456290947 342457125 383975718 170429224 627986924 758236273 511464875 331842927 946564198 541058511 381627270 181690429 29192753 647153084 297408940 421851509 23436851 535435795 349955558 183033245 716474428 740888111 94313494 14519489 827599103 714127720 130800657 421641352 99479875 357497616 217274002 730169683 759448969 694073889 749974555 767086427 337926309 699724122 909042463 90799390 571394711 170641642 30603948 355916174 71415234 452882389 935159497 854469003 317376332 675822825 625421493 640801577 553899926 88615336 106753904 914036030 102712049 85695649 196637463 755875539 439701012 938668009 210511242 10128572 765580290 848056953 43384021 813784822 841908258 547237966 244671448 317819811 517112831 988455242 731052782 201723426 366705136 679213018 607816750 10514623 859656947 229471332 178210201 769249011 614037188 885176153 917040179 159228792 59477107 294538006 474408401 94000212 885878405 3788566 152611214 956605127 511198049 662622879 562555231 589900917 680109753 659929311 121601155 170026252 464996286 214593451 183596958 828549629 517430706 891262263 772693703 903471024 190102993 855433314 239096316 583498947 832133659 139192010 942689038 95859690 312692383 951939152 505766799 301711393 606100992 729404414 577166704 20961842 274406160 475782585 123201915 160592741 617032804 257342821 918674035 174663319 35025183 759637531 181181751 649288494 251507084 546723202 810722251 505283015 2353377 254818805 501599871 420182422 945907410 427262401 228340229 111762717 940928815 940883013 681433754 876843163 550072238 731300946 451438269 939528624 625040222 866107138 64444022 452635142 470848531 424220814 479121420 808028137 549641839 64336797 731299310 692059356 513373106 669518936 466105728 961525974 484195140 983151741 769102957 917154029 785643539 240192213 852977674 497108668 448686344 209490160 717934997 247052862 928113487 78677762 445806890 427690854 576182234 639726524 776503156 926439008 29671094 858297976 333592410 562989294 435163745 141769127 591818735 579983053 473596170 882503692 83520067 133009811 474064548 800287109 35093772 533027040 259773936 739552572 613710663 811426164 729664954 831253898 207726819 565856308 224400464 820664986 428556457 616064533 597938626 356696040 997058732 942650706 825468378 59629752 466781698 196586649 782852161 379755856 374563761 322442464 247049675 528448513 84129236 806744230 704929608 160746099 355824797 688111378 345351658 951995608 852849642 434934875 245604467 992310702 303307102 56436920 7748392 447377071 34496871 274854205 962336757 584554200 587786783 710039904 991122771 829092125 19949650 359528278 404099358 873334831 141710724 13855311 422123526 75993325 438088962 191870338 300979224 107443916 534455615 795148078 741848938 875764402 523796249 802272894 90689512 360607799 460723020 890195936 299932084 453243591 395500664 475569611 710527434 51889751 65567097 671197698 996624231 969812503 159135641 765055044 157097807 568718119 799227215 274534001 742538693 309155238 347936325 37898290 920823361 61195370 413114162 732480599 202722783 481625971 654177614 243690935 299451650 713463459 971769494 775173562 335212640 899648555 293502795 474743973 855529875 422408392 204259165 380547079 534087641 75530475 602463695 445638161 988063232 222062526 347495917 396338305 33562091 139594446 610198521 10886041 387927437 318793049 833359725 699574849 765183372 814726477 734660264 707580367 487596295 837004423 776471082 724155795 588017901 591017857 960463045 52726777 607135466 706652612 574795385 568020355 37713823 794006722 82493557 705160144 912129650 907368790 104673320 945208843 94918705 915423823 133329057 323327908 837564071 754016626 637931625 54131983 611577919 442855673 186287575 744722110 532704223 641623693 387150318 660839535 329777889 139800053 646537544 604776229 611467195 925625018 202390409 487251341 15235193 768199495 270079140 191088470 377044724 726860315 699160728 261451779 341376817 524238951 939606370 525053480 984209135 427057583 387051777 794357481 935669169 46199611 638850288 921431604 565459177 909956953 193941595 843068420 310831129 737143128 751371341 199300516 581745672 959627015 954721761 531469734 310175527 807465 356924027 21870957 345650312 502954689 675071807 518461654 774395368 33257892 434226653 571138167 664143144 520379503 120639470 654226765 715522978 630754110 877263568 16259999 668996485 186347261 655870217 519353207 607572651 779853274 608953560 506825051 468422779 816684066 350600183 743818531 787927641 546151269 794464436 536637144 378574718 884743639 406871521 471849441 604062084 18344322 305616970 741412858 821844220 639211297 659442202 779136069 364006333 173962430 788607349 304076802 201460842 298828377 473072623 669896987 806701759 857755292 33630118 158307339 863954608 738634048 207206248 681640175 284850327 902672918 282286990 459408125 417091217 823732488 584639241 481350916 935111185 167332824 560128684 137086998 702640370 309837086 478597009 964222758 275681837 3130553 976270056 158181754 919836129 262553644 755053355 92279670 465126711 16709881 437192225 613987914 21474091 497057506 360264422 562852492 911785621 225777743 714385850 192608587 335540459 357847828 732606451 725453525 75247107 645866498 131586423 259618605 106113164 464161751 192382036 744736344 965203225 3946028 587236089 675478688 804393065 419218908 132337397 694700160 280699868 847107968 74363908 835319608 936640073 20777976 440793572 379078195 417875884 987344522 568308250 921160337 853702895 819263102 616136211 158561889 143330136 433711537 763617352 266900290 919841237 786088215 63836392 325427318 20975273 413161810 645678038 799096225 860046733 156419076 67781840 752643940 671875223 489186746 123979209 642167561 951138211 590206737 738335736 866806389 489426339 437410773 796429813 786241478 558951317 867701214 607896689 477232902 478382472 998623163 772015878 990602846 801516489 53479881 1614212 929070996 795314700 317879250 759588146 307954692 756731926 650518236 751996174 621528312 427483171 366440406 381349597 799007067 494341984 828333038 939989006 109322733 330405781 636933843 389862944 395242199 740339639 555656995 583641277 638867645 335818564 555279710 332032029 367575704 94796433 216624040 31886889 781289740 542633966 895111818 482327097 934732094 690425390 572042016 451468413 859624748 208104375 471939269 417273235 326902810 520457050 964946206 948415530 926822427 122531170 219098228 546503906 50505775 424719627 268972189 914679597 224950868 808102107 586332807 245390894 733059128 244409684 459642788 79416672 445112607 442287093 412957964 632463738 663910932 406081590 685944585 652377176 936049388 274128194 171166286 961922490 815248229 499025609 21007658 35594543 870210259 264677123 164375408 935319188 47283631 901898187 884333962 622262021 668978774 179433570 253705628 771843231 607168262 127180024 191363313 213014213 547644751 371908825 903955503 788617518 624202661 242727278 815153839 602551170 464128788 655796376 133252579 36348199 212332780 100914129 509991846 968858701 122864512 985324665 998950005 269803254 285036761 691779907 968454291 701832433 697982147 270888391 283584566 589115116 698244348 208075911 733026279 906103364 488329590 377140319 308857602 56629663 750536003 267292228 76445328 934772467 725318103 171122463 55530275 373181647 68558691 244251102 37881575 142276600 982786096 724573855 827932440 273094486 505726066 894309905 455625703 133906466 703960430 453561699 981616261 596953551 840799789 5431364 544458675 213204524 644206252 768343758 799586477 494979858 49732344 389129576 249849719 623004557 939381292 337782658 442855455 469403585 617772366 734290839 810675585 306136323 13205803 963276166 179604661 361424731 734130671 691117562 713607013 614186531 327556390 473649283 850436982 338399957 215552989 40072883 686240684 435910119 115437778 478981489 264100594 688124042 184210397 760405692 442787659 928619488 571625668 584868594 811200607 569927374 171490559 51198399 206427288 693673224 225111429 881367285 277715109 319374267 373535142 78019788 797149438 813734992 170581422 649213058 904491683 701798692 997512446 557790001 557077868 221084295 9303812 913487280 191777963 923970888 908193117 992206027 261412542 24844173 515940568 708588856 766599592 968759794 131709171 616662436 269239733 805986860 504626784 961457982 784138940 135233941 544913876 256221366 919293025 279169133 753392745 773997264 840683500 945969325 192999582 875015001 212913343 198881812 475138209 670490099 867970777 752803830 734378933 191435076 502701958 504965532 120125638 613840022 508362127 522402453 362307337 102640510 410366671 663204558 265268950 181668092 339086864 736376444 472479296 516730798 834406668 383902851 402181554 130121624 421715422 10796851 228068116 484305471 404373566 993806194 993428023 942902330 457001814 441077712 522061258 959787017 131967086 928493133 913191742 18751551 92091071 758082394 233536192 38611576 593276021 151376350 691254985 199814329 722716854 345127257 670953650 912563750 663664976 173359802 874568470 902645303 628995839 187320369 665774039 878612053 439239577 171208532 595275025 213638556 547571361 221860909 567829335 638019832 463293222 735226602 193118831 643136704 887224557 128549094 242717904 254066537 325063498 656198958 868798786 237312773 985249385 490456104 229983283 493559585 872677605 906121494 450034517 755141223 990546816 423668559 61605686 126942714 307485922 654207900 441807254 757289284 314037265 670348316 631709740 277420955 584380633 910719544 790519739 811903499 812096694 829992517 699024282 532336239 643451381 239830782 296880086 530828970 281480296 87979303 512609781 268897360 28443510 843707043 605420259 59736128 434287613 294770382 708710305 270369559 539548737 181389500 826505315 331184990 752438788 461271474 612695499 815107201 384620917 845365132 652194898 72218166 837603635 979008028 123260844 88993326 159008983 559793958 562351974 612733232 530714320 45337371 992804359 354319243 813343170 892855190 553139816 90124488 712393980 335795564 677396441 335263508 252629429 285703082 612010807 248357315 699625119 859086290 980749857 441591618 795865540 875424261 756708713 916217384 526569224 909102474 319437185 443267034 530500498 769469167 642884142 471986589 265242124 241515030 917124537 588872366 588259460 197690937 455807740 380670876 798843901 205698653 574324703 208792300 824438866 485601953 228249476 326755943 589788035 752606497 244961224 1624944 267382067 423114229 29726050 2070513 43927477 426394351 959074939 57215514 700487253 810248640 905445860 355556477 193371256 970545176 450728446 373652332 683793226 620333931 982196985 209736431 479681859 352441262 52191880 98583479 912447634 351082949 357631422 980856905 395306751 444361820 823117367 851014700 75596905 122916738 632839554 812400548 208190744 101465140 846159927 520303446 840857281 643812726 256433469 588211474 651801973 450647162 851134008 505228707 833870254 581908457 559131823 124686214 519436999 844302794 121590240 404019239 638829572 385893953 905669247 741715349 18887517 449928880 652915051 284520048 172754064 510103789 169218692 856699242 390737211 488245014 54570248 981651789 625693623 655177868 753361612 724337667 57763202 485065980 157592303 124380329 356513443 229989007 679054041 162831500 174006880 662303303 895994212 968976823 964344051 172309102 100898418 607178252 262365047 195916469 319235483 429485366 648118898 188543049 903462882 343712257 414914898 355747869 336083131 781495265 853428448 308551208 132924585 459557856 808719844 81202350 378359382 794132834 716512109 897049848 146809534 942646475 186092543 42713572 521059266 76655980 832233707 626135685 567080926 810780553 486304400 647861780 564671611 498972246 120899114 385478517 340501489 867576816 829031694 957763867 630602390 164435206 863217630 11250822 339720996 819813965 909271579 895219853 365045108 647010243 839487806 51226957 603446560 4914966 615871642 604024584 808713625 863993008 560302259 727220776 312230662 521906970 615165306 654035241 821762660 533028893 911135951 492586848 251613586 577865391 473677593 541366231 889337007 367086389 562505564 175422587 556656575 612113975 138322462 763581895 437455379 204468080 6796974 45080159 820029421 834972949 947328478 928539907 885905630 888227251 717349944 304276405 469035334 789902571 824860620 347343647 340961023 311182490 561235925 795972439 659190215 879687559 970946786 611497474 54758737 105788354 838293425 325669284 949900881 820536935 155470930 686786580 746290055 210982136 805655269 923751930 658555544 378618122 126301299 998276663 584083423 623830136 349797945 456454706 542034668 460918216 266917550 263141897 483784478 171540677 827472607 72657159 180543518 368882704 969287606 614690631 404741082 110680551 451861905 253495089 690404049 495001882 335946054 936874059 114668804 914353846 396839579 841496198 33987423 700410931 417968973 67322052 954197079 33726412 507723145 310668087 374035414 683999137 742071923 114838660 131334589 780680793 846886351 592269061 611941240 895611781 914179291 448267511 652269747 536033155 435623694 96978097 3158431 235317556 356488738 709379642 584901358 461777057 197350069 299001263 995374129 684108049 785537925 649951283 914782692 310835211 812122193 512138570 757231046 21763747 576341990 95328852 46874702 948548192 805410615 316979312 917332251 177529310 11527257 752190048 621363368 571702707 467337410 859156297 87129841 779877725 772135146 129707229 159331004 668944062 522266306 845096660 821176901 391341368 577648872 407399868 499050633 319777381 396117982 461209156 298031250 458833676 783423355 731786117 12654719 434256804 935143331 654799124 973603100 227316622 878587005 726738461 176252455 217856003 142524309 672223994 873755055 222248592 712992870 522070422 669125555 328519248 230143257 406352112 63576204 102691124 667529865 638323016 738272204 112875030 564499767 407340368 244865262 779523290 410492929 476956291 873796553 725076142 237455044 834731117 610561972 970057014 912770074 493788384 118610302 606564755 251779620 698478210 196619576 950716403 423758318 61685507 224356699 214096105 106263012 214777501 477892354 745790666 955427545 948432716 632547713 417982794 305765527 188714651 274727696 433215024 83164273 10829761 353098193 288660159 318586645 875846723 212688949 855744465 504997535 688495929 51989065 411684831 606309378 643358465 79321830 956699306 481453265 987827599 226748834 457645071 766635186 805640059 716943454 259323446 485389677 483255878 794207650 601367258 210266485 675730444 546974973 677649508 642055691 974989631 565100892 790056252 422140580 746657076 952953337 513021678 814368212 55877371 924418651 820501810 34238662 651286859 637688644 221174832 993851023 81260768 12688627 65573045 635837955 129236657 707345908 117578800 749180126 192360743 741504635 782287272 198933115 833530445 789041599 605522945 304733575 878182861 171532867 463686977 775877927 453943274 767814877 209776216 386019690 512224369 183155354 875087608 570089919 423058221 405357053 783557879 683467752 250545134 524882622 867007123 625025371 553365737 790300664 942840731 356181517 877591114 11744739 708280244 288603903 234921461 493291292 388459583 219313924 784092925 941500418 440802448 209489456 892744202 388349824 248725706 668546878 73465395 8349261 457007067 708792445 853527365 944774068 73146357 31006816 962891490 844923407 753533928 408938834 929427243 504207560 58351832 60990026 632507202 298383932 335241269 998730645 283673155 343824487 267246214 529954677 705711611 967047935 550626156 187778301 530227685 812910701 843185705 258612060 963156471 532535746 836048753 821605389 134583455 389462113 572136916 815539443 803866547 943230884 157753205 657486111 419228538 835894965 104905234 782815569 862663285 541337315 467858443 227602183 691075000 809430677 514801553 967271698 99729888 301632680 743806803 521158640 744027390 923080642 171112106 791162829 19430629 198738637 586408926 479101431 997187627 797769125 216044790 704377375 639882114 437611538 697976258 538294324 925477414 7437277 344965163 818503652 762314588 626053572 16768117 791891779 21255738 247923628 255879209 853714792 412370719 23320629 921520700 370881788 796426542 699083486 919087252 189148452 388720080 140732198 139625488 239889153 998419670 403918269 554829640 673952257 256635580 149366333 578947450 575038010 356158412 101087098 611492221 741279541 330040218 289751888 67702740 695202316 205006388 347181136 853615110 279263549 800224602 993465688 796945592 28509076 545945774 544973981 258530251 802129590 52458528 274585160 581009105 305830056 791020649 31874348 632355016 47019741 558865139 332031713 314826314 850370097 331797590 970076923 966244390 461857530 333799120 741761161 438268144 685809202 762627406 994177673 52154336 471196424 703587378 71818119 696406481 852163745 490501036 932308821 476824643 218424244 73471877 872304484 649457026 273946467 277145933 475907429 18451873 990919385 318782082 743764969 493398960 131712247 592441979 265182236 284660818 593135498 722654223 583721110 696284534 939925720 197547254 264461352 441482208 98397323 359470034 746141441 891031178 894091237 189130474 781221827 276001009 366903010 487073621 49029029 54844591 58649270 799172569 900043464 70938456 214590685 486720994 106309669 218508659 995902176 797200378 814801780 559982394 12742467 48469328 112132116 20868716 140406324 150195372 931928004 687644247 618302601 771940889 393444784 895554666 357419896 783740366 615294332 326032545 324480296 298612179 342231215 514653530 851019977 247779961 739588307 709530984 471036132 607790292 329293621 187881671 991346879 774627312 163171568 842315963 707675946 831509328 777684076 750593371 786309458 386210059 905178017 891365203 332364281 220029074 282850735 426723699 449262781 89501820 601539138 692128428 464033504 148573193 138342798 518243336 456210185 256960404 893204175 198823919 153203322 537933105 425835222 180778591 652678138 45492071 997472239 579569367 834508021 59969166 105245813 944947239 276707155 346412663 119850834 260917566 631411554 684256074 168609458 47875303 750788399 596087914 866944531 69788424 289399248 600439422 155505518 653792125 814250081 95867709 633771308 581109439 404578121 118730641 543008058 35137827 141945362 773992223 417226042 782960346 425199328 445582251 632233553 789891281 879156646 107510464 117584921 373837998 963972445 908110906 150363411 495457836 756256525 142447073 828319220 111865493 546478067 326753426 916320808 114866770 808081200 711463563 823286515 717058951 654950470 193085089 799163594 784826269 857408827 714100680 966206133 888008799 733837961 370029299 916645035 352700651 628534472 42965837 7778031 149417868 569532809 8202396 251745690 6271682 114026622 679409477 873229422 708389586 325692943 926795739 423530641 73036101 567681294 837049789 745441171 953845120 252419515 95499086 319050504 862324272 6209902 147266598 182836645 662344435 84604975 725375008 608721643 185585554 826229528 893690948 756234615 787947398 327556728 416433086 917154836 17241277 244328899 298640882 956854512 152859768 652133620 730087127 209640794 350346014 650896471 385315395 758541759 710085623 509907183 368136598 232359417 734086455 314298216 275642331 645163035 241913478 983662317 192710247 841542947 242206852 851384054 613440811 36031115 728790417 651967555 757162220 783734965 727055201 962381569 253401852 435288272 869399494 836858486 830750399 993954579 478769843 712410707 533595171 763694804 221345678 332960151 288368430 128245309 457858708 234708820 869471761 116744624 494524076 276501396 211651051 256564890 305630906 106514971 172497278 576279691 825382648 883527384 614165217 247124775 289421766 50489553 739109800 648430352 25477011 597308747 725107697 349184098 630836294 983296850 130880928 254280208 973620789 690293038 105341908 477901866 345543983 694755393 950629811 272932404 388286341 286432859 14368774 652367165 112670930 907490123 637913076 593590441 109473099 935926313 532684008 261394252 29386565 687328381 351217049 283105787 222697762 739940487 889852950 985684616 319369673 829994318 197800251 355423657 453494003 301255105 931467890 904559976 585262162 931056450 845421465 165002544 857499225 871252811 756762730 729188309 965914156 465964064 981850524 569547658 339373304 715666915 472772111 614029535 442754693 139795745 534442708 435447645 408695235 391533807 447154176 726997301 991653146 786528645 531692439 942444150 954418033 700962767 34423829 813436253 406557309 830866292 693358428 794521601 341170487 778416215 358656973 493061047 577060088 5347405 138551913 414709765 13042072 804967962 691140524 182510547 333673047 901982847 741028701 411586971 448170496 234945009 766099595 116104304 305590925 486740133 377118773 150959712 470378796 637453726 926705496 569907074 213656881 214432671 674720991 572373713 718329354 811694937 754725797 908522934 780533177 245132484 47980785 785213305 275593301 747903661 568205331 268960597 409093449 267724673 400480451 951709061 187147222 620211300 482431948 289837579 202911151 881478876 584058578 656105400 570700153 763568537 524336375 156962102 248789096 835236516 851116455 225359148 570226303 560053671 919666000 477966122 920180149 383569040 800385436 11921890 983639154 646165830 895795867 409844124 84573191 621032346 313125475 574102479 249552744 233642051 95339880 161555919 420179059 911777421 780760951 555889967 529010007 365886496 936345785 601770098 563768519 297956532 554714627 587003258 990758374 896089741 851208504 372936041 996221759 733902482 951633821 85248446 386353192 661435183 919982786 544711333 82941307 888890551 817918766 836029799 170447272 112472492 895367805 981487801 170581548 721842642 103228286 258995561 373259475 535646814 808002182 140552038 582179498 990186315 329940170 264169538 88654427 773883218 705734015 880639092 480662651 988052657 239064533 399780257 885960200 551027202 241994477 97589567 710280853 656927021 305754241 797981060 976372891 686754344 284435518 515205264 521195120 779559866 257173039 612294843 313859438 681452456 599091925 32390258 656241600 60063674 843216910 511286748 959122509 962739288 837169617 184840628 796024865 931587355 597651266 70882955 686667759 986642677 985932490 381030503 500719093 216347710 401234332 911293552 977491565 430068024 708402800 622613867 825927086 241397329 635196161 562657582 20144383 105601999 387573271 580595286 780905642 172321736 410391609 984103515 370107432 388397445 213607527 373899085 946233796 762382897 502602830 831689754 200072474 222855655 113956509 870883314 898272056 896289908 167049937 772266251 541315914 749500694 423968913 343698948 5880905 920546136 484504339 49616797 75562375 963673357 212597995 910152100 229002779 597264824 288587125 439152590 310360101 724170731 663124271 817156436 967846706 372258554 611825088 796585305 666586557 315181641 377316158 112683313 232964895 926685088 912499055 572209190 133690589 18918878 25826512 777589186 586196183 615010250 927185841 418331991 447520681 573844909 527764698 689464939 620424143 962164815 535407927 727039366 592728525 695340466 659419061 282964127 892720440 375776160 753888956 597728827 201133889 677670570 152496357 706112568 185992808 313971097 328892549 741114506 65018044 35607433 872921509 670192737 686101446 481608722 344611383 685506237 201631731 707809418 138729743 69025619 759961180 680876675 402830343 906174691 83986180 361363999 69974426 15451518 660112191 668194708 589139440 770604107 175494293 705934105 420205704 616799222 531442002 727228674 744952658 941516460 830861931 855025890 472100693 265755795 852611307 769476359 388372334 274821707 7470048 144707181 366148010 389194141 807619214 617641686 683854001 356719401 197228057 443543105 886261193 709948688 807202018 956159842 717416505 277785948 816668137 815132974 80109871 617419035 499413520 254140775 488211857 94271320 844208683 128146138 793928210 415459122 548689369 175418841 710455715 591788251 700905622 791508422 978629095 639827394 605258442 203540148 512705910 289966784 136566376 413398366 773834420 511471212 376990449 763441493 122028896 562708423 510485361 361723126 427930101 995144345 891446743 535520878 642301246 229814270 411677839 595569134 30035710 235143239 392356068 218154821 536611983 81651216 237643873 232291715 162296273 352583662 390718154 45312803 273469914 351087761 858805202 249050096 281577988 731990150 709954931 145244108 476442862 939686085 405076400 234563182 562452647 578477034 438988481 420589958 159957630 942651809 397261011 995246892 788734391 554996180 271600627 344827674 810798609 914683410 553826315 807129000 992418870 958514248 96501149 119645612 91359281 460295104 543677678 832524217 198418750 286487229 103104070 846308463 440518370 698489060 415310761 813926647 286205305 795098186 503644750 285577115 772224492 951854522 825281257 248119281 815550683 793962311 947430388 540098580 648795001 132137631 105753532 866424891 873604523 487437769 847214318 543213230 230146810 885318768 298270973 751805532 610658532 318400374 440412027 241214974 238439869 148590125 230775468 386943336 203986945 988110445 818661859 356763216 244062200 192059582 464945225 76426625 350060344 676440798 837001002 778432414 183475636 874897711 882398423 379619965 366063573 109604103 235882563 449625993 587640576 958585918 327189908 905969343 788506556 653874426 759596715 667248379 762473881 479579356 915254543 978000848 701827698 617845536 931025354 573343745 320815025 475097444 881085570 552384817 496475042 61022081 672099167 688624220 999777873 239118476 917172607 56236423 731561810 913352345 148036642 35341991 900183834 462859080 231571221 574245444 427483761 95424910 311266722 927130630 804674050 819375399 624846465 409102392 123802152 950905999 2605840 670938563 504330150 585197491 359804316 541735065 151763914 177695148 890402932 968819057 145880046 343654742 803232702 677809611 958201135 221233229 277560980 169603340 94624474 16634417 552498149 795156639 857879099 964233470 793917763 912198122 588899678 983745142 234045491 379111618 557607758 856110443 593349152 661442753 552544814 913561316 649832208 469102646 477374082 354998498 224990227 332493145 310016461 609730892 356707736 560024899 647011954 666837544 315174582 34937569 225804222 399663571 991731023 947685231 332277783 968878850 606461378 593483682 40238406 341133214 133045939 45070836 909792508 719979957 467076895 354558373 702485201 498134976 630470819 977778699 896777984 54987746 763817431 126164968 255685099 349330250 588646360 101332840 820501791 990409735 561181437 372700832 916121214 219806606 286903616 300491491 271380465 24855673 341374213 566610126 551424149 566836383 742928534 926231412 981645910 122478931 517731329 72947866 838071824 851564057 140545033 184331209 917594572 129753287 732609675 597848707 722142427 652543205 575618417 880692987 606556422 636636710 763099163 478662888 541862554 579645079 846973887 832614042 662878043 625646890 327539282 720399956 459633932 60953168 13342665 471407786 687481368 862944856 169313646 210580279 666994486 79249584 190155809 79330822 188349803 525057719 803182771 477950872 568846969 769033996 214978523 128356954 364326289 955220553 60642748 199706957 677421633 558359498 654925318 188550581 965728030 666445692 823773220 947673892 186608373 116826817 278783957 82760726 291749206 682404648 633910604 721439993 82351033 481761575 195043339 40566235 431944382 384489335 355824716 261687943 312464215 926414640 215220504 196411623 912389872 163060381 920255790 49167558 55637585 759041116 392018320 217955183 112476561 9061334 239646834 744434788 392524645 661918783 267927447 490221148 654824054 178609487 243110191 812069756 154998414 488371051 86754311 303195781 810894161 11252380 96097525 103145826 741040328 992263230 58615129 66828243 207760214 231662251 752543809 148096964 975198143 131660615 8709821 105030289 631121568 406774982 733519883 943939833 733556532 661554262 996719621 156930617 23237981 440758011 543903049 716360648 679263748 181179925 542801914 34489247 477785891 566909861 967269628 881013859 676548572 790607986 259026850 669641462 914687941 678337908 672042635 608065337 233474087 377325191 843798352 945941637 51942295 147980763 945464128 136495059 610336717 919008827 445478255 649462017 994464798 347091567 423175550 562406380 488219260 159678822 50709174 758307111 798817653 880809628 43437878 802783286 520540406 708512161 361365997 247943729 153093557 458720998 358360595 772049206 36263573 462315752 674834822 440188255 108097717 943775577 895371718 490217510 119350198 263021908 826138564 398343660 366817915 531399169 756731336 576005789 423422962 27610919 561746988 328256852 940165915 900435404 27239812 852590108 200764235 67991484 415637561 598683828 555719548 591609283 415670702 592576873 91397050 764642753 169500951 536991583 32012671 124720261 235483892 955049278 607563217 131651379 295264347 90650454 657354765 192263669 740706985 413467532 235021859 294795814 287966749 504536358 349678788 790693849 843353624 100474446 564452331 96540553 400874598 957266925 781260108 282156855 247365467 991918167 809697298 117901664 138259712 269720179 824950462 90858991 596282401 889686301 471452500 91117210 986894731 500405369 997898594 31610134 384449624 139119483 579449209 596531070 572622014 125154931 233251280 223043533 67236225 993627888 140867261 621522568 749542267 685684557 175863606 380811382 272494383 890732320 328707001 763995452 930751944 5726033 631682655 609614375 456457790 712472289 841148088 783597542 527490625 793125898 141291951 354716159 629480309 396439791 196299487 641540010 733325054 820696910 588735504 760863227 103903084 818017015 350516494 96129119 416839210 964184484 576123299 911917009 671807991 803108704 593895927 950561737 314744264 497452908 636810732 671217525 944538592 385724397 545367556 73272965 160154332 853884064 260967480 118752054 994735790 30934255 343144479 763155026 600235189 623564664 392454950 93147473 588709699 177934406 746286861 722482454 400446867 450992511 827525084 560608180 364209892 500821643 355335077 339433039 748541495 390425481 771217643 957586264 525238868 831324583 693973330 270442780 297293638 726049702 200910272 890639618 971852079 920627747 590299412 314145245 82895160 922727695 112605892 119801278 824735843 753012864 416944102 408169482 657466678 822069758 477446403 657150310 232292002 995614483 686022701 401372696 47933851 942575931 990949871 116706677 123108107 18944064 237044641 779459148 26950255 869473111 229556302 185453296 140587945 257398778 16105147 582292909 953031490 473241824 406519423 314849589 547056947 289427329 403030185 493242828 458716014 868856472 205559296 18917201 338320461 143789666 352260984 986208734 335685499 347709175 265123661 646231468 76341069 123481854 239406518 254320729 882147547 97338456 464969223 944787773 34290201 474373516 102828235 295664437 512524778 590983766 533380510 19557724 249684954 890958715 30937075 324194423 978114960 388429985 530793498 990165114 615269700 476128644 631152504 237627011 165122674 902160921 227154887 951629458 739918865 820663379 494683551 578388605 416193160 811524337 314672816 102055381 499026071 767245834 927739964 468761020 772311288 51726923 235562349 210148377 659978725 876902175 882375756 418526962 186561554 4025189 762699877 763049796 488219033 291282603 708933494 928905696 593606427 576654686 135611847 782452478 738589249 204945115 965282276 844313889 903052560 17289272 560639724 686247996 661085559 58034198 662012027 92313591 111467168 773773458 473817719 183243510 880609404 529320274 312522315 726016261 887746888 396735293 620368829 731014952 509953331 849182281 249626938 571090192 845700061 303164281 69707370 106412556 155287553 186247138 968635570 615208327 949466127 425338608 531661603 604369668 386796165 14511852 937461590 311666752 54930693 975634501 912512108 406547935 186894703 1758106 465610897 147463149 188452299 646992687 82659793 159758389 374681074 8690931 968138696 711461567 192808515 330087206 976841585 794040591 609354124 67218115 243482496 909226645 453475515 484705537 929733455 644064581 453619667 105788165 423730622 899438537 914390954 1716913 986596826 439142188 362146055 900139912 935682913 874239490 474699742 239825023 970756760 725144381 958594132 517916731 24147730 153058039 422964019 568771859 296806542 580808236 841056472 363545891 679923366 695588120 73486049 351524352 131937680 661460372 405616473 225637586 641910837 756376623 45049697 820191571 792252820 238355454 89592201 104342648 473700079 986226891 319167824 107165635 87807178 926016979 826617804 383951873 853355073 805360361 185964276 363862661 309402602 83568336 688221197 114211764 915517847 119144417 910472902 884645416 772667957 611301089 245502791 47703028 684777731 610462774 703193668 950717201 222837978 499461508 94344572 648714640 293661612 638546979 52383061 301327862 437987567 428279022 305553735 970254764 736136900 572483123 628611520 687463100 338788404 642472379 698712731 950644437 28977140 378509995 147575011 296619039 722589433 43270417 474638881 782118476 181876532 268474109 118884115 7981021 201073744 912196376 917429711 925757979 562582051 507135944 895677440 756312377 656454976 893328756 797448170 591930637 43513643 798449467 302731857 628477757 986027313 604873214 563254599 166988815 131155788 61073327 579937093 582649538 413161350 496969287 190045327 429578444 57473865 227494420 210022850 888026990 966453432 559667423 380678515 216698070 388819075 907403772 896321155 790298409 937648462 832886596 91817175 396430116 506632631 518872290 173213694 678599813 61743761 278137483 197638307 964925975 685492885 533229821 715627393 314182227 727552532 845423351 401614634 879051808 490537381 226097464 471421022 749366847 883850805 401315693 576990723 825740262 842321187 801335217 360553777 945686312 240150606 925780833 775917500 848386440 328991951 26433391 226405059 332999631 422116899 798376609 180650920 108770225 555644817 837371037 212752078 496570008 979841455 515297736 580238710 32788934 87407577 418287864 895787753 760834796 187117739 897366513 358497815 657214892 136337311 934344567 898708807 178425963 546319173 320557435 395510779 522720897 359020511 12121294 73192924 325053833 16663240 382881246 513360080 594318698 279350966 676255345 132737167 975417035 78076937 415684373 661857636 991177062 837574272 288625890 254668799 268125610 676797829 265798734 755540025 893192996 43765695 456036450 484993880 895672456 555497704 347915388 440201621 718542373 395683676 558971331 257326923 162291023 747503975 950460496 213637083 364064719 775426804 969357508 101122730 354361606 811958128 383858264 895209178 67755620 764936454 125338807 595405574 683800851 385891965 660367041 976028588 533816893 631983629 747677518 328304054 666074876 529378600 385746084 454298133 427467223 449108040 370896599 411618789 523246081 816769646 211751134 361523125 800832954 304015191 463988379 459259321 553332422 241436708 224959785 716363653 287234434 667798294 267678990 863165031 142627630 691840517 62726539 764758024 278058722 356724054 932513867 507069242 59367304 390172829 829721491 196912855 942412504 211640455 623824922 285262986 649899600 309095696 737339871 582857406 544126720 348793908 683062790 618483961 477488113 634447773 595321369 610889215 317090886 207247819 237944045 287455286 829155247 747437926 981867036 29517430 966696855 87217846 528479868 43210320 660962532 580388782 405213421 665230165 808171892 922371579 852987001 738814087 698408252 290183789 683679513 776854000 103967561 826070318 259899073 894027192 257684122 58654867 646048585 25201191 993996282 956084421 896558894 662612713 416370319 901746373 332273430 236765650 66973211 15546520 17728734 122266420 72313528 957859147 511132652 499219234 259225817 54878538 979719391 651302967 537406487 246694226 225152705 171017431 967555120 759614726 724764893 914622458 163572682 166365113 671044266 338719177 52270177 695023270 371404634 190958482 619718096 937177014 621257490 434746943 857868434 308533560 840884157 6128981 267049966 521774529 624124236 999795125 511408603 554547851 991378488 759070264 324729996 875875780 169544708 716937787 28131232 84344365 609000752 198260332 313799843 814230829 985892150 130751550 673128833 686712767 922588071 643532799 768599666 43523763 874145332 662678771 425958539 653607221 192563963 391540829 904502510 819812833 517970851 962244273 287763310 15570322 709539099 603928367 350938184 972337995 616100229 99082362 812295818 675788774 923085923 948589651 953498514 894740165 96389805 880507362 503903679 502208810 318650457 355164035 595695830 815510630 963760738 10681935 85541072 200101255 789187080 4137694 109417380 701226295 704602571 634720857 348839603 977477117 792832297 395268537 192911169 337885452 418632032 914358727 410760854 568493928 518914776 875283762 556355376 991830025 480981276 220016653 45616132 986512329 959489852 822773377 509293871 876424820 5794367 794117378 98171585 478820247 397486476 36134109 191794480 304567801 63593817 334988651 402012180 33160464 616038963 322164391 718594319 220958618 290457656 675800054 866888318 179320990 931352616 649350442 562524606 282254058 297966157 818666247 170306187 269115880 437093758 115615695 8908890 124507429 849960707 627028936 212994226 12010162 206214910 375971862 85059161 788407420 587421707 385643724 848010691 835548747 843763531 705791573 382746789 106715245 904018112 628186697 513306420 332017073 418491305 677374220 485349523 564446536 205198281 829501841 61275769 365148110 169660825 478238915 920796112 642667776 880326380 624436726 284241132 522333085 128664777 451416578 660489667 28294578 914060403 49097255 431633752 274149825 590982204 210397313 301563409 866158661 234896914 756837841 281712315 623568690 250084975 390921319 843109674 458609205 611105458 833880120 421485840 338736100 386363107 578599677 859696149 299054528 797231239 890500043 166646617 515784347 842592095 865068434 358770680 319518019 510261467 868208913 477982691 44155707 591306019 612708111 709645288 919470124 11839474 579507823 855416012 683623504 323776039 891719658 703312894 948129244 982285648 154025608 985990380 194010808 853743798 42951672 934529038 505309033 610998466 126221430 116714516 665881696 55921889 822287011 647475476 618330207 480468388 177240054 233340906 661763822 845426554 953686131 651609691 159595595 434023080 178451455 499651885 388931188 98447300 540685817 135402787 173803859 353582693 981755098 724775595 476039831 21701545 486826091 214794236 503522040 534299051 440081872 535316626 400785581 869144476 370600794 754204972 175733090 777601927 719258869 663837194 669340197 227852571 629957601 665053744 741875567 976159888 103215318 283548372 708045027 837648593 542988735 454977177 242268955 49499485 793071591 489390726 503375641 312317776 413861446 988933193 986115235 699541712 453854976 899681481 882077639 833646675 348592412 179051693 552257837 680644474 78358333 464994936 139089816 992301025 508754747 288543576 980126827 266988957 568156469 366628824 878496728 455355763 408465929 566503774 269067083 844324585 923317028 870464698 498806630 569694366 883294114 940416788 659569730 369478331 698070448 17192134 555066512 88566573 168667209 455243826 371955029 368915301 808712278 970387242 758015360 110971398 181017825 116925808 459196161 331498081 632005492 575413223 855848388 76735105 319551976 327291488 634407582 476622799 60049889 493033070 240856827 265814388 99405085 738341242 89849109 575858638 270948389 510043479 7813476 298920309 328368069 689565760 963923445 266361259 208336141 378321338 558032227 236126073 504598003 157404114 787535837 728471809 948505330 219737311 84553465 690972141 228204831 170757608 399485476 287949840 371769624 395918251 692647059 420561510 682909292 946053263 989807743 463329299 459855865 32677142 903998682 396355613 714104378 862129880 102336055 201111881 32519730 1133361 111370682 214579094 820544926 143455114 526136562 912014547 309464242 411653059 482413088 140748577 440066360 443345696 787783130 323074334 783659043 626226886 280143725 738606551 781362747 247352880 783610736 99523279 289346237 834722467 320986388 586704363 508116487 205575053 261177059 72242372 692069170 487218013 854828610 570236921 67597075 853638887 977465857 101636293 958275801 752685471 708643990 502474307 190428267 999836185 997941950 530670480 544330737 655092951 410124982 713499191 409526058 991177117 184003225 647975835 589947184 867536433 300130790 306516604 64395303 205216399 3415608 359277819 796208141 444025874 313130231 170499791 616360493 545267730 741150054 870220419 980607676 191860789 37439849 398688233 127710281 591071119 394299892 858885325 86849324 862183334 384488029 266895989 407407411 551999630 835465568 454534054 343057209 522359073 51547593 539996171 31878805 655319908 291627815 227429751 249234325 212761615 584400924 220001811 199275238 858496519 540178721 156260937 801993953 265631845 64512800 669054403 137817866 546857880 177611628 281268574 208234536 610349708 526796993 32493086 629165068 35284862 993068140 289698624 183072740 718657868 236957545 213556699 995069072 613579852 789577356 400590260 660126985 560355499 632500131 310024315 592429947 310107772 822259009 267002020 288662945 310989864 133323309 170660339 938063801 209817857 487541345 362070012 400665190 301421582 635266370 783253492 776262993 633232954 95749175 158261611 655143089 29074906 957774385 728537721 210888623 757015440 52633040 280532762 143812719 247239001 546954658 808337175 675042192 492541128 572507450 296085949 977667213 572096153 244312935 43602482 505424669 898841684 497412522 687579987 353454565 805490193 925236592 613754288 194503479 431819392 975891001 984296776 195885582 371670064 475970364 738772677 382139528 488360812 967721202 27280275 26163730 484013758 618607957 829876922 571693717 945160694 287603685 417005188 666060449 859822211 278442958 138033576 403451726 749251749 249690022 666729405 602495330 816775164 500804582 773276180 482092832 42860105 860858815 577392855 690762548 213151826 764142204 890679175 841691209 107437792 363597912 355833900 451430218 609670576 995654642 535215171 454109554 316921633 466461550 346874271 152678426 266963112 869612678 685610367 541857566 994046818 187848700 769048426 649222921 992144255 794506285 368659510 152477174 701815254 103085735 68800517 17677612 320785197 590318102 467081763 266274814 272629487 463862410 906853652 73274446 4899302 962432601 676755550 369778854 334088535 178520539 856565499 242036035 744811044 821579821 394307655 434452792 338114144 817544221 698065826 900824612 228696362 34744064 243517736 689288017 221875032 228187094 283076326 294969613 348634516 589435659 754051238 574589798 333475093 755833723 342557379 708778648 576474474 138816585 712678228 136010042 160966700 342416174 492182076 449293761 762935287 91273815 788084247 143256585 719416865 159746428 887420528 581828720 881016512 385847212 731900287 6938390 32098731 839808332 612251688 93227143 952961280 278271531 597134292 254306548 911896354 471069091 902377091 245711141 329473966 279970713 925327466 615431527 119228721 497414300 573994469 326627012 628054512 21192301 76155476 605407567 631947691 375095697 702217535 185513026 107281470 650350331 297520564 256273471 348184170 713863220 778895125 222861780 825798415 564941348 233691633 591503135 211970274 679782113 903816968 162788996 423403687 586637030 700157960 697639987 684252708 325790319 461724193 509283821 263118039 972313713 939539045 697027226 905563412 737545112 105670985 454919753 934602149 796297170 536713746 437530884 279580952 993694324 392491844 618372211 372777685 694855172 793694232 730657225 656137408 80744235 376844929 612610169 550582869 278443329 575599779 109653846 821888449 203404887 788331154 383045395 480505775 874734746 110014985 882603074 24735431 295982862 468138624 576111153 619544995 779271870 11046570 749801984 14224100 763802408 602062617 960012495 100884407 829191613 325894814 794091023 338029265 933577683 707353776 715471486 881825367 950767233 10353778 369153398 874352243 800366810 204788624 894981254 323087489 118735768 585384026 620394872 889285587 843219691 838115216 246777617 551349183 378634285 950653112 101955066 238810135 438388686 707525165 963918447 416489296 216846383 302827257 871634245 580392937 706505406 349836411 573326589 744446968 290647128 985925085 609350068 205924553 622271085 599454809 995368259 669204501 607308167 664165324 89649865 488220281 319006875 8968263 666350435 912521611 111375692 8560905 131218061 452593030 182720066 356123694 293636881 534063567 251946021 559836538 850659667 286333005 331116303 130207342 674498890 111305776 364672054 548828564 66727718 10109595 293072431 751474944 356169718 790864165 357358777 281059266 803383177 895768859 563243212 522920711 987621898 480468577 40849111 378746877 930333791 383457139 740144962 181746859 223954535 89686880 650451185 108558034 834007045 598821668 715918352 382055939 313050194 776919640 910863025 301775763 172922627 310416593 796701304 19882999 283136137 372538553 639378774 903724996 865862896 857173045 787515612 931168448 113476266 380366829 695731331 840776024 429632565 255137645 382825239 793531550 40776376 339623425 51481021 334100306 384738806 99576479 522515793 604551537 776810033 473255577 133530919 761808056 973490598 633774132 994788397 664770450 503258518 286494145 228698997 374308055 622204936 116958646 217862683 949775598 110792265 163115411 716628012 357348529 434022098 659482832 29064585 157479607 174684679 253772635 322978790 910109904 916558984 8149797 770986728 971947647 172154962 179140869 939724423 413913164 616339735 278773703 159044810 689203725 533058459 427518196 254846285 581127984 837122882 331823835 865937367 821377529 242476603 553551981 600272857 164610805 820084619 630744323 337546742 677337656 564454452 580500035 43283374 967545984 30393359 145503963 261428278 922061281 598525281 439195317 245738822 801696017 857639104 892181472 115284015 40188538 936223179 354051607 719809511 350561223 13192670 357018257 462083068 24196266 884611082 556812823 530656621 817034060 485022086 152994710 837724909 746293757 467688635 73381610 760670973 227331916 34322301 930409495 469195170 325137523 733218855 110812742 467033871 649969463 840564060 644905777 895554875 431940232 516681183 542318351 997446809 708635108 680045834 805050868 231151024 541467461 750964749 555595101 118571539 770757330 738489817 82956787 379143575 486766015 377453656 929285610 78373811 509769540 939069693 670119106 561485778 970743354 969544947 669129050 54967017 117098767 661772802 688756036 279167990 303139230 161517132 336841424 807940956 86525188 118044861 829276009 9648764 694439985 436890052 435615572 236943495 197790043 550260571 136460785 833566980 289038198 155386910 241561592 762209249 788455525 636392957 437013046 854558721 511090692 904263872 281554154 516981114 797387885 329089525 516934157 490049494 980841028 923604129 429662202 574151898 282075611 619971442 816346482 763856220 573928127 206716155 328240814 756173297 270184606 863774521 783317027 308998380 614888046 847198396 843081332 314399147 875361643 392682120 935695087 479918221 574227698 973850947 679400953 506006195 125788124 485028057 876982782 364968019 167549922 205158216 995380290 193380881 753341145 242206827 566352421 628238947 983302996 786036875 804468559 56996552 877336368 323294520 335810250 552186485 282752972 41319708 952809649 182332901 939798367 686710192 876393235 3204328 555449225 471754423 310700921 57330812 564356742 410598942 886664668 604008612 492823909 89665611 124700532 39090950 271176076 545911267 376692668 575928409 801070516 416566292 276918274 636311042 227945586 34335962 879935150 291707045 737308766 850310640 922845882 147411328 507109542 771303254 764675228 758144951 924321478 529981989 36618649 586179352 43780070 605778374 486490258 16631787 571184306 161044137 857435776 170241502 226740430 320247792 438897282 420320732 426204291 864658740 502743987 76677523 973179662 443186215 451483824 226200723 43871155 882716431 980994157 318480807 392356133 737987111 868986981 525562382 651699412 708549337 385852937 732261906 482517030 567773761 739669377 62911573 738244550 430159772 284723702 296194318 343753597 392987423 908534713 996756331 260476461 702609088 823951237 624190525 909769024 198016820 280895718 131700535 503748647 892241027 88699826 482959547 523796463 672795109 300229056 890598998 198962008 192847133 182077146 108959810 222312779 260597688 966849428 924380139 800139910 34235224 452967269 654266355 769316923 980482003 62951987 284323098 536350980 648502908 831531945 388655154 812856804 706382224 540632546 896445233 514898850 547364659 292201434 316955355 567638471 462310376 427078155 4238778 221349850 346726701 761074246 184689976 677307716 953449795 142969680 104930563 299022978 315279068 152437139 979290522 159869866 543941755 430395047 928175678 260186729 925800423 527949292 207087547 134439993 139386680 290406208 936686657 708241701 568414602 709077899 510850387 378720578 576674275 1235938 963806673 36691594 840441221 404795376 764628139 672648533 353826063 764085590 179640752 857534279 459829591 784397657 367204265 546019496 535960916 878774730 2080080 496320151 451274078 576100860 249302356 702925460 99174787 653266243 913713742 360984331 354579629 694876580 476625879 228711145 650087119 853753610 159769967 282617616 936720690 14684246 222473872 402077123 855994293 986973426 252169933 208995195 512641069 168356386 175636150 791747596 187821094 118489636 881133639 526500405 674083684 392829311 605093016 513395563 439026078 792959292 89995139 160134920 190406543 120876181 91789642 30796243 751714129 624179512 683742648 472428025 148531407 467452036 41838568 255342305 56663812 827284760 385793186 71696858 776893718 201815926 541720317 896810579 744365981 565199027 755014686 74758854 579190087 697507553 51041288 95382412 483965672 762917710 556950986 693659643 918486985 682866353 368983170 415966526 3452191 452228989 952058531 122939617 216219437 62860271 306614860 162580472 796086787 73157998 158152113 986162863 233290648 777966844 462580399 281183738 827275097 468943145 657749592 705926542 267825907 863250668 116737144 326407156 855513595 792550525 522572913 988455002 574666492 118794295 647240589 847261601 624842713 743746441 583505769 208768389 212601553 957327812 508923735 362062587 788854228 14094310 340229576 571095413 378289815 366704239 861581196 746369943 725371897 265716774 529399650 55158405 565711147 429138195 478788932 776480566 991465885 624129542 797348641 628253825 885516872 914548733 741086960 4536818 251216363 456964497 691118230 202583355 713490495 164833847 740313514 781389301 959936424 266072864 783333698 314965696 426517343 970038310 212171661 59014329 6740877 743855610 305492836 355964656 63493032 257592694 367682897 74762447 998600484 154615481 929517819 157852365 834571067 705678840 841033094 654547195 57341164 421134619 829335772 174305467 529534949 732823632 873409490 726954284 94126056 694711709 545404058 901385799 890846646 297248651 134406424 802221184 66736929 233484597 6215700 572380827 476118259 871387590 473444282 940447826 577869026 564718345 474312989 71953970 325700495 586625414 838339864 607453248 448366606 332925292 193519583 785689081 420555466 812734 747555026 637938716 978245264 940309404 224423999 866502262 960026183 683028777 78905098 912593131 966547126 681531423 586762809 563057661 573281019 311855291 347842105 725092365 259663153 758032295 535077694 118262253 288477657 761283167 123475932 254671585 630803200 217655747 691096655 458495066 693639207 854576431 535436667 960750099 368378134 124773846 900654505 353080526 345769299 299906459 812478822 144756255 59032147 163195563 201291481 480893448 174402181 102192509 134835829 175584682 218562908 144773468 511547048 765364378 157029575 488741991 169486474 396318421 879436974 126072131 966763841 645392457 207788410 349147015 933379969 603394723 45387805 625507268 235195513 634604833 739117218 703137302 714846235 921562122 633906295 731420262 490841660 743742139 507338271 709567156 346482676 801708909 84121852 172739319 899118670 616267622 805320458 465935373 694392392 655075970 121821647 125851085 708031731 869520820 419346605 672690645 712046934 887748558 965769698 344313063 614459478 11965792 906372242 268666597 421307109 466831138 64539297 679518213 788077492 479718024 692161304 273572672 873935805 487204423 97158263 442828186 525482338 471323558 818179396 999374763 985954628 584639054 800234026 836702278 753395291 861195084 381540766 354332916 312142523 409791983 731437176 117339302 424398692 397225009 896165807 374081404 732214985 342391750 309630039 533246663 326020373 378150990 113831962 621003477 252152280 903000757 523987458 253962829 377847500 630418063 283979907 549471617 143260199 119944383 114623369 57930493 315362740 395228232 900802496 380399874 768814623 734179434 368678580 149890527 568229793 422754951 48250136 150186821 356784732 852517436 834918436 277070209 355648993 646542123 514109550 639677271 11982481 252022564 692960125 525228216 926714468 435838270 314510989 583579233 921995324 289967528 331898250 792338828 664144995 556246888 550274376 932061871 449963678 848160286 45883082 523273857 440587496 821860745 435417275 348343654 754042573 299962800 888866064 341129589 894211692 179759921 778945313 615682767 308367973 908417627 846265069 229900092 308185536 569356270 989569257 871923011 298052161 874874782 623465236 449309582 314321660 14035992 139293981 405123557 206184181 146912639 833850607 467937146 113918915 648815014 130443571 750953465 618029226 491534501 944876845 94966771 312105070 502580121 2435823 980452961 5871772 282114681 444381414 502106655 210165761 567591062 29194161 271668092 769442866 427751616 295328926 325348377 90639313 505538020 67539865 603405508 925453564 219697540 640652899 718854084 317292029 705603606 896852076 960512585 304029792 114331783 728134311 502711993 782015909 598242263 334784181 127504043 804534778 116960201 537938576 706464066 247604282 672663952 691684616 239081675 399397519 853470898 115334458 549012229 79826517 819433524 325237009 247334872 383000075 995511659 105688682 64530955 322716401 157610065 690708005 708963231 97544842 383920521 266403986 160619501 248360191 62990241 354733312 606388554 541186498 433559886 509738881 162629281 646455428 235762374 8715387 346589935 30233474 204428238 12546102 72653000 143271976 873181244 275563764 637508726 579308049 672747795 105380616 310973430 403894415 859679017 190159082 199416065 898221547 236501436 898223543 293345810 231057045 123384099 723693806 828539321 7273149 265437435 862692425 745205425 706513170 407476397 14683891 587114596 119530709 116807085 197115605 253855569 841334559 545234482 364093150 282585994 364444267 735785230 495317869 886126722 980243242 640018885 901129788 475617618 526090814 686320003 203952320 754219405 998110597 477677755 669072181 846954046 747826936 795257828 504295614 381398357 521735110 932780847 723673757 813297774 958204320 748917203 224053854 252140385 563461031 526088116 717579065 369920605 66375776 580345299 538120988 904976304 490366224 948285982 470178067 376429507 515490226 372918265 428681632 17315837 281339203 612301244 421715097 75551864 54056990 791364070 138464795 393672379 176066218 753778683 322438739 258522176 188890493 558550979 877796656 301921729 194343251 902103195 848291271 134849001 571485608 990953999 764885754 368577384 974096844 398091637 651817792 753383286 721374788 973978135 662127648 191691635 338513922 998773625 252357738 539039652 177490390 845585976 251295939 98992310 468869135 989207027 174419703 906258590 342259964 826601757 669315482 132483934 152211445 959978435 930329310 303818293 538170440 254646636 914698980 192341159 982332982 691406468 685666749 591064623 108585126 148674431 856131017 957574422 789292175 791842476 397417099 965519543 875231640 758970081 317471210 795944013 999401359 329354792 142242437 785996143 267359280 955380532 508682529 562960348 169666126 217906284 868350559 491630352 882767000 85761900 717798692 474038479 132027473 303670628 407275383 99780797 247263263 176511276 354498857 437993697 409442342 243532019 334974266 441765912 693077876 609056894 602397905 654740606 265496498 845488772 914206927 158065896 41175207 28597167 699840010 876637215 839390959 824633734 600937565 460046061 449339075 545813143 323439015 651148427 338494659 721812484 127164667 643014680 696710141 937489590 288889823 812950255 160610799 184598984 355935686 699666267 705063297 698040399 543829463 469040426 440013129 587462517 206580733 592887475 266133920 188412334 101514291 798493050 947653216 332013968 962403515 782040126 514251026 309373673 55545352 409603415 38167594 889824965 575749875 899066415 726794485 472208253 499622821 881212307 897404962 466085721 959768303 314857301 970885648 214183045 230628952 832034470 819465159 494276352 514569460 856170629 651663404 485731280 689097681 85734571 153761881 269733194 350101051 349700263 511388200 63439229 6484240 486054157 204672562 483598704 662625589 981889191 65751815 566381965 568072170 680042795 336592426 708238371 140031176 744774003 805720495 774564565 937205827 118488783 37589509 70421498 162245963 794780082 892289585 441328090 33351942 772798374 116193946 194182475 991638435 264023531 595943580 556178064 576034897 212673282 493302616 752599613 531932869 188010775 437069416 444236057 115410183 231067836 317304144 852503365 581594346 448550467 675669710 902424640 956911434 978621283 468755719 563450799 81477397 604497515 918320135 721376608 816166156 895632093 388736138 322849285 511054431 379629979 637552081 162649959 406250295 821761764 31098992 218731627 810444921 227812675 418180313 956471559 341518757 385093973 567993889 832161932 195465392 141752635 831065658 555495942 666294050 979504498 118609754 543420248 907526775 79827898 422636752 946966474 281755231 298674082 730683534 357647820 66520561 683359636 862360861 177716764 63031840 626611039 943885080 168065179 575341133 945398254 907922468 458635486 803223144 786014987 661884903 834014041 753578707 962854622 847739227 553443122 879454771 905109029 317796169 587879307 458357986 33674061 747889062 111932795 517115208 225840926 40247337 584809377 447237438 718781726 905828339 745702900 607500532 35345310 395191188 17466610 205739946 323427210 990339071 58299059 865610416 382492649 97543781 849260053 741411440 238719210 845152296 713874380 234774841 263961057 995162335 100394752 941583912 280132313 828007047 28430703 866858883 546458599 710425845 979215751 772663431 444282842 763726004 812666246 631752082 801209436 518699201 378065690 239577926 673165428 9816272 959378387 641485293 807035274 586108869 455693469 560336844 444151596 612945612 547242746 111249550 732692082 726112619 525810844 437523015 100290944 102899944 960997074 605089413 360214173 949655551 405423536 649527311 777329027 241038648 396246716 65530642 179465927 987437202 292822708 106292926 432396870 343059013 441850383 617903038 726907985 965959173 161659996 319220752 829008099 465129774 733948877 388918087 289542314 526773009 25718467 470992104 629984950 358834751 445376032 506379872 965385732 119486574 8078758 474955707 825804894 769672517 239218279 585686456 223355200 120986979 51152628 250262298 497624964 27348873 12240088 609589484 194803113 614378536 58736397 115961743 253314124 149949477 805278138 434171641 653707265 653501927 260827803 88049074 731908372 375221246 918377525 122448788 237349400 386563956 325348044 768248596 377293891 884860540 599846334 818499217 683291317 975639042 200499087 195267812 501927273 453784666 314813977 108702172 815678149 449817672 497471305 930221549 547362169 142096488 519369471 486480720 843322337 613738478 540794170 170084429 567441344 761238925 835873268 144862378 634075307 867372868 66125000 667840126 406286027 226942805 531737209 827419385 403956166 456254853 692740301 167200 593585182 516500673 696335842 768068654 461819199 675340101 795949052 499102951 973127255 736646217 758384528 132955485 821280413 107664817 740335928 326491702 127219635 952571129 233681125 511630147 832787435 168873359 297513717 742113723 337916613 538732175 753382354 99611078 818084524 991250126 573742357 391881695 488397050 153994649 112605364 788213667 517511021 301392983 343791434 763903470 515390725 673052439 688244487 731435960 574176837 265950649 928551512 876525633 900315866 370052686 545939029 521063757 666033813 169755662 724376606 219352197 509501643 261884078 480224795 765779513 979165158 944530651 179668803 562610365 852206681 396760552 573912734 575811875 622057064 474984491 757149842 569224089 117614173 496546166 839871509 806768699 689604389 521538239 404338614 64896471 497085086 928506548 267574867 48364438 16499195 524260473 157369406 452778712 521418080 571076589 437258036 623528353 166572451 147420892 702549746 676068619 928735276 526056127 843751466 627922012 84981018 38817532 103363035 811004074 198604752 587541054 812736206 100646043 61395733 105539747 648635091 467206185 281079953 61646190 523837041 582101363 306195369 839083896 447618059 339262129 578886380 407950633 474860460 781668354 618193899 674541310 676904002 618127025 526460270 757594154 649422034 324184852 720871314 432206161 452050500 974859233 30992226 624617775 337903561 719039433 93215861 873349882 405962071 118401211 931780005 37530466 252821579 191504109 640117196 117984571 203145490 724693246 994763365 930010217 217001160 733478395 983197557 707518698 15489916 393058001 493631536 331335832 205530264 299858012 891783306 416114276 481879060 969599158 747146519 291005554 156343259 357253093 229493262 288440734 926977420 553815605 685540100 356265378 402654904 442736593 949658788 417728239 940232113 173090822 305783229 803167043 451081249 711604714 470282853 168260394 993134487 583410498 5223825 959879468 419936227 790682463 913371238 609678967 534449261 389696894 449740886 700752085 856434086 272142909 407404153 695805892 579837124 712082268 994770717 134884702 878718386 551165024 975047493 57392298 845966543 896717972 591278099 465665259 868867311 963561626 557697707 283042589 342600483 667973030 33298238 964377789 781645699 305539356 714278429 851759301 340363275 731366602 337422330 354500003 872027108 756013483 477360253 112373491 226493995 54459762 680841682 919771919 795812921 965398493 583974502 205787754 735772738 548913425 183105190 121455623 889220206 378324375 505882401 441326055 653587299 265416305 269561596 96629162 948867896 8582581 436554188 985851452 46057858 502669048 769702417 979925367 610262646 482087953 774745873 513962946 796793010 988252349 958107113 403322586 347099825 81986511 398945238 293003453 346682147 34003481 611567993 294432821 500162453 259939979 408577923 460674008 841397455 742117235 255088275 554338897 484994344 492577935 417516284 382859545 441762131 919080468 175944058 82103457 560076840 130769222 10135836 570264603 531927930 119882030 166954506 42984484 757094970 341110531 848899245 100169486 469172115 664074768 140580579 245387660 782436592 990934546 447317016 408301793 426184582 525227338 86195941 587429982 810598103 27742020 688130777 933836531 476679614 50412517 525663019 705663593 97546328 771472664 330284807 167550614 765459234 701582262 880796258 413526926 924616578 714836797 874844244 830361783 466431141 172029012 67769230 38346888 281390834 570621553 191375874 861791595 384180347 986816934 728239711 655907516 681711382 773103417 361188333 134733027 344794469 921791818 725863773 989809660 170816781 336974754 769871632 442373462 138814159 377501982 948050238 388510484 117626531 333529305 91919405 990539765 959317396 444326192 190662544 90819051 622813470 398713607 667741297 965493103 592847407 112027144 790913657 303180164 302595242 946606335 124577743 903923770 584430224 421046012 119297584 630852906 77039424 42511834 994699292 659360427 124603384 685381140 571626310 119305350 335175071 116705782 6680335 573345915 456518950 538242462 710691846 779262048 783233010 334139526 905674415 55179712 147605138 272319114 593201602 46913866 716875671 713999493 486859111 537894127 422660416 441180689 950772565 464737468 373744246 864331884 481745623 143778184 638673867 282145917 589989229 308385521 347564668 574213488 888849788 597952214 241751970 493348541 95934100 353722051 825505450 621259226 310531198 405969278 802327869 939749945 334779855 372106155 399352885 861281234 823657495 312534491 953150987 326893180 141731932 542781413 461943154 249105844 363497192 237610942 567628679 399460326 234624447 802006986 704114275 861566400 435482524 632950925 45418320 196855049 53634926 496725558 123442068 216594672 517257678 322027546 525604498 276149593 165622729 543656204 766890270 255327452 806856836 410870231 1079725 127492870 300826302 331641848 797125209 154908984 225439594 38291663 795600000 779008871 973079018 88591850 998413134 797353062 458643716 323236830 439223344 83744348 111948423 178253582 871403587 373501968 842494110 428751139 816800952 169869099 541929176 216878725 775329996 626328523 46486069 593330267 296775515 260550210 797662389 973128283 246366685 387381263 416341723 285806011 128321744 690477731 31124835 508846107 452506997 93788201 387900166 189218199 207759865 818495137 293289741 201121082 428229250 480553230 428382755 577495512 446843715 714062507 784077388 715572833 636852960 604839186 367097316 6175745 123502567 989906965 662480324 931499195 649726993 898409948 20508926 285947474 333415174 705163793 978549876 971730546 16246966 314455855 856864781 370834237 139678770 737061455 935608798 248881359 486642925 922980433 109392200 27766126 603750758 847333879 755023716 743669862 496081222 1874029 422146987 897440972 67521628 85122069 951118083 953653371 744471232 306813875 457928252 940024433 535094833 677141362 338011403 997318817 306107730 99754664 809586577 675157832 593106368 39796635 356405208 362682871 979160180 252387459 910757152 610099229 24833371 491379572 907057933 774197206 45852444 799833439 408395968 798613028 131373026 599103904 648440371 24906385 223673083 54422945 618646816 304173794 217188115 130079448 862347298 198820523 78238936 751841636 653304495 965780981 133999228 878800282 397230241 859659731 578824567 730404572 634751243 543408384 179493144 269467336 323692058 609013551 714521670 405094082 822893856 932092803 446671838 310420938 563572903 569167414 107317240 281394405 859018268 402384432 474786498 436473177 917887746 993205947 328053909 307713266 757158869 500730098 738071635 380310693 92808058 496625688 969507767 37979783 91664540 520033169 124652031 302987368 34329493 665735621 761226945 338861253 76245207 586256390 102212868 414244041 841912991 303130207 156437481 899325770 140284314 845927132 528916029 660198833 365213768 562268746 602058964 875305935 484740798 496614299 392335956 156081467 630257822 785017434 687737087 970494335 215443042 961107701 480175172 8666649 493724263 680979697 131409354 140261831 97229612 274072757 773347657 567652744 348261316 745381392 257731721 484766632 619410500 166886834 812735173 215688053 979283381 241229977 19610040 38810374 245923739 112360259 208985394 814122997 68570200 559547682 314711951 124231982 387393804 73652753 468824857 309840149 900853299 66262559 40427716 268745763 204220771 453939286 388867413 175166871 676942638 268656148 169030259 191561117 709835646 525185710 642349223 410860843 136808331 654563650 335447079 631890893 174780861 786915829 368477156 626674574 804797479 676160470 953738332 351960578 302981074 921420386 845559410 903395309 494754944 804173212 225631411 182393455 230766953 743281245 207711478 379070986 27969565 548830199 383853600 45087460 897397570 175860639 95633981 45731875 609631213 394913300 449799733 843829397 641837309 767247122 468266191 990590629 109457751 566720045 523830738 739713919 751720768 551411835 614563295 581938218 269050879 621104663 313291452 710498979 802420758 897540164 490053412 556495156 641192875 769539659 313999537 356490329 313185030 517177510 877335115 974442206 330385863 771674215 563649362 711741526 125820930 722362309 115487663 500723514 896578388 498944167 168172459 689122369 755670232 650001992 544277424 703429351 282200398 721300434 254745628 956211451 56457309 936631763 118271688 549724876 3795457 204918257 496095358 529022917 899412552 815609945 67926350 224374372 886252454 992703048 513168729 737920015 877827128 446071563 722570578 847880156 618810372 947020684 215484220 718980282 846981256 93486913 699905362 900141491 30479534 604502742 804224550 863403186 250937358 999046970 428806261 978757938 280239484 626456859 146532718 43566730 516773554 996252347 666236547 613617515 574930449 64812624 699442480 746443896 9753212 909484428 31397638 781761452 657316 404660939 142056114 975837569 317284815 189036563 36727299 184805560 362134123 17585800 74749650 842539317 816207227 887712914 713376399 632836405 778364765 462162656 879670768 808332754 451406401 879449556 712462000 256874224 765100031 306811739 837626991 315997962 237198500 534605652 503056604 45733383 287770236 538581147 905915641 861255842 301410715 778362448 264388009 208192 385311691 577919051 928366105 268120169 230972625 454363800 940845436 474523566 719072391 470880976 857811922 370825918 863338755 228459560 783766420 40322529 53528995 886510054 218452601 124831046 971650237 611225624 353199496 312261411 879494213 914414254 830575974 283795583 73347836 400838277 288298235 16406066 132467999 149030084 273887998 487562882 986205471 969735888 893593967 519584999 845929376 274253850 103091146 345378345 436508323 452485119 196028482 805050472 546798929 476361014 328321137 535939654 8401882 197265255 684092704 735121178 762687075 680461158 681502746 428875405 50776969 557938070 184366038 489706547 966860634 482614984 650964618 599195298 844229702 305698688 221617927 278635930 379827784 100467597 127394500 505360956 937199026 524822580 609885200 807502305 475504614 269506361 659245351 812963915 928122101 866996592 787438484 405341706 548773584 2386863 111840334 910076874 792312190 19411524 801620235 381902733 592278103 944150348 343301720 622811212 723892856 720170101 532777862 125822956 738129597 394495052 986095589 183663298 228454809 344802274 48407145 55728815 724371984 124671286 158414926 760353035 92801377 206428592 819784140 613555122 765412570 102506876 545045271 188151504 974077112 557452265 608331009 650279904 768013345 445667780 137490667 780005726 249512866 1981564 8875010 809445604 904497573 957944363 354402407 285718338 653752962 859080166 171360075 700407756 934355029 797989414 862921480 967217829 24498926 386313304 520063676 932237326 479282547 509959455 26474790 810370292 635338052 13790895 446094354 961439882 945793445 977532544 220449238 636773915 650916995 440317085 247508793 825292780 586062110 237280515 314083086 349342638 456377030 976246787 845097110 776504844 660405960 387519979 533848470 74245212 373784306 938083157 258709502 736210536 360852598 818988917 373482541 750795461 497074658 388495270 136870367 723154648 979646831 103196053 753275277 282712255 297972848 490538789 559911938 554013378 135920646 582975409 624097678 866692647 642581322 821864126 192181996 400912407 952611722 750048291 498370362 915965234 229058554 111076666 856328020 395778936 478151084 966622890 399806498 949252024 907087894 616299406 614549983 415630290 482281483 242582753 690403840 491812824 867638031 927698263 489884102 924313711 387832228 72230559 616864128 528177193 954083947 855765814 354211499 527623006 665876750 309092816 53166525 488043541 965242946 652678885 973902545 317740029 633681740 101399003 642086645 426058016 892011531 840379236 398699602 415986455 4682272 111409207 400036363 726901875 21997436 549176568 453169794 638824402 417494857 68200790 201879357 719628209 251740127 901552493 504172620 731099510 3793437 706556628 283698314 380312550 894642926 676746438 442668235 576090696 383733901 561871704 7830919 963599176 567467361 709190327 771800184 693913360 608721217 303741427 920416637 115910136 63210403 365461633 915300777 495755017 128396700 23618239 587673953 180933375 271803188 470814588 776073113 431178859 529606027 639142646 545906629 306041921 815563266 333756173 521021361 819744890 684230083 897251530 866325961 981525279 692418157 539348664 903042765 967481418 798814624 155795157 649685748 935350998 607344854 961245459 173577117 683283569 187856289 437020425 795729434 466392378 741683991 290737804 898913258 814813936 304218813 808723947 995176436 87638260 142211610 209048467 243041339 78454135 494864488 260632073 249723176 374920327 558814067 230359526 408127961 288354864 278154085 273059799 574653062 287420363 529637004 847875149 360146726 980382 774547361 199733328 125183280 967291049 436285532 402332797 333690542 5543930 302119142 312330707 916121737 854585425 679758307 831302241 278395634 444080545 19991476 973439915 21781568 633659329 812956289 966626013 459097303 276336618 539272392 997545912 661029137 366791210 840565179 229860800 292509029 739025875 583964837 491983153 450062559 754818026 920511422 683385934 893407239 128290913 71249160 39400395 697978394 983020296 938312271 550269453 654564314 102961986 782494217 701977953 516975800 676375332 381957934 528279139 915420200 961831578 3286538 110123560 856203609 543124125 18804429 311202597 956537275 829757062 118857158 356324082 342446157 999191703 872611197 771926119 871189017 566423330 889872824 614433252 644331868 348654894 124212867 27054588 340424777 653243624 67364412 238558969 59639703 481015554 627341035 504837280 618349171 417395859 753066753 450133987 41907689 328239833 7053210 140182371 918960215 985941324 487769672 579334256 743852517 807470576 706935943 869727059 867666684 873736820 832309912 872977724 943855316 400097395 58356144 498640906 64927325 763088968 433592946 19140174 137575537 112190192 414100529 684319934 909250153 212956762 174820956 294804095 147435447 947430397 369321980 436651079 321583752 257733598 281208406 163909609 18524518 2390339 901938341 228203677 503923070 806879358 36698011 988358258 304371304 154072995 15122536 51486286 444490536 843546594 300352726 129998299 819611987 306056210 309973618 502209724 389004952 33397807 50522374 554828495 941084248 334136742 568666133 178667532 266719202 280941961 636742586 985418327 979900814 895882961 954710040 482184237 968323259 273694960 60587508 754278961 361611910 240788347 257691105 974094197 723393180 140100280 579093771 401786100 450173809 732517126 650752184 15394428 178640312 55495039 79741130 232519238 198809431 968270572 455804775 867356297 165585385 134058416 658979060 447615421 704366810 30647724 335730753 637696628 682885958 189982805 384006130 94111805 350546479 769638526 375528946 196062921 463599177 169781579 729456204 388250869 840846742 271175312 291769098 74808813 549216462 63160616 516334096 303773457 670427609 424463587 528206541 602347073 621847006 844225731 121174911 70274577 889507762 50572901 784496862 336766292 928848971 783376126 875497332 412474483 886941091 398748283 814599113 686780456 362981594 882597311 363408752 252916781 108001843 868121101 825574813 847813862 713177607 958124339 481999159 922753178 506875743 615348507 257937901 825672210 250198474 313693997 184382332 66819068 497328237 281084740 333244690 366162904 65709108 496225258 691737639 730816079 454614005 333521095 767970145 973208981 489409835 734249068 338879374 347075631 435647880 563493295 739285934 73805178 564232304 27089833 557744297 349976899 50748435 934397610 566981023 982485938 531945709 766122739 831598938 263283769 872519730 701154643 270797363 30377 931246146 367308609 222614643 224421987 297438517 760121906 742838459 565633173 850130279 326600323 400256639 635596918 866931735 596208484 415126598 420687258 210551118 719878376 806677718 286061726 397302239 536469791 390384643 910329858 702564152 838039281 928455439 123277541 907092093 283662675 120164150 831557413 180315589 36301223 225695326 444689552 229070691 826282215 77886922 922776142 357939590 600600368 520412129 90394684 422074386 321529737 757958776 260990695 678284111 91799509 992225974 48658307 273037658 369754135 662781274 895953396 266640925 965927708 315823162 523890542 775629154 879811623 879159084 415229526 901104683 941413423 661312244 95666875 539367995 585530588 556431168 481446518 921977334 494946955 556069190 512790402 322758833 656887142 979591592 153233800 135827011 249561529 785448000 818599847 255160657 935356585 812563879 723488066 678058690 652901669 842996720 619434546 957317029 333948981 320472590 923285171 811773634 148193356 485489051 819209625 692770485 80034833 329188862 787107781 870088627 784378217 100573089 530427010 884524550 174209354 608420469 525312193 578691587 93264126 240954483 978059090 203284773 176640390 481392361 869639718 997540918 647967584 751065668 147620121 270821758 497043330 522151087 110440047 862295842 501944879 111775732 616436244 304145213 289035661 292575030 390231692 868633651 848778693 807478010 406119179 86477960 181802648 103204933 939628370 565422744 947284352 672891719 624159635 819983859 635365578 833394767 77506099 789519382 904217549 553281430 592467390 702032674 433330795 813488175 375753913 150096031 50216253 651505585 871967074 528687501 594249280 582758795 455907232 474364212 801783818 174794596 679683753 749768129 411271781 98010313 573790038 266410381 822326491 545129550 146666815 119308650 501799870 330558746 975347144 111461193 195662948 465004466 98613315 43741983 931901538 38041940 183995820 1381668 158403561 347673872 854566382 576441507 567078999 769886387 655539300 680530717 518038771 664982537 193473644 102190916 53275113 684203791 457783114 25043631 221522460 449282313 534224837 277652069 61622293 903560961 834474848 392540747 730104808 952289436 731576644 160506964 67978236 715758201 523612139 504220678 264472745 211747607 114180857 171627277 397203364 139685582 150160182 423086390 545119331 734261716 466745977 164490413 47892680 871628155 770597735 56122038 342816952 547113735 979552670 991822405 298702643 35638466 216431715 473322028 37661036 622253049 681926164 328707528 981513297 57596020 742811950 907662238 187944807 60991407 208123161 578812236 389475199 330337260 477021945 25208732 757539779 643221725 956498552 75429204 42549228 96590945 809938954 849962710 954042026 5198805 969449129 703159559 567998184 127251480 523054899 940619902 261164486 574046114 37196572 137918508 853639058 7446519 371476544 574217557 91992010 952586023 799391553 697845165 18807211 937003711 63177752 657379817 231859282 122191534 385714053 832270243 635806773 646223747 639253454 585633426 581338055 580383375 156999477 328407608 161518648 123765415 219625017 835852248 155133586 251955341 327147959 719620672 261235385 671930124 109608998 687912160 953193555 119820266 893601200 592369153 653515709 830007657 508175475 132308434 863875339 177645843 851832348 252357203 349251840 203285791 444231988 244295662 596680618 860161083 281048995 405998968 870327969 64185972 882588849 574729519 675792428 100680325 28219375 497111995 125874883 914983910 948414112 31552231 77655059 829787583 688912027 985934931 784969056 529587713 397261036 383205916 280544624 416031956 662414282 570541656 719375435 298479831 857815380 815515105 308947267 863000317 388810259 380047071 873433147 754965100 672003088 333134582 818819346 966872564 417719807 483192873 30672864 405098433 776639140 902151068 712915781 918850204 291999639 398643926 502088035 288774841 588726754 411072455 609089024 611093814 295481140 838785421 296965272 89655150 435998247 92363721 835212375 494501607 644441747 234528027 954011849 724598351 563329353 510622937 149250692 560579064 990688624 338557308 216259645 53761155 72941207 883540687 674511487 106525060 710586291 270010655 946987394 242154714 22459953 513677983 269163620 423348507 291063429 739819779 310273229 261454889 770834284 859083166 16599462 364408219 727321131 510262594 29042699 145822627 750452179 825989992 307899242 894047411 360210473 443936600 390662514 965339102 908329262 227297089 594391765 586381340 648598627 109569973 881300671 503159954 772440324 883350963 230763386 626770668 782827794 147969890 840073584 791006444 547288498 230449073 275611851 289339059 464957860 17833075 516993889 910417974 619772769 481149260 780340283 254368721 521911566 838737675 1146623 165834841 85862941 316420382 141620636 464362168 755948323 868131245 639931865 625543732 34677938 931958700 990463493 694975324 283413749 159949218 961418496 367626017 766685887 138604922 168495086 841885392 374321169 973866564 596211421 334721685 148572254 819129225 868828834 836116066 717911692 223761001 132141662 313686831 368636046 587689 856073717 869739393 354715633 208590034 881452576 198782137 640582876 907343250 718431021 465021128 345122924 429690842 439656637 172924791 706661086 488354004 541286449 489853835 184309261 216293305 286978071 819258380 473694769 114248999 710580678 487994335 74119863 462268509 965837985 349790156 98966603 483411310 258695431 113335332 528159554 610171566 790697044 862216315 999230883 845502351 705298589 203084401 87554537 908377751 623796894 581516583 430236682 828065600 4345299 34468113 929745855 903059523 598555084 656291190 31306293 225912036 106634875 414452852 607241046 462948644 228550484 130013212 495354525 611567697 795639575 309676904 564995117 486426663 253188901 886942211 297118596 357105278 195561653 84190044 897770 985892363 980401779 945327161 732260252 509621692 83747857 219342196 77748153 100636730 593497179 785902840 711309164 983371112 756366848 166947272 498130310 127864163 374994553 734127226 644922631 735002199 141908310 594430524 560506056 50392888 855044959 328324503 836530425 450611450 977055256 746234655 994076051 835197189 98297680 45910117 381020377 313650784 930668530 888130530 419032140 929614444 709457104 958178871 642468897 401048451 902278575 312969061 241402687 18733568 186562532 480883351 109305797 718834702 404097130 434296563 151134662 713593581 545751039 247724617 576384988 19164255 85740587 165818658 530272756 433128331 941013614 118290091 645280615 802404824 795698558 736555891 724098819 697020142 597959123 42860409 816107262 870370513 463377745 671919422 144780418 775060618 591206610 11400675 820189387 481092079 368148890 396661216 907768705 610107774 757818615 59299598 162122088 415317881 408694349 848327943 237053507 835801949 459621575 874566101 144477220 383015014 848219157 464501720 49259658 383003201 998872107 89490307 531041045 411902582 329567274 642595973 474048072 785070495 773817778 77798643 256485864 936091216 651743501 888203483 688222443 124631555 982419103 313708127 217705793 499909142 393550051 192566639 249266040 47946750 901060272 39405693 453585190 402667484 960103235 49451941 148662391 966536647 855954782 42928178 555951280 470630746 877133290 107736502 588458314 649963258 811584822 272404617 155800910 264257586 684589667 274947720 551483939 444052982 745534215 408850891 116906995 529947140 98818834 698582716 233882639 449771468 448028898 557720602 368487713 667596878 101058917 935397766 540782554 152086556 62266499 241518525 560357816 80503369 5433398 987047161 974792047 398209070 304882094 120239656 972613133 597807035 257367380 427488843 408914938 500685171 778631144 631729420 967278163 885012793 290122522 978120315 861962342 30238838 753303959 545332614 349620165 409199693 20294181 679528455 768085120 897553489 833413732 883310840 429804294 779917503 48937473 358429841 811476710 291344458 459959962 347353826 718802499 958331015 631081982 287473177 713408240 845861922 473852537 873841189 952271792 886174304 93961639 999259807 64169377 491912364 469189652 7848581 768240865 775974452 89643416 219421794 933697768 685204116 739493642 404474872 207580482 992492414 638249908 942036187 657323868 697176318 115933794 904337775 80738826 537519261 596754415 745056993 73773113 556807931 206604263 193547267 153993105 697601128 214152908 787487063 811215283 511735295 177935911 648723163 221915901 909626857 496431402 579399584 859938586 316623368 602629145 982786775 645209812 652243433 985852933 354788619 886133605 47039184 693729176 252853576 550122776 440911669 392296662 578638310 841855586 418714314 860171161 444325874 573297795 633376932 728651969 906087649 4984274 882240271 829364332 647798558 195058463 400195490 418381629 479260904 892000056 146831602 386760938 35345644 729451560 22377478 765324401 544079086 264988715 756026327 545994767 960885363 144973124 350729807 807874353 221420461 492524455 932742753 290907932 850652642 611001913 834023630 964448066 742044369 287383524 81711374 288274209 492189341 567795455 957197875 746298549 864971606 632447138 54451181 519212174 750016253 702970118 767346789 304805068 806987530 370663575 534427456 352927391 869065726 388103588 77150165 360483441 876809914 689831189 945884058 834659355 336632148 641099738 314709932 888976097 622489972 599235196 392120113 661625078 594503299 32797948 555373098 245463272 200059772 307330843 910674625 102501198 882767606 697097646 481331880 651191855 408504531 29546540 944018335 739195616 575934535 908357236 150806733 67982641 445750303 828217991 63921414 757986982 171303960 800453576 826299281 220313856 875063181 403846862 492109550 72387422 297585955 110664237 161261263 324439752 935737320 21195129 651016690 526670365 956882339 909098850 566461918 970076138 268968022 715401698 861862657 287655998 92162840 695855077 886166753 102709719 858803886 799055675 465361273 128530837 154219459 664048718 392359056 804629883 45043739 757554477 234290649 276134617 737805019 774124452 685564341 569269857 627532610 824020023 674856756 464415144 581707254 788505332 692775062 214287362 61325542 205974907 695058853 86850885 574655053 16393292 642251541 77164846 261638402 559808313 697408588 280200311 781708271 702449895 229421664 246889516 642997203 897234271 44393041 891534564 245896129 311511015 73667096 646024787 898444036 528206522 954456941 939602282 236239393 425477920 187638176 412936372 755967831 755214029 891117479 602121549 322315647 16640933 342201589 522412460 204505408 651727746 360835382 457994347 680846874 35339902 183311392 408507178 832091711 661246410 302460143 782090649 836996347 6396668 935525653 775786997 389667669 655315285 913544103 783271166 740692332 9737817 246412231 713209974 49772835 689758654 779457069 135512850 399256368 339366712 909211818 547015567 371086210 616654059 689272360 393184143 264525692 359157783 727237582 65557429 506621370 473048115 810974130 995869243 311867875 945179944 967970180 147949381 898965282 364398081 646771345 190501065 823398617 117343417 23153155 877240004 767884601 862163432 813867654 530529827 731696862 715124071 854619290 785619332 855563320 288716998 501088185 533864769 391410793 83197863 384608863 705597697 312007944 873032289 844269292 184506697 728284443 301073547 349290885 326222996 893369996 412249099 287100675 337634553 725669722 247905112 89669011 926893524 417193053 800507914 976887778 872479419 712976352 369200656 161621510 873361483 960892168 511210054 626768503 781359928 237243035 630498895 330573529 960789393 621738731 842780274 833340637 506122388 152757494 832758351 69716253 731362021 242143622 141401125 957802224 621806946 824131880 917980331 876621539 87973344 652855748 954245718 920682506 427626453 351261111 503311573 149684318 408420092 176250535 769383096 856592065 264132639 507919885 255702132 704390381 671279771 257294649 102049500 682267966 154317516 979106825 296982514 943438614 673468949 748129423 624900753 250280282 669136450 32894781 308280150 560844284 946659143 532155624 765530713 905921637 675317127 478003339 877763296 892309790 633798155 905884493 597933383 478001562 227005754 430547420 410683334 533892968 871894754 641205706 741957738 416661588 478223365 408493141 344219852 8066566 627796965 765131563 668268763 854051821 740158571 439851615 952556815 856844821 882057063 515523950 942571181 103879758 95673983 688726050 887284656 12921516 699493391 515983597 914627758 343484192 924373918 814609559 286090663 503146625 366720127 340861490 295977641 379881957 640562428 40133906 778453211 559924231 326719861 992103618 940311128 978687552 47399333 376614422 471500315 964239196 397855270 374623937 798418292 834936488 565209304 969981855 157154950 328174030 979889750 879002944 745583034 919141833 716798244 628299916 729645229 283226552 909176147 931705669 147127905 296205537 566713561 240440932 172281323 530229998 72348879 482397905 832024693 449289252 123543640 728166877 796578672 469697537 526916974 548457285 266167440 520727420 347211330 908051722 227165048 901990906 520451125 835710087 430277444 136339553 821615160 146832577 253177797 990943363 805006903 223257091 267637638 241502926 239283204 757009880 619734173 188614019 874626565 654186045 739772351 672693067 535109716 569404203 950058448 824196780 273830949 646037113 748946066 650047581 704492873 772544683 309419134 209382990 710196454 176625926 940968764 984086448 45138010 999407260 264543736 943650776 589110303 882318818 220275253 300542452 955650446 474549608 825736548 91036020 275594517 295505140 403679912 801469446 675098658 630929872 273048179 51584484 604784412 889636055 771625078 381504846 318038480 447421676 566433549 964944995 824844441 26239546 829552931 226487329 234095459 363192436 995924487 555541581 172789669 212119344 271263789 911370832 945010534 434733945 508974303 326661854 860738208 873848780 996526335 861800080 347154975 521778532 307555980 820420877 410622353 931073592 236217363 324899495 954734861 13156957 717025943 249859258 621005003 354267378 404379050 917291477 708211072 521941419 53983464 235058457 64394380 319332277 451726118 328783402 589105476 237047423 265364808 945272513 193698117 357140896 435087173 239950125 793518705 987386959 553899664 566811243 132778920 972491855 741355873 811644298 430280287 73863159 309759389 639562784 151469194 829598185 492584112 766943649 42971885 391757243 850508989 296057292 170797327 390876110 283356930 899279004 118002790 938884200 648450926 176635680 364429020 421741269 243031715 634930713 242371487 694294992 896575004 364008290 58118514 250409628 497052489 386283086 995911925 966201748 217936559 695144068 275982503 788644730 340587813 542006521 360056454 535898091 272323038 872510372 529686481 68308058 383678594 55251646 194316016 157223348 913118603 442743010 76275290 135499171 940550095 900054770 479147755 695942230 924547019 648691748 14292942 710069846 26736529 293594471 950462975 584166625 517394201 947955433 545960548 484486818 357780166 146582054 335644936 824287417 590963793 212681700 728481932 992086130 818462192 451122020 498540067 193817711 404470752 729545857 295264108 640115563 681708903 50581336 661794680 433601020 655837096 210323587 774574325 968533208 961809181 47942497 810857940 574030392 639954514 953439446 512571121 797973298 275169150 99566013 34206209 273104933 487677994 598484927 419943823 843729623 974445669 423027976 474945378 215604439 361661163 783716446 415916010 73730645 270375774 133227981 85013568 225446815 517174642 346140150 831947491 320355853 297253697 653369647 191632069 196393992 583001382 556744342 560643045 868973943 654217336 630485117 111092907 552384150 101475272 330727167 418617103 853718319 53906420 645916428 271093707 186512048 81226857 847873512 144937499 405650218 581342949 597756596 571941777 474865327 294577293 117969659 767128424 452742777 535687362 988875173 76560551 598965052 616503446 172091958 170624284 719888321 911744296 469914377 829949271 51144878 892446873 316685180 423813620 608350410 731598961 652898556 46613436 831187338 374696290 903918984 349242218 225187993 13822268 843561937 210889106 7158719 222994386 502118037 796663559 625536772 625633895 820682355 29959707 20150328 874247597 873630304 591268750 597036705 224864453 737940084 482441396 191608982 496438197 101473118 752115391 751023483 824541948 13302102 801820408 529536400 13376377 76481860 838961210 627198802 737805888 112669397 340705871 513155319 121862646 692310347 555668374 833703307 298957191 805408003 72214973 416014493 605124283 932954323 82947295 957658845 445446096 508584049 935483366 646245470 413604678 935109894 990930919 213573641 551499896 865539194 861256076 866182963 868171319 566871832 334313790 604368104 584680102 506053689 537265819 397566733 268066020 277984767 968850562 655537717 759838793 13529046 33685214 931786452 990354100 706815633 134596757 678011218 650417206 504884807 372988199 518692589 678108841 125907639 127551262 746573382 51760768 49486281 389597103 907569829 805424480 587244587 235105194 52498058 773528832 618032207 275910331 586087469 894981283 477356681 37451769 673302908 304117880 315112460 941881627 975698005 357507049 82367246 425576276 26401606 516645153 202901178 291328607 717398424 878909509 753358635 953862992 998758140 934930254 35453186 713519877 483503337 57864803 437158550 781430811 780688194 248627334 641080000 438440149 683135121 324042270 237428984 124990929 431879934 201198948 276984388 674994078 611754930 665947377 844816081 60811869 571664325 327883452 313889585 612984158 43815367 119771426 269915551 632974666 775630530 771301196 784417832 791486170 427891918 861844289 31877938 154955581 553435934 925802910 428484083 109756389 585116620 321182363 545791420 288468220 379914518 792882987 492575090 362582632 39437908 168184294 666026755 54064725 474435750 238756482 165530967 14686942 423889174 938468964 619289057 919857478 662245966 932412010 391817222 148815912 864945294 243004546 647599316 487254070 515085851 920388387 464961592 720007626 790081017 632906250 829801330 199715336 750635542 34183940 608150393 173300700 359724557 954981542 928363446 543977078 3759663 194113117 704616898 225141064 719481674 73413944 663916792 921353511 636900507 750085937 781425628 227268410 214610461 502053272 887325062 481598672 817661615 862105443 685605224 855646686 89720969 11853805 402128227 176977428 138608500 467724113 574824548 857738114 732318062 492272337 782267877 370068121 275242664 732590769 12021738 800048182 784645394 829739239 961266588 450561622 127255554 614239131 828636757 652348454 165608078 972022642 914439010 352777066 870100809 864865255 658502112 157417280 233657540 411780638 210335235 520983514 155012484 626630419 227460234 886996541 970686117 217075788 7367220 145273609 970802345 154360796 908835956 120656554 429410435 440515905 827815538 980227490 315094207 325753273 303185297 577781225 298308024 112627480 193038392 107789199 961432155 141273855 389715066 292181275 298517826 132423247 687834341 690034709 999287309 570456219 573495872 391633771 377268840 530601187 885528190 311884531 200806891 909972399 655862177 942341913 272916269 879716661 437825509 149493658 514918250 180771045 743585731 810215282 463176466 28441346 431196928 752675460 201078830 451923969 132650498 224607854 988729842 19585880 521663370 925484033 87357083 270333609 325721695 230813370 941964921 136011584 140248597 522566627 942820168 741044608 481464849 596750909 394035788 325018532 122173193 564925422 322109009 696368115 90922386 937465413 966081010 672794925 201092325 264282163 123840165 683085902 976356030 806440374 180814580 775459081 453085973 883465565 765880465 826654308 550817221 632078511 826938846 690436877 984925882 566785161 899538163 367829047 506607805 885252966 442659926 532744333 642791630 113879080 705894689 119329801 397383279 595367166 942083030 615698639 329600823 590167145 68216955 5235245 502975823 273727041 850026794 878155028 884146549 66992466 271804403 79763456 400192023 592283381 53907703 157153153 550597744 840320719 227395054 994294991 15002680 705564924 234888317 10352753 568880760 590313390 825729478 128097819 36472135 223220333 987622705 210474998 39385096 689339443 587108209 584488997 200833765 661324914 218997407 559792753 9600405 19664144 410703088 95554385 942595519 300683391 772264780 254001368 86574845 708812822 228594689 655052476 847876624 497871428 320503261 9270997 515437649 86441480 188552165 240864600 342116455 736054161 898252831 628691922 228142237 739539052 545584951 492741487 624230249 106297213 795269274 638440352 921578809 6607632 635632973 181121516 181038965 313873483 259529184 220738420 783831081 120330420 319702119 291273258 139619522 424569692 435557265 775216956 892266407 826368053 875710419 120967236 118501554 31227467 725305054 917254857 499699846 463606251 411834109 759740140 967747411 741908518 989218158 257117886 981053035 590745171 236671063 997104171 189258608 384740598 959245021 903514341 244001725 623141380 539151183 167039700 436231536 738106229 622515537 808494138 801417194 497173405 902459082 781838965 675279857 24635349 15513557 617265209 586318723 912731745 792502734 554915021 737696839 825807641 672548874 438516254 410848497 825386514 37661106 979201744 396099973 199379992 983772466 148520837 338685016 831053296 13494588 14239918 541413717 490539888 636719605 469397444 233527600 446943694 219342928 856040239 65711303 636800488 641688200 669651458 194813471 272317182 958492870 746874199 446177667 504960497 515664758 787637206 8200026 383165049 945462031 487331970 104541428 611909973 548288160 398570983 10222056 653183691 450947294 191215423 501270303 675837063 440232345 694245863 937305073 191069402 813993713 560224729 467646776 792265382 393190472 573606904 696317490 764978156 491200742 817770992 153461959 367862600 900344251 617799692 576543937 352528887 874571 535626012 877212403 998376208 169722922 49481722 643552477 606936674 898400727 495422932 68290498 514953544 170279599 310927266 602355675 223032260 642635573 508432627 942177322 640083071 801500317 309964736 746862057 861815402 942056869 556092984 364744052 656351810 409474534 344348381 610568310 836858704 882217370 591637618 567067876 768338227 814680926 912908316 27313232 771452950 405046106 474446180 911592286 695483892 121444287 174334166 995677229 737387348 276144311 957608165 312276116 498679126 274502742 389192386 636050094 844326578 492277866 994302946 503551747 541500648 776542575 426587695 354302526 197838710 979527255 868316215 232724864 820359237 218581842 116989082 278814386 607554485 839504975 44824365 191347599 20684775 723445668 587217419 844866052 942439895 762578602 381359018 760225633 301883887 820920718 558534546 59547851 177351102 607751826 982326562 112800593 528810830 412183235 724675860 744320380 732406583 662381202 349209160 952904864 647730356 185492608 195477315 570286925 528634106 212361297 29057055 953550037 980454528 103930385 855476610 716908848 429046938 392540550 57016628 300848923 852274367 41547081 107708773 103817178 803519636 187590781 626631656 949819630 75196804 736230728 35696670 809372410 101551483 751100998 370747400 13463962 356390016 132811087 656604266 731386251 338039743 654514044 41894926 930433126 723280345 840710218 861377934 389738525 708835643 548194285 869168457 14995302 958726579 945953478 590012702 686825450 142496384 131422952 781200925 247521977 464362012 755073569 676546652 525544310 1706103 175993498 177265993 744657370 715214801 893890874 233884690 348690948 855397423 145571555 570703746 487906577 526083924 772944906 862553453 159287030 274073464 473281244 583555482 959890460 367285150 409221074 800920810 192377156 833211625 787115661 357548829 773067701 617164209 964993510 15352082 999205629 188133999 738867851 300598509 261289644 418099302 308397303 366935131 542969131 907115632 749905376 235457643 684127384 148277499 315809484 443152833 257616680 467668227 209731899 23855408 808935988 326976597 942073992 554173443 809689898 515968799 343304719 32377971 355593533 404562138 187221731 607476273 516001540 266977650 643213431 824785007 950030117 47105400 596671307 710883873 746656502 906132804 561728247 758208118 475088893 803950928 497670207 515985442 763420200 524842755 713003596 848373198 102699139 198206652 217487379 527079926 328948034 348683940 936026128 138192918 382897727 126650679 172558915 436624038 677677622 809567097 689056148 189696040 264544937 75937721 138840656 556621332 918241532 962626116 314398891 342830169 72813937 248917024 196016638 194936841 996878387 503251261 180562154 34852607 957686549 212406899 886493187 520330112 499074210 416644973 340867485 421311838 29999342 18989308 251455959 193452091 709224448 569400776 388416230 727434264 724463419 658330063 503409684 243758998 905474948 49038826 297995010 598818958 196616254 259415070 55336303 530100168 633302979 130369029 5997667 915319556 248811372 24547128 500889464 925363626 312083655 284662445 222202806 306182863 211560861 381236557 344496309 406230128 189840103 632817043 399246843 69857225 83761034 543927718 190007643 309637780 756657508 894105446 291090360 800831496 524021235 737803259 188094005 435174446 461935809 757334048 522226245 477272912 82412867 772855578 89963816 790799631 61233696 780531363 124965964 814617775 59290830 212540794 248083606 175640568 37602491 843349164 738697634 141168311 62263468 977117302 569933720 403273664 986495318 774628116 621382447 351611044 872601571 417255306 37173086 409083350 241438846 3193864 918791344 899966166 771800950 465426318 838590669 612278360 555952277 35530996 318474816 152580661 132970896 630938828 82946020 619054041 153290299 713314533 252964650 427067754 224168638 36938685 675029324 260054784 450268768 3639519 299709279 512162113 738039551 644529020 565655400 721526343 380409682 713401947 717603225 657985095 125751873 647618028 488740297 232985916 406432142 65195463 46357480 34832285 616403768 683057957 469380498 323874455 736385478 202350100 627862628 875067538 197448240 416161965 92550752 348676365 507650765 243591228 666408492 785488040 652080301 356808124 8819177 548866006 133962802 314203562 104960431 126503627 811296115 646509838 948601893 946658624 592739807 823777739 144383363 801988590 431086076 72897651 684992959 639901894 90116264 518558195 283607696 505185206 87322537 231381122 882652225 914360414 178330341 316537320 437740970 546083640 641407258 592325619 690216470 270574152 836913609 240410704 518184215 956555141 476309091 800278113 533322116 117556317 689745005 411317697 852367436 846299001 751300461 409553588 425673981 160182685 145285410 468781009 822056913 507871885 129000988 962861470 565534582 681224050 836100743 457658003 702199082 197679688 737959579 315293009 663227625 75300883 317494899 589861576 940825551 49307938 959934874 803786219 29414354 573327677 957190051 681677827 649136481 691890465 693307228 275735818 967542140 405242179 836600672 614378439 212255107 942299220 381708550 154641494 274230887 587019291 285296217 784352004 972036618 797629258 336673692 281607277 826760752 280142785 176213243 786046500 926418402 318128307 83846723 468231162 709955752 515296068 951411039 453814431 511313246 720167775 96995572 578433050 628749254 691178153 464829403 183480573 30300253 880862908 565950205 529143164 178873962 489704542 197630431 512945734 155851775 367467951 838642783 98179507 235024436 61147754 153441530 439941563 793004382 805910692 700997182 979140227 173906535 146627444 827407917 778722108 153241791 286872076 778407984 842520752 935626877 186692958 594089435 591158603 861573946 756617367 877741698 701237967 782988268 561544726 257607456 169632850 919500170 111437975 14416228 568584628 609328435 408641709 76945171 943660337 84456441 912639566 910908215 595901306 365058617 20186603 937053078 860843981 175779836 599393775 771812146 270661293 826790297 311456780 502048377 314862846 821609861 807852875 295604214 541700572 476819762 778999152 160886611 433932460 672190437 173928251 282766031 461625904 325384093 18955472 758841340 663617693 875446919 341736504 104218147 379941265 227282594 809759784 264455082 771444477 942282616 746689504 752305280 950222085 468884338 862565564 717052760 142448450 866048193 134766094 334678808 370314494 261437152 763701522 723782145 543462059 157621676 918114799 953781809 179456961 625934593 88529426 266049044 235462663 868829737 47070543 942217674 46620444 866531065 40019770 277637164 882122063 123044865 295140354 421392334 746819171 704847809 218619319 196633714 121270523 790995313 780095731 856514109 259661017 381248576 931256582 424987148 90820220 127367810 844622903 586372463 227427421 86643408 94745421 738964706 148208979 516536138 511087011 203783667 886341225 947932793 33414500 13951852 803723537 355052631 18846816 758607224 677140337 570488862 839882591 934061887 967883472 349144831 772280435 541726086 984064409 642240587 862489980 938651275 285756408 493541448 833353034 489514008 494058431 22557916 890105037 675424852 712069084 618846757 456063740 930820158 930056932 714741320 266429633 74362590 151186939 717451056 113378175 29608727 217208850 686864462 159199933 113579449 408554438 402501429 685134075 547873164 346202933 892130664 111153693 229676355 263704594 242163723 278375062 231663823 2342964 498260084 519424376 440901784 730629386 606509411 178576454 869329880 737086752 970708989 887764633 902691732 151577251 566510623 939580068 664099207 647701570 569933163 344540536 200621188 893267577 443912606 293760307 378217202 121399332 901487369 570069578 621295303 319996490 959079114 514729660 284611601 996791159 664452725 56311078 999346152 514356615 785830730 656404622 882317546 237700760 177770785 103003493 479828552 486761387 498992440 454007511 167469483 569586855 101218239 729041453 811868441 244717398 722287512 300132812 512093612 992813532 281001685 694458104 954659008 402919063 346772478 621089182 201563428 790730040 625507067 940867921 174539254 538808881 472661113 878342110 17610436 866708974 74025304 498505875 608083552 961108620 666605675 588790973 537845296 474984189 201401947 725464805 800363872 787484777 44680204 67745112 352407582 149958985 441342419 461768060 315324021 670851639 451113430 81410047 813661274 249901656 172601804 97172921 777488417 873313759 924323533 712020715 810318288 41653313 642356265 324943904 379403383 137242987 776638886 78170618 688931528 350846794 959897435 538147264 853871789 793887467 505858847 351393955 71784663 251400387 915838222 959398356 916519276 661947971 25809207 523753919 380562070 520009954 517525426 73369829 830513250 802364881 708901055 652672309 525416733 204572197 447410379 120815336 602779847 745590894 221893552 695759253 420630356 415274644 502276366 49049104 967236247 405781937 105865067 511320325 555863839 871357419 652114745 275553534 143874721 920699113 911513217 699277882 445865979 966508248 306818362 176892172 962103311 396451568 392553617 630836057 810607871 392468540 641033337 769987255 949540950 706925267 601824217 85279725 887557832 135917231 755447770 197921922 413540733 2581815 212120859 26309197 811877697 181399372 339431396 8230328 802177951 25463946 985106173 742016013 130750176 823862439 622586030 766917920 953476663 138561732 397154621 586357706 482714373 873212084 32236958 595390964 7508954 639267330 290042432 657188233 154941881 86491011 260103844 200591026 484380150 339291769 730108059 431058790 358825382 152436870 695663762 783273805 819463197 578070385 691168804 428872651 44378935 877185662 485893210 141201748 843576553 900873773 545456173 433143888 848758290 868371569 506903751 840595303 675586372 391178522 403239940 981841303 662484152 877589050 475026548 767449525 677252551 738859934 399570284 737907433 442219403 955864973 462858608 629167102 908488108 605048429 742419644 370429770 628344254 411123523 538884563 288498802 963527467 17687776 577182872 991516825 685736941 971981852 125710636 947573851 337215295 92924504 930670627 270495789 974091380 173968937 911554115 8577889 882711001 152831295 762501154 368644932 945218968 160448584 952369131 407946028 201396969 953093635 563594600 128337127 302378497 918993748 276485376 872751133 765311630 815237540 887578835 907747858 474560180 933943963 958553660 688329145 80200535 229346402 550257949 847662682 246391964 538220890 24070649 573954384 641181086 791270536 306982059 415468965 239435309 96651098 233791739 194643530 856215662 578953617 955070285 221144158 600969283 277664511 420042167 307983750 59367892 942774593 670702114 98063070 572756490 240014284 260755374 498093276 109702846 634688254 122921539 857648613 79149687 747677690 988937472 249643133 776992661 334876422 901120783 259633612 943700850 690029904 150283035 293032563 746948279 139176464 582415931 301806433 729617303 576446947 701691972 843624989 280387068 570598461 201330794 976205162 264337923 595130998 819140476 896361502 898636296 686124268 619128027 847353060 717221155 536497280 959375770 217757413 143546432 242883936 848844551 228055401 139267592 105664948 175714842 703115268 286304138 708258194 37021103 145773597 240127365 729543896 841901733 31724019 974205758 947133797 329109682 556799416 117481680 679069278 270846312 964050711 762335118 892724015 225974303 279428066 850162666 244354461 323437558 952269744 727527426 287650965 466893363 19031627 510685127 932858103 434194334 353097889 152608863 308274849 44192943 896566865 928409018 259270056 540760171 576517075 561260232 591854318 427771482 867439478 429593111 421942000 94766491 990074551 774100101 379292236 660981680 815453420 726142952 724428452 880604676 179804734 956501167 742807566 481704265 455297408 515326671 888774873 931373177 783563584 403295529 728615470 288481314 483031068 454334194 922013358 322675090 502474520 482389033 184593279 866912984 908998624 682341459 714182575 916397196 26333971 564955383 774956065 126814986 41097093 316394695 941739323 703658520 106779353 429424606 14293666 536978904 75648977 413372099 754300396 863377057 941876925 468826460 913011064 322605600 740476381 179421532 159673355 964784096 49991003 999101323 656881908 573972904 473126217 636773758 391733104 683804690 571558399 497799239 586561443 869688755 348562648 663526668 581061955 162914874 670508329 155268107 36334082 872022473 376801392 852054138 631252860 843911673 8959833 376627770 447034233 743180542 477529677 625471960 80706202 558335521 944566454 418114724 583601326 690080396 582050171 225469414 383146046 437970447 670106934 61750200 49994296 447249138 675262296 894062658 180215241 562552134 338083474 57984860 487304485 884744660 777811202 292194193 946762111 522123752 682045162 478000445 456779083 421663747 454673132 694813436 515010249 320111145 339071741 107404142 66946825 307698907 490145723 523669909 658861072 349935288 125627793 156289651 646631655 38136739 759515256 815596976 129394345 348918448 163645717 873590060 208980079 795582816 258486953 343605183 977945363 541793166 365845686 128244226 995226914 970845659 791735227 387089362 999625744 90925959 897954198 610747791 344763418 24437596 202473142 807338349 571236933 547029480 563045054 596954494 107026995 631584868 497111977 238264871 325420293 382918453 25286427 300949881 146081396 731463295 42808767 817924830 72969439 901944282 681300792 736040986 484285199 947840494 555011041 415604541 704558111 700171000 62427146 889769110 637695649 340055557 734047750 275445804 757704386 62423750 342596065 550940765 973033716 562975456 546961604 355214401 936221253 701440547 802072300 630946789 801885857 878525276 854778423 428411559 876104464 141579595 840366207 194735249 147728798 841536597 155415610 560172102 842507272 206611865 402137708 843441900 498918736 952120403 181497742 946357229 559533307 748500937 912130745 218010728 30203003 182025360 116368724 82272388 8506612 563750517 16357358 565938334 519316362 340089003 122347741 921513039 258473530 390908012 855590233 475528223 563230738 713609373 732912970 739648807 115651303 972618994 548123008 38932891 321100326 51878562 208327312 951856850 371865491 812138424 431288025 607639291 980350701 826815847 423626134 705878579 412089247 954765987 342589610 876427457 152784907 989757593 542200167 854042575 105535989 538334525 993638733 399849537 238809711 328123184 812822340 162090723 627265639 752150432 835242112 175673490 141869399 531869164 816500870 839396345 942277332 207119410 431823473 76414819 676342055 210975795 824382810 711552255 277479656 636556362 770583428 602630127 26808885 734795947 228697331 836094200 454759703 498372127 578557511 974398446 874096721 143396553 662290590 475572190 79663367 507732443 607931609 125133833 998413852 802754714 680245146 104750976 808857327 994200913 345334721 501738346 475966049 940618687 744418393 753847109 492876771 24416643 856173374 421736249 68726960 194469710 356492714 704320290 99032000 322746517 620963314 822424351 111997008 501268787 753216638 333061641 313015058 230979981 489838173 219680094 802826762 909110527 267582530 149848370 691044799 867270260 357422458 340184780 472516999 570647203 367989171 383683924 966547659 477901273 534085904 415235059 970006622 359525406 102104043 179566803 738296146 417952747 340303119 196295711 518953609 65845057 501284333 686295272 834619239 468813161 325181080 121817031 69503340 870995538 381507336 579670501 14397365 527377308 308215231 510437974 904102276 453020397 17934025 824923666 308342225 642848339 917030391 869966688 503483955 505380370 747850797 86274826 767034607 799414628 74596650 805333363 774179693 427934758 231228314 18419535 339526683 158393514 337941380 947140318 500174641 265692130 940427914 754671798 643424042 194926731 740363800 184641213 969052176 322876566 830056209 295837899 497483607 114668 431494698 884225509 39303220 322236191 604779488 922522682 181745071 336094796 217867395 611244216 267813282 644930513 109248677 75886791 986340980 572291936 912002354 751018668 181486235 449072512 206180094 345833952 908242591 260030412 6940104 980263786 968216932 953870208 261840038 315951734 2104869 668472291 35787690 57916728 179946002 11889388 913458340 379049505 718824410 567535290 134539850 71126309 755196826 554482391 891593200 484109808 521290018 125919949 100287797 467473855 658381000 584669997 223378081 490531224 521484942 707558193 167067455 589777829 544406197 402752103 237465978 709273284 419082818 165344252 240708500 144783657 778963816 243081999 182074297 471275354 660459183 321266984 787487471 246065330 941519297 15658049 737670732 547428447 167234809 225359 391389860 441986765 841365235 468492590 821434800 808909094 619370320 656595286 412060450 272146923 137848877 120895614 29778286 597973790 188164012 343446314 166366982 917778745 359323634 22770736 953482463 791314072 212043497 262839450 782395401 804605768 803862428 300449031 994996309 188139609 577209451 681661223 527187236 881125173 845040464 567431913 386146119 646891113 304908135 52503746 652575259 339899823 18258452 268302540 483132180 96685590 333384084 146868028 821005808 47283939 652197721 457192629 931302396 603178938 91837465 1579472 709727196 348031067 180949126 215178051 385555491 317751398 243938750 506597841 550927675 275809566 300780239 719641016 612416265 97212287 486279858 792562892 45431886 645964308 892656979 566976591 513252638 163579114 287185566 119001918 973297020 781506245 864299726 891048059 917499063 287725728 101766849 267369956 326556180 883564932 279262031 505969492 279550132 181423745 794469420 648171614 974795287 960932739 849487811 283386696 819652691 966105751 295606133 126815046 373841865 107103805 282762963 988180192 49078477 815169670 793962423 71031421 435818863 272481125 736731747 378253839 440820598 392637602 113182731 684626687 116570546 541521358 848071771 712694394 457733110 10225664 837709687 518093909 118305606 616909270 242723785 160351184 488259441 38496597 438979587 516695261 652514190 417195917 344816082 11218642 412416720 267706990 982569658 258529891 670341622 168423347 996392750 323016123 740051604 639346165 126461822 313018721 79131661 67153048 321614040 749655386 325037777 715976568 526071209 265150830 778214355 341397619 28394005 497152994 800573543 399320572 159042589 155629908 632318775 607483499 12114078 149474870 297052709 9378898 790376656 169249825 149136531 921534859 83947030 849449568 176670438 483764121 104401960 541649592 459810690 657554307 556095864 298659419 267502014 391590932 988288534 328473108 263059147 564666599 919791086 427645522 762638216 399547464 483434553 307157591 502294980 565568252 851651937 306096178 5349775 494369399 957944713 874936295 670400639 817926044 632286052 930999311 940879174 686539080 184186586 813398432 724422383 563501264 515683319 81222785 810915865 254311395 706988685 678334614 154892715 486162116 614575944 876023404 708324799 401077829 592780382 705774887 421368491 937656179 662848130 253905068 159897057 136778673 835189212 307916831 779230444 797074525 470817089 115143736 446065359 352374238 999129323 105284190 832920771 627635907 88243049 25199170 958646895 676323275 955713789 185349927 707766102 68157300 177331955 671920477 278051259 655624832 820745991 129456654 36739103 356787032 310910136 313558279 60313606 641191270 698981022 239212327 539236101 117804928 468318128 804729044 21319352 495627455 162332072 992994824 586683904 996749695 618965815 551400454 673211695 91173202 950949137 109664639 444008491 771489698 444729501 980716778 633043143 570119787 671626063 165346424 462477481 141936948 201576483 68308593 569659065 73976601 185606144 34618112 990781112 730416228 376004466 848926776 162389803 389015007 86539730 232837013 284969967 811428598 656682228 284035419 481563537 683292423 547298636 74051699 695313530 535247197 75395198 856206912 599505465 484008489 635875668 260864739 414900943 508503935 395485365 5800993 42976815 33086657 958767800 637469583 244617233 136494877 610267289 474619278 187838106 220583541 481310889 177117622 205947257 481217882 534061819 373693434 67107269 856393432 352246837 474818054 152895229 158324775 771004133 915067497 412701941 511078716 778985498 494505859 214895471 400704167 497185253 670404878 84642341 175997430 308402620 25101260 880459436 337012537 722489325 512964160 526808337 793266096 665904546 341226058 152255324 392462678 468560787 475245453 303699499 33888244 647779052 565344389 486857945 421713561 732011358 465947504 571717477 625236477 27646782 663760560 425181367 821810333 364544412 931307688 776076820 268850606 790274578 597023099 183675525 747572601 218597888 146707439 158498082 398086105 186655250 446667936 798741290 976098598 64337410 181722671 165001283 744724618 730233325 175923260 965778052 759918550 505041583 252458313 946575724 613228479 205506410 387243018 184417016 187508309 278764603 75633975 193561578 88097527 903526419 161649399 677154751 394899707 844808208 763497044 844494978 214091399 880564863 812481427 265525992 115870280 67425660 693286039 786886471 889303134 818407931 658927045 320234373 724790467 779711903 628839562 144652491 40213944 493643119 114781530 701861431 715800251 750241610 251301884 613581196 884361031 200455318 941463125 86303799 827883114 434681473 2366403 296553913 408002883 184197796 697892947 746743392 727772936 549861229 485955895 667106954 811349215 513617777 557839226 486374053 62354173 125578093 823458010 148514742 838545589 564128367 676425275 111986809 204390872 970033615 334149116 329356817 680632210 968267469 661781889 119758770 917964984 503348072 234248582 279871245 86365491 234087238 680220880 853382288 919427526 333073398 755039964 667133120 559175483 974361047 211782704 801676312 655680138 627735282 151739436 865954743 688513164 574552130 117320599 743599570 480706844 652536193 449524658 828684253 224029750 90461947 366715467 19661015 690996950 173300876 128968676 826985930 473932117 115514080 223072795 638126947 311369475 153363949 784240966 9579428 86616095 542732141 682252334 467515231 975415372 563647937 822574992 827945357 919835684 126369340 232753581 232154159 119166774 753961401 32796534 647733345 911197316 566911674 926883265 240783609 944007656 220181273 582637824 746464424 229756045 802142667 584067437 514620775 625136388 136105873 697564527 482736116 795743774 121779573 698734452 634028538 870290734 75565003 92039951 351430880 906820745 223062802 776728850 14867176 771447738 974373125 378448524 650019986 440440864 854738472 72507039 70232966 556550508 777205911 312602184 159274102 893037179 505482074 853213667 9710165 313036668 7346215 658346843 170532486 668378367 608537133 235490305 816556456 579629875 308222151 254323965 191609977 794190740 550510337 600459351 332587798 289165948 816805813 180079116 958489152 382042427 254648784 218917747 122051409 733317113 546857694 756880371 505578286 899592449 89781710 570771476 79712545 35793842 614128713 897482775 53621400 624279983 676340873 585786327 828597902 141747701 293709204 213949708 658151002 943049020 375482971 215577185 793886088 690201799 85096674 862814590 722835995 955284785 58426951 780651354 698765960 657027823 16963451 148603620 675247396 160995695 144720843 308538425 447940078 845435300 343470802 949267974 614906805 58519813 959468501 155361195 834307854 125456223 189854742 108981901 92712086 777362126 632630294 716391325 266028457 170937136 422044021 118653233 153625958 423099222 782906758 854352563 774791561 284165295 137883746 779394710 885591656 851275228 754936216 269966701 639061454 331154858 351922120 518404920 532452678 941520436 863412942 490983754 884900748 328324000 488017393 679651544 178538246 652600825 163618289 200043749 706979847 58616113 696344491 621438852 956930965 703636821 617086735 864200798 744771622 140468164 588945808 751335842 701428852 971637926 753004139 677616189 681470238 640527874 178826460 623569011 773811219 425400833 596705974 234690553 358391174 536138570 348373028 952132821 616046166 933349934 242136686 642643231 189672841 247160492 882294194 843208071 78588542 290107943 112742635 503418341 831010860 826352039 142470512 677917970 461254248 967086862 981548522 990711112 906344100 427760686 814206633 114465492 694342475 474286555 511461658 516736833 352942575 898693598 373915401 219924009 308437113 32480876 251058788 628352963 862620597 408134902 737038497 68785872 544700279 465800713 902784780 909514592 99278131 628330852 253129191 251936366 117467356 848440494 740056328 315866770 493417661 155457236 652666065 819598699 357535626 908225150 319723864 462502602 329750774 767083393 255577982 164743219 506560294 967801116 515477152 105771483 928965185 191711167 675166855 143158706 306573299 344124946 963609583 688309195 801496416 314298840 605591349 794075785 109421725 532630105 396934716 864180078 910331571 185923219 852489383 35823984 407335518 766034027 461514699 295582645 261780642 466494433 960051593 138434481 917145264 493502755 427646455 775477505 150449595 745661888 303359469 670142337 652957761 963877775 600919197 343097797 446979044 445781451 414020490 719672091 890488900 172093163 689096818 818145642 979365737 475254168 851070434 294008127 498907339 847326019 989400284 176022775 617740848 538458979 255153383 195818781 934355246 606005126 298214713 639488255 259353581 944281352 562444419 469442406 198043044 480748580 730268570 883955024 633468758 48781547 154245739 967544575 934853438 107827431 251052305 489124277 45094781 230397361 392231114 262849831 249698392 913683605 171390155 520093479 253119277 117545391 114779674 685531644 882216363 334763742 651246082 794666564 923789501 469808699 879483895 752500191 353359974 216912271 56266869 275095767 547086465 451222035 890311089 733768292 490118386 14712004 951307631 990877305 492232482 912622978 69605967 99819978 476369406 14452428 804215579 32811102 987843943 948070223 626383776 65738948 522491138 275166315 430987257 902992391 163841311 456068978 821030675 381036884 108402837 751400294 653198149 394127272 798025036 999916003 94691721 149349741 169380155 314982097 292394272 894693605 411397350 530644518 358615746 475186568 159820506 208424320 346498803 21702031 830003317 460714927 612612459 924138629 683899471 794513433 701849383 160635922 764191878 472993727 604924515 522842131 64961202 47525985 97647265 517128050 851072283 322038962 453882870 51265248 44925208 494533189 507735081 815330788 522367758 638983649 491182189 959317854 78223746 843506891 185455860 499652814 769739286 310198347 944194459 429734999 153004143 726136626 131946209 675953054 358480211 888807351 583468682 706723891 604533682 161146745 726648248 682859065 225697816 576600171 190957599 125183871 212799941 986125950 611271832 439393202 277417932 290450981 796633067 33194665 809315122 472239920 806880289 290848588 827301482 857755685 797635456 167864968 750311674 26941847 605482872 982369152 951920582 196090502 169043330 17876296 157962312 962227132 586237903 647572792 119957822 540700449 263025545 211006979 494637489 743843214 56761162 567462453 863308318 702729156 332708097 531146942 294001322 872860539 191359831 488255233 359494309 597916012 143321019 269951668 617259039 347091766 38075806 789625480 633311973 729050068 985951863 991607465 893355133 963305466 560090276 84222601 490829053 266865757 563586269 367759071 605674807 246047772 948624177 193282251 203036067 150737315 797299881 826128904 686287581 181954833 223794058 532504375 217723093 907991960 975255009 708951339 822132805 650734778 666669241 690044748 871212515 993334113 570492791 255587231 824498501 773594630 553824398 375146596 9895357 689813823 115784830 86399736 83024151 507861329 751597644 85016671 575264990 504151868 311372397 456979486 332507737 910868292 52345023 475090591 616419109 609054047 836428552 254344102 495594838 320188489 302425523 781166800 345701793 904262261 1845707 354600770 439114950 858022909 931667079 890012239 747128883 836456263 394518007 760576740 112147361 5387058 179562895 859780269 906388597 650040812 898266032 802046594 500596066 206968150 733257444 325170291 393122816 719623520 296950242 845864515 800091347 725861890 943113900 564944359 429530766 269456389 836994127 903995668 949878628 282098918 415131010 405249238 458809933 797509849 620823796 802535387 574880199 849862196 213676936 150176189 666731806 477264377 183197910 218098453 216714216 77879586 838652721 538300440 69839098 325578170 820957913 764724388 996404394 916170260 828387731 133259890 825599126 832786055 916825891 271832419 33116534 139170689 165497117 533906765 36005610 213367234 351449918 874337711 756605350 370789374 525702528 683481020 600184407 390933812 941541120 350006379 22479619 868980119 811036563 86465677 3128679 541219341 659017398 422515068 680523232 509478053 480434211 767047739 463276946 646555807 812706937 515647878 517845971 751028371 981211525 666046723 723515482 158115094 515090501 860717138 725606942 538480996 90728609 263658993 942875057 721293224 6150792 370790055 940203175 174472972 829245832 707734723 767484078 121024920 553812261 698335229 204827837 692945304 606887419 896269467 689002163 424382099 646545900 746816368 359778333 302989050 892470410 310556262 729572271 211136280 177169013 823977496 317015302 907352302 486064621 224249378 503205428 873785295 639977311 706020447 921637744 6401568 10591998 35952226 687981439 213342175 564019935 266369312 297520664 225365469 639588166 325785052 19095939 668768572 237294273 48666022 145381075 712717705 911285513 312764390 209484964 774015460 212133458 949342680 161760791 752384516 849283474 68837877 875869472 240274577 775625726 57633040 619382469 552907142 912866500 2307765 72195479 359384084 469476267 265248650 184188154 389436332 549903908 93742714 390928033 826369851 137694643 255560051 600834281 753209522 630723721 149678967 838976618 192948116 367409756 536218542 2300313 468607266 518658672 444904407 508374951 533637114 360463963 671689817 900374133 361659011 428004284 84780546 590035573 366675026 199402024 243069495 308817997 114802284 276593631 430439395 781986926 958925896 449902257 143158281 856558726 622891981 463773233 963079430 96997907 489914761 46591910 939339408 956873717 195910804 806683390 978127864 895964010 302430935 950362689 546716397 216563705 969049871 412699917 811745494 690184595 501428893 707749162 209314556 68117305 114397542 71397614 800782910 497408077 778772948 644646464 810945628 140244766 441406550 481665462 376165746 23588839 932872971 958675240 827492260 378589374 89917679 603241546 126029463 192396933 532947971 723473331 51864704 468356811 138607874 20093115 784973273 510204861 53514879 921484554 524437632 108500261 486979630 207905410 172083917 817452207 670178565 814422696 328682979 585191060 510779274 192320521 111479410 507347029 466857991 158947788 488153159 986386926 928147849 375571555 639026555 188189098 394108977 866593785 531351327 969428011 739486873 390501163 713054651 435580094 754377105 326075288 343203454 318559123 217414072 889123612 747586579 100058074 415921070 687390437 441859541 863668726 530650960 701141416 337370679 480859826 846604368 417672049 565702619 5125957 366926153 314796479 165232598 663241899 789160186 501353310 572219489 780794574 979772186 226813317 209310586 585791748 346655134 351794392 394280507 476452552 825331816 44388536 271526572 212088708 896152310 718439991 876600918 54924787 232247137 272775895 608843426 203517864 980053420 582997085 518426199 448461326 437104036 160673346 518580774 466665200 431898409 927523529 682829743 975252790 930338811 176743310 410044857 880328986 440125601 847859567 990241793 302041354 312293799 24481703 586995741 595069719 63820456 854247087 649471820 103331905 939382381 888463445 891098514 955057309 738050993 60535220 623740592 894990355 77287194 984633390 771069878 472855470 384855069 470919664 348621227 984512776 334579169 109053313 39464871 962786997 496042875 916521964 345833806 173251000 100760931 191619925 558891264 732798415 721816427 808863543 145939469 650028936 709398277 74807853 454706300 608234379 819266916 950732647 389070280 840553933 132350340 958646397 622925013 878001866 149485498 26785140 821045743 514137258 440289642 803834766 991571401 916476285 267908952 54971579 888050910 602688561 345651731 807500993 415096676 475686522 281713060 897746075 329042377 854560567 437978399 180121111 419658817 972418497 103251818 762845516 690818872 437117668 28816389 963498092 246000126 865851804 231406389 616477106 638827830 411185192 26533523 519496479 464053591 243502803 528112878 247578857 896876594 580302695 918984653 831119515 862812827 199437812 601027837 876228118 467904647 378882048 414806430 834627936 507487570 495329130 823836498 506638200 438715665 619079886 197852420 583196000 501574533 448027698 97743020 728611362 951400030 182597746 567309315 153227195 724251020 502545165 259857278 471741574 704462880 142276627 947428826 549111353 374757080 594889632 534587900 578812112 424236827 277973020 266707494 249631754 686901229 578672356 655629605 738141135 922161148 446503149 492496037 298526683 516744737 544512683 350045239 636213984 676221472 922958230 409874690 346659846 68285845 651876261 296204648 278927093 4541411 31929093 13630008 386178919 655443385 264260946 209363185 173264636 616152783 292773736 527722063 281618017 119736791 510553727 555183677 549763578 534238292 816250526 578068196 159440892 883573842 575123990 32035373 544032893 121835163 68180636 861034286 822000127 646689599 659183890 580978086 452431844 613580854 693435 352670109 375568296 660370757 981175592 87482359 541755863 807012004 505947910 724850412 814386752 727862027 868707953 778067048 749796688 952604670 95529661 244034307 291322049 991322924 443096076 904109723 680147957 66451337 498032430 619017 293857391 658837895 577581667 987648565 353121013 259237603 96219186 66905753 300373133 246375670 637311009 337968554 930604332 156829595 154876162 459777445 468072271 659635459 434264653 43405325 636294229 89045260 174120280 517193724 811531846 313193572 656823853 755289624 226147343 501209177 220397314 689941793 450289625 689776563 865117096 211667624 287327043 844306221 747119109 613191947 620201112 859038789 677184353 908641364 526152922 407219816 292525184 623227899 207268828 378220771 931442716 858981642 42378835 173461971 144042180 771301174 142748521 743213995 64150879 429331159 215807428 252570816 290177275 601508879 72460081 941470825 456127741 561398069 898261672 478879008 340480175 308033205 903693557 703997738 40598065 354493503 329151997 11089723 79932376 748836370 635330178 975682620 595993487 787363628 612464176 865100088 476218503 651049433 251533169 532580866 518374818 703337139 225735246 803415147 824885527 93730377 849777292 311930179 232661889 906331636 815369108 403656803 426815051 869789025 749634014 659895356 53163758 365330580 464076235 691285241 524907091 734922109 302873202 362434970 163286914 522611885 474761842 128712039 607867696 790272452 796214628 271913414 165204169 442477554 28984787 773280278 698007037 932603256 296408868 704741240 238889425 517923373 501927416 312421112 358140961 638195374 740428249 26114437 111046537 465537001 836824140 417920642 613293218 404830058 531895746 899577862 72813253 962122018 858143149 502830938 819544751 952160082 720087810 928729200 482014683 926384603 848580620 176576175 780132993 391511769 824574336 472134103 493613717 400821303 867135643 288857527 104784678 24745702 483417256 974402133 663764917 619999410 249749929 823969909 135715130 183033289 793706020 247254524 83469833 910533728 64268059 579381547 776860819 507927306 739938230 613466147 758639457 735959266 794450552 866464237 268379838 198903582 232797997 350812655 789510757 350384442 427329614 253915206 723381452 399979090 739120122 840415351 691109412 905916016 705634189 800487379 223799377 15184196 413287578 499329601 283777821 303485434 457697932 539416110 904731415 826323908 681990672 611852009 606355490 632886452 775858032 576386300 471334390 813304628 880335685 813648065 805714657 444682930 499117574 851371870 335353632 751235432 540830688 981659006 437550664 400174696 393201852 41261429 393604262 357379760 886660833 202277785 500246399 547581888 562460213 711008981 874114214 451778512 481181476 492469203 591037954 829453574 730960648 105339813 806691122 942282695 507209378 277202708 91129107 194743669 797714815 743732269 672741679 510730431 687253481 819284891 45301953 832515226 299572763 844957709 782671085 100415891 687285114 885963257 482803964 370897835 232002175 671653372 358817672 467306423 858650007 871661983 304124753 116005895 221001572 452586043 42386628 508982380 224561643 351386584 992488972 114382541 436697535 336119549 116799092 166283693 760514871 166211657 722517992 975248829 601641924 885765916 469773903 711868442 251638430 488390589 685961682 747773896 648853018 419364234 558601711 879576245 127177574 672562281 170985227 947144369 674283836 140393869 321741907 281532072 970297178 241266181 347810765 926335019 867880267 560522800 142237917 536725186 360646175 651935681 394552963 301075137 895969639 504343687 845264434 187400971 568484322 522091113 417881796 270732208 277893970 69212740 615346696 373236024 946962568 296762303 673797298 794722494 869466803 39816506 105426374 548814756 84717103 56385619 506278714 34734205 23221277 646263920 761685942 609068005 625936273 331202558 590704643 976700536 129289500 243160817 852989730 206809955 160248464 978365018 215678921 415911942 101322956 969447347 772212632 641449640 324892739 287847897 828586002 902262403 575641664 311778042 758578154 902690752 918524682 710234064 265855681 671576724 38467949 710411808 416812073 218422356 702717267 344120535 649044140 423300936 708645676 635101691 120651607 629594779 888969151 710351350 916204694 394024553 221524014 872384980 785153412 438941806 356356132 696904513 739430807 969733478 270930473 329301168 381873124 14902443 140997304 731908324 921125800 134349774 390407447 744481277 745255835 807336245 269920258 488017533 326388258 144686742 270678838 282620150 252531164 654754529 656219225 309313527 888745939 328647751 911508058 239738905 717682942 885029466 229168111 815476345 775882124 378150157 229441522 309210647 58005563 308402045 182087252 202394730 942752574 199507728 215101408 399132188 600815063 553040918 405413800 715880953 394547537 767256816 215341490 420800414 900183479 174206438 679238292 114458391 911975954 572679570 379455928 353393609 463284365 913671165 600989215 535965978 510180622 150670733 774369561 935642181 507994341 223056987 75094868 810392177 274164875 5467175 670678136 933602325 986280369 393350683 778777919 427663182 393804903 337441996 102384522 493718911 764397992 139505261 292440154 453614789 116340122 577249262 551696866 76922017 526211985 474461371 147514418 826892285 954338468 730315279 305286445 668822008 184847814 366017296 534827826 954950556 24527663 138533090 840847137 405817205 87587036 951668683 374587866 585709399 519024686 597413224 433915894 367556087 20976802 76935359 845611155 625096042 570694637 540404701 464000611 174186111 935770378 862926985 469709266 360300785 796529087 189907807 302398000 322451842 515149874 289071902 846398240 501220188 917792147 603938585 176426547 101314157 907027461 134174183 501115820 831300232 852170876 203789812 368224996 879453244 622317077 859640753 703030734 608560256 284808414 576096889 901501169 180845967 939523186 516110971 752442524 392883806 643274709 940368425 256480487 925608588 818413565 537882091 592981238 265650677 930684689 105152862 730187861 170232001 29940752 91642814 541119632 816763186 484170293 809965782 143534331 497504222 63828986 775385749 884420107 470902409 252191176 513876780 122222244 506728318 322982911 52556314 879096474 347266909 292650606 314358019 65458937 92755111 985785962 170733405 977951163 292700732 639719883 83895167 487939953 19420664 944762350 687571534 743860899 464166853 627226402 151072902 879417007 602149951 312718742 335951040 519800586 800342899 742456339 883807471 828331188 795684673 264041772 326042482 809196476 697332209 160544949 942788660 688023439 986773890 224187364 195012430 709235641 579570914 569328488 584722589 534399613 576179915 482614783 483272528 358454131 501026748 994383726 375150382 414816985 35726737 979817219 750305014 222979958 453410849 455495641 555842131 664122913 120235916 270552649 303895740 213981654 775497891 434110188 250423580 322620671 758403552 247118669 519749355 146237344 744783342 386506320 4731444 821845991 12150725 275277493 602099399 361593540 778664244 96817144 911875866 317292321 52079061 169627743 927381636 920564932 141396829 711804956 695876455 611303451 912717899 292461192 545206811 60957037 63903796 585616036 371966897 476693515 186800235 815657735 312907934 460959833 379211909 382687433 889170901 520515020 241904996 190574446 815674992 277287804 392740681 784166785 945886663 503900200 690893431 256505086 608612116 883453122 877714139 593146293 778829121 537329141 450238598 484172336 894617292 221959252 595828680 111632283 486441537 657323502 514623770 2867502 857477040 351590225 913178271 576568553 446293367 349231875 896131858 292233828 726810112 835612658 320308840 823281987 880551637 771852143 8765845 540418306 586934848 832617263 854212500 506124565 360621928 47331105 454493529 796625177 84521504 578669050 127122932 787825793 875430498 812818214 872818564 417002985 268470778 102039533 631017387 52475967 724625374 68860098 773651881 888483908 767686653 662931757 894527493 475370659 963205035 677100296 646465866 913137920 894760467 547019155 409951314 557700576 897426891 414563278 465376357 619003466 125451135 658181997 846557328 224522568 945195116 388198387 866404839 830312452 892379110 637068144 335482258 736542706 640372054 407523371 943665707 772915821 525379433 766337993 299109747 719659650 712103904 290534151 908543060 149605690 230355955 637160542 846945465 400222456 292104848 999439380 510220082 564643860 820232375 268339277 795647531 821882734 966223788 328763310 238793420 636643820 356401307 166654414 693639647 799366707 601116318 590417522 46307250 97865002 869553226 260237244 227561504 480594986 569166918 473571211 998357742 339270812 592689583 125492061 196698901 168916658 357917392 119864638 7677506 371350815 297425265 644949305 321301597 445215453 35233927 172392397 209185188 623300547 423634339 720159772 537784907 837598680 758764852 228669420 454105473 643230552 148922274 256200372 520232921 44884037 257957606 195880135 733745932 191423889 786550249 363018824 40605174 773799271 624021458 705575329 86561729 165892870 423895330 50304064 435979750 808866440 474532628 311263411 436056308 622481385 28793708 648545766 838086748 280095 809364887 254559666 554342060 482030912 553798304 405926230 132488358 546848582 671274154 193983407 399941250 18750092 10816916 572443319 280232597 307348740 996794368 545952770 871835455 64695524 965001972 925055454 214456906 795997699 682672068 153128230 87095390 974204780 727991153 416240407 703428465 152235517 143561534 740955702 380694916 457048987 340055037 679295533 536455287 758717915 574906774 412964670 395362531 218780725 566720784 244262184 396649931 571719751 744717832 999796272 914346459 337655161 370872633 292898260 306346614 175159949 474145442 576864440 914035277 919595800 853756764 656023772 506416870 912365883 84888124 127298651 899798992 104089066 712636591 609066576 546591105 234890704 329322533 573246930 393918782 303118728 316600816 537305993 45045531 522778826 957914903 68374272 661340797 930096694 438481073 138439598 452616450 906108167 538624063 720048565 967055016 478530687 181951895 966000647 151685814 904633959 348703457 190949015 827865268 741830189 538322652 704084461 136152196 401850119 556608262 344837601 820265276 120737424 323643302 701889440 120219674 530307495 568945277 450519839 586576245 727721412 604889534 120813378 26068526 17144480 194921862 946610166 803356884 658851465 270863602 328427617 850504432 299150663 109950617 678584192 575698774 445438331 182209781 247096935 396505988 748549612 248947138 204419270 762813573 251147502 388921046 904832320 494709978 407317748 374771832 260598209 582100266 871642046 890330111 969745278 183461821 21828691 527760204 500208252 639590359 140177119 796335794 763631018 287495158 403800164 370269765 535697005 47122040 961656921 972536390 325854778 505061014 155861947 532464179 222802987 979257462 43623448 906913397 597176321 728748552 439579192 274691147 153028062 28698724 870966442 39534333 719676012 295097716 275812359 128219765 974226838 99556882 414144015 75387573 228325204 358879091 71580960 62119835 99971225 823527017 539364320 391796064 284701923 68042552 888900286 624241822 529697563 270455248 867767406 154605233 679845649 541828286 424723727 706568601 160453499 510597721 166675984 405149805 866743998 51721557 273344878 603756301 822999807 647636924 136435323 479176474 527231754 39120396 449278062 65942223 137849895 492116795 945798259 292267597 922032394 779039617 944662740 802636424 737672956 647177744 704952558 174511996 729212269 812520977 116041278 207241185 729769028 185082752 110915623 295992366 423067634 13409470 313039059 774390292 959965636 824843819 999559142 132282803 142875126 902939629 734753181 664683171 484339152 162690863 966234734 18605704 683727600 355918331 754492481 9661815 895278649 109401240 993927897 427268582 116181026 874829184 865031674 337553264 8074584 902611227 410667850 243023153 63938736 974171167 978901107 906402532 499568272 678047682 910115066 486894946 732030130 429528546 266708133 482222203 305569647 265616976 96385404 208199321 390431547 762701670 273117893 112069942 316417717 71208332 61039544 99135562 425136674 440172271 494364476 689639265 565086115 392359307 807420703 638364905 957014884 22939261 685891760 840001160 517085484 958763204 750677340 270485484 558964787 77683548 742847290 343756791 365349415 722842276 618950037 15347820 343395003 468051955 718378716 392839449 782308566 693201001 725850044 224769809 43662294 298697372 723747243 848773897 572878535 271891033 576726721 774834341 222675677 627168992 165611001 941110992 89700191 893464783 133031815 728666322 905197832 14050113 512332227 135495541 693135982 534316018 194428397 860812478 139795419 819514773 33517155 521943758 375513735 795750519 579447098 703966577 226402728 320000669 14928773 197963598 362842924 47729687 995418652 351664809 71694999 679411753 901867393 206218469 461739496 778927118 478300055 29054157 22347224 174292032 632722124 711618365 150211255 667546028 720989063 379672502 469198021 315965667 833826613 287373552 654396634 850319316 124564039 387615660 154513145 181943358 172781800 386764763 830971007 236373466 380296140 901282000 606688486 355373295 546485420 302205701 49383122 462227784 871310216 480851941 556755012 913052184 618617763 822943868 397275653 975803180 59026550 322789089 523465047 179918748 261264252 925615005 966189961 77234777 750035221 228188711 552642590 795402544 775586094 531976397 644411655 327600801 698396146 267070014 734244279 584516881 456460339 264881566 264359658 792581544 95048804 699180449 824356546 553470848 420318263 281590766 225772021 714878472 10782987 836443213 839792357 464068431 442299083 617369700 828826602 745491024 372806357 683936361 131394548 60592197 799384811 198109278 628559836 942300496 527395970 339078569 920246564 714739697 220660499 272256618 532619187 46812684 982238528 197910694 967843051 9641486 905002786 189718879 759879158 907715821 229429142 663421699 525643178 282506813 959964104 993247301 142874125 551977383 965510030 339105677 821298498 835624714 361430427 833381172 1569695 823733626 817796253 549984595 622515128 535644547 546931284 305808148 957259052 666818974 625004478 899769641 918819603 764841582 480755248 804116941 46440137 962754634 940081685 763746239 710366418 240189283 874133965 537661003 808216665 672436805 843844019 123613381 417961727 84701746 348744241 555901041 493529634 123974419 217265500 615905758 755816346 906401801 512477263 485733096 340948067 292722536 141623711 751994694 130486498 55966419 227345345 180115324 620897329 757559508 296667255 787453091 719775144 917170240 469897301 531639041 839086811 955718858 843746114 781802310 14557163 95519128 945781832 111076233 889906874 317340073 920867782 773757646 603993925 710046892 782296306 474963443 821798859 169003628 986873783 84526824 429353843 667236032 681926892 285017211 617729521 588944566 162152877 202290105 554818316 929500651 287172037 157549699 216050070 215175193 613427177 842819680 250422393 770060834 552853542 989578451 8119418 357317734 612395255 715900657 805488698 213879975 63156148 873632271 324053029 495892481 608790511 843104645 655646877 889539046 406937684 899712570 373652986 242638952 553454736 204518416 177054238 468897177 735332480 626436714 775043656 265865465 393993162 231976673 347446272 192404582 55637108 93986791 153387492 276831486 245621676 44180823 449993270 554033279 676208946 194376626 682754153 245145079 740369403 76519855 418569552 949294972 780904153 303848370 878698252 243033191 237144682 389968542 844267585 368294463 463915847 130380118 769048383 496955889 256496355 195905940 8267261 748984279 642464220 221146787 532875911 161097015 128689622 411499274 607782469 648539297 310589861 958084720 951378234 133501145 254388114 8489266 150978432 627158418 414428634 794882146 734494761 388343498 611929435 490079225 55303215 143855708 659459988 25265037 605214873 683383637 896521599 673484119 14638041 783988750 386995972 470660624 882077043 355567133 677407424 851868874 218542239 700545256 789864986 359815715 964077125 319158642 132635585 782611490 279817993 101601526 156774495 115099380 439442673 493390131 456721250 899898827 553901441 884858957 28514993 252872681 171232891 908204510 612633122 166007525 425697450 60715402 38004424 911318490 980538689 84605999 158996748 949488681 847144776 576428543 590327368 525768982 606946096 172088922 767614386 253687448 193201397 489334523 936786184 196660168 365193064 708078064 103429679 884305895 130025558 743490702 975179641 657845958 595731212 899900635 13819212 39140482 655374710 508793415 362514161 216033476 969315551 705106994 744559977 606822585 32898095 240488555 538470736 889342910 343001208 150352216 369791841 529534240 203020052 725702620 91495058 763379456 382910945 601266567 189686976 69196091 628803430 451029642 695007982 769039036 528523023 60488614 781255428 880988505 698166367 100709136 566564230 774701231 300036191 786039200 732318976 964378822 542979712 183417387 702536477 203492130 455941888 842106411 462684163 471993086 507821230 920582668 497351998 458785691 664992602 663773778 762214077 734844310 466225372 466549071 167118717 954809325 592074304 314478144 274163752 505327758 261973911 866039984 956590659 94283871 619015423 7433257 710525868 417631968 127548474 165471598 758205610 4379460 561164100 962126977 497481742 695384119 289162863 718271248 461262819 410635035 403153086 986384012 131131514 777724910 80282699 391966698 769965341 347421742 569924773 630012157 287372655 673168159 979916516 574598054 733439343 294230054 836074123 636029064 826825736 214781750 252217850 60566202 727781590 702468362 633290869 282920769 960889948 380225576 360876758 658036056 45202670 607813366 476398311 150095674 19449328 630171295 243974364 157561510 899742980 160014327 664322896 604989698 421873692 363445125 769161754 828947690 934751662 280565800 875357973 691723916 937654771 58503312 889982233 658208008 899453984 409664791 479919410 585122034 575485850 170554666 850703244 980883877 616611810 248618436 975730755 779692797 412723248 194691158 543950500 842434274 180296271 375699946 269926682 859595320 708636317 227120374 489618222 5250331 201472365 909984379 573174162 943729025 628308037 298295337 880439267 406907263 644313356 846337344 995144752 243283647 499383478 992753069 665030487 681180474 273692341 859057477 393081950 913484137 736049595 685342396 159017871 625173410 635097911 36575323 613999115 921592413 48590265 420303272 150853667 37753755 503551553 716154096 295516477 505730186 620490445 946950463 505484108 654132989 520138843 90175440 849990489 438657282 180816408 726423128 387664347 991397865 368750576 899733758 44432677 763797303 243300789 640332006 735336213 332170294 532763452 896459868 451825287 245601640 283320247 620781209 681230998 866153358 113826737 512281760 347552929 329702831 631162464 849629744 548458142 287687536 272936937 676591255 3633657 210483463 405890436 723591328 297236234 280918447 94715823 183314635 23442893 27053126 769639061 380831596 307526807 563499564 702084565 179634850 112318513 997260343 704022516 795946505 475917635 721971266 863543090 25144418 963950209 27065805 393299341 249221849 95836340 372214718 387157363 711970969 850476418 853295635 328380596 180865619 288795049 135823179 501063169 583003622 620368772 40812580 683181537 774732915 146363824 38994747 962372105 206077227 493059489 805038684 569531033 219750192 940028430 940762268 743436130 630946487 944354417 412851675 58095891 425147672 34397978 721600175 567174635 904650927 717406724 225911460 743476929 335263445 89731319 73171808 316086396 569761292 478383884 549588919 43376214 479231304 642616849 8855055 273035979 302111410 101247674 498275118 324509894 144177902 96751320 598442036 564211082 837438895 450333732 645101462 547507470 203286131 783488210 318795872 840172471 714983353 826346111 471660759 900446292 20892970 218183600 16892259 8493122 777722643 7841502 4949302 704128061 575067334 888183097 438950537 666269678 11374519 495620328 660927846 145436068 253322484 711087186 908321326 447182166 33740416 350546581 543041855 560353541 922329204 755374326 316932994 820941717 930123158 26812924 373500738 509367414 187704975 106686576 699349630 439146201 339178336 970856737 990687290 467971834 191670671 47827433 458694912 32237069 779023477 69702646 576984442 638283021 399602755 326688033 779602111 153421780 147671249 865320138 196661673 427200114 625466767 608467717 587757187 736481103 17236488 785975108 235014404 263480148 609635092 415209482 606514139 19561443 831649315 582857590 420887382 553139664 220136952 567063638 624182810 826215418 618889606 677799119 74525863 282466364 141254271 352330808 29887893 135926220 694744786 179280788 77514910 614121850 31396366 915054295 792167228 64497701 241646611 547962481 203845824 546750077 229044426 496346997 186148335 349684829 987022154 460656996 412428975 171763495 850326947 433902610 508665728 857985330 383868733 602315985 959485168 248731917 49383971 251119751 948334568 477346554 735123223 597583554 560704067 47314644 34939551 321788834 546541429 815257349 278195287 65010742 290618744 886340412 587638453 293185949 807390828 445816000 76194094 710491269 511007478 582222516 477676799 791241160 897166650 847512764 690325458 996131848 422141098 368744659 429984844 811484105 586444386 891799080 328471591 596112967 565501477 695592978 359810682 844626027 874933564 133722216 721258537 973005808 277651702 729602377 267810237 325456592 78935305 294967314 833988866 530317996 83695495 252173868 982144359 794102690 740897492 923574837 298926647 33540872 761189360 491652952 584866644 414212552 528590996 763278544 255610805 885436455 630452753 636849669 73197463 794463838 44069095 872165378 327088399 717668703 365077277 818715026 817042889 444344603 131086557 756140080 195105571 463759456 66375915 400152317 966801183 4890770 586724708 617463828 643396064 758485667 6468262 310622786 169729071 847713161 155308402 996007593 791161071 963798257 950550913 299461999 496682582 44117974 158595809 163448639 104877215 19204926 968210648 234234756 834169190 118264391 496820656 45257835 467426281 712087960 97698685 227123578 548429787 278134828 222655242 472056382 271012592 544431967 574507374 632712039 17522076 293593146 344390230 204762581 10926362 480243245 318143009 657813798 946365759 32248917 958813996 515500649 595913850 318998163 253225446 143437661 45686639 911350910 513142256 806522524 63310193 24227773 787474286 504207915 715868501 382188389 849600887 892462803 670535313 771618415 452779592 914640583 555732186 612100539 57102559 873702931 919169851 907363708 8643247 418268167 966709253 721856470 895418270 591517324 687876212 829991068 455934290 239970264 74227699 4083951 589388113 902555867 424057866 257583825 173554377 177935992 51182953 26126313 805147893 530006325 317052088 195106787 399512033 11252572 897656678 290889486 232664972 818842146 147416689 595943254 937671663 367053729 664797649 281282917 79140347 424192809 359486291 29051327 601085376 496846600 621086903 45030913 769806430 56139852 221387097 862181367 519591967 229214532 327996398 53182093 509328234 251722105 854085080 280940553 763996615 864553886 411602503 776585851 696935675 687968396 109686014 714714310 182374171 76746172 884518636 112133358 950080184 94785979 923515211 145374447 5666908 504965023 128027458 362539595 711547824 203239279 148151926 446600989 988605688 334467137 845869446 232794102 865916932 732613816 963676477 832347929 427796538 730762437 208261672 934751854 407293234 625806784 885817634 784493218 429776972 5311129 706727761 862060618 411872644 744208568 670304334 878842906 214887325 22962458 573468186 945994877 380989907 447905063 65654 266321440 478006010 917981729 276570596 481547887 710544766 461515521 133773865 887878437 358046154 274756303 493678132 123750422 273728575 792135455 44470695 760540856 912375164 106134708 710570755 466198192 495912330 35859618 359162097 440645896 35298000 66887850 465620298 634237847 520077329 133842106 420295913 218367166 740039398 872716106 478398737 645884779 995311978 724766576 795326676 490660668 636250575 129357379 692230082 576426176 998316032 957973676 194668612 769840568 851380829 202934977 290027544 579799809 491317099 991499180 760299614 14388818 950264664 350064599 403823355 709579148 200043236 574222672 225348135 343615330 179548481 797169281 798643028 962578075 577992200 788191098 979679732 876851402 670945901 35451845 869022621 266144029 531912277 881094820 435998364 285283240 651367648 236302582 195786094 190508267 180440362 776555043 635479745 580029393 212754830 293577186 454242463 7934448 52446750 306874993 168307739 226854035 265180348 352245549 989039321 353544151 360522223 782967110 367173413 816180835 105842808 765666892 101261856 938521069 88841807 76977293 872889375 899759700 232172424 868836665 266506565 97570498 259147163 720520343 920242549 360571365 758467763 807676416 411130622 310146529 574051074 861362690 826701599 526594345 561997699 755827075 134979091 645881599 451456890 805091021 811695134 533390987 825564196 259836456 587936302 203458251 355204094 715277921 733031063 219794273 196034701 533620782 731612841 132236529 378944686 147932640 726924854 545318278 630855238 551109403 768018403 221896333 394675419 304485934 886700621 273994578 718657524 808307786 469831937 895090482 235484659 207109028 195446132 182074590 638247255 594350296 596709787 317577341 498452750 552004918 844837253 371723321 440952967 559867632 57231416 461760107 497832562 542277807 186697649 109366551 437610583 675258770 678451112 394041948 757739136 578648342 132115139 218148426 693855623 792576642 709565188 936441654 563387497 272648826 146874738 904485285 128916947 39787645 914694083 672805408 371047953 180623296 55485746 743416196 626994705 207430772 788110657 77259953 148426476 666830089 899465541 16350442 10540425 507953827 922975314 817701380 22513044 886136085 784030889 152965833 494210344 231637654 599604114 786479678 236276596 523018369 554803520 324023617 337433340 67080749 611269487 984674024 640240049 116592013 883597176 347850658 918714930 535199679 988600588 567450538 268299664 258374264 33605384 991811198 300527300 725870720 137338287 237973331 434976116 400735730 508451510 86795092 9288795 844929712 221946537 337898428 559493748 829307987 207627309 167025241 846716070 515140335 295024086 351739652 175794290 463189518 204285280 117502379 502273078 439363041 250025538 275173155 946694548 922955769 139807230 845694867 73764285 296496440 120114192 57150086 183638511 615198891 211672288 450002451 58422076 438788679 758706671 501988019 873422577 681271533 436954258 939770823 604197959 266140551 153346102 471839426 354988881 949926975 643682936 10219101 258877353 420669890 892130042 328827948 71243492 824044961 740065195 913939703 295066691 728812632 669485224 214388678 248230338 458270749 665813830 679314359 156305711 973662189 868203922 687729933 397250888 641422878 37355369 430069792 332070184 670845684 333347343 646078141 938688787 413849910 481127645 856278686 705479649 904147570 113054596 107836473 300221965 689633802 145721557 524028681 409838118 250110582 789282265 231075322 566419662 278213221 801854330 830356174 472221756 26310797 503940129 201945204 902836602 936389345 463125676 808751452 551427156 448985034 742373231 69136358 938773365 31784801 195148571 805354492 981834295 706289257 449385973 260109527 851872411 546072470 442107271 399310848 459919859 444369942 498261051 634758811 582427659 217986304 551395307 895435278 641763165 865457262 350353099 977232904 161917311 325276774 794609284 11044291 725952545 700762646 382350748 325837810 185278688 271370870 656416167 316628127 205913132 631543695 773768810 172164441 555392646 826751543 123416896 318387214 462007968 138309580 284986182 691352131 608031575 4937881 453759858 93155910 541983570 20651330 637590683 502388177 25838475 907706591 644196408 423346942 870440851 148323403 556160729 645094618 272108835 907074616 834951268 485550391 465618997 114717146 939028240 244745738 750703138 36964418 795442861 243111919 477830310 53278920 437616093 183246291 799440826 215541673 570907553 854420533 56997725 671081847 959373157 808041981 563831485 112385307 330022584 99154107 151124362 404512428 626015413 999921902 612978869 90974469 536433788 490594951 611771205 748037354 158793483 72629870 998344168 382646730 124064798 885250500 937130236 963905581 568212841 293876112 531812572 710455021 997630103 434516947 645305539 988448444 746676076 277326261 976836891 869083076 155216654 569811700 752347547 832232335 7378449 61760973 266921687 92003572 441645153 71931874 107215908 951512069 531416037 452783580 583141894 505116119 510478810 756648985 320600301 142160966 325087498 570357959 634732230 74019692 583536046 83643564 681814478 696756747 984910304 309041397 533091217 665725808 775433345 326476 209431721 647749242 130485278 517177575 220224104 412858353 298966347 374282521 183753078 831774765 268680677 485884975 39581620 335353162 117518881 344022272 593760914 857099136 912003625 665000816 24430296 298163031 793195524 419462627 702691315 129108844 189043172 460103138 896670338 472433521 842042742 710260188 911407955 512136158 766044887 100468733 133650035 902943840 581259916 462859120 400934293 727555824 675912998 870563117 715138585 782617224 688392428 864127751 253835536 362733042 713381111 408839000 155946484 646379955 653666484 942948027 300053071 137447598 840226993 652520701 592894565 719877222 332396820 348186325 576484855 883422348 433640077 284063534 154194856 870175928 93088171 96793889 61142551 87626933 998129995 193222751 563565098 823578358 125670254 553679987 569795967 245860808 57660101 170131238 692161018 701124008 928253862 498531661 214906176 702918810 93457919 624323618 977613455 775985792 714430891 425645311 464920504 958888988 829014724 854037465 427457604 673417882 369442364 323362272 58251042 518162152 994736915 678924818 343828269 818133789 314676831 249761487 873849577 91018106 459944422 89567009 601326744 2247846 783032686 942315415 761655683 545993509 988211370 805209655 209578899 76667034 576100575 791674853 775754998 612046806 195207999 804107605 356275213 543970042 163208033 247208901 634697338 250588712 241867195 273837021 113775122 478335384 550116083 283184593 156116607 266326419 970645351 664307141 97794053 582743371 776083366 440543883 202499100 994531370 285614789 942234518 311554396 82005759 849647978 521397151 832177380 952371317 616547977 454506041 306476509 961322700 332694834 840802888 381151589 322693321 324518888 487938798 751542608 714024397 659535271 708501553 277833745 666729085 473558438 149546701 983703443 266090986 26356251 258020793 996721175 41234457 139503749 938645306 419459902 853864708 939148789 699480743 54228573 810717667 113465673 677756812 819844089 861889134 365464769 750478253 159947269 705381739 397047428 113981976 790765523 777424960 991928790 359040049 842803182 790152118 725575793 492504702 544038086 174946314 37001950 167025117 358708462 732219452 274685936 829970899 682259043 375572535 202931279 672669199 116663311 456102950 580953473 842786469 955475249 913172975 155418630 604999333 307892204 488439818 462895186 737962418 176385918 302160611 600866776 841610712 354711212 231896890 986544654 65317166 661871721 834204512 712323302 198461450 314765486 408995295 589023055 968177977 990143583 250180768 951609503 280122848 82875124 232582065 354012473 215463877 719427499 441498159 259613510 37833269 858418177 380544029 658312477 453425937 224748383 221403115 311834145 679135770 545218222 567419166 810136320 143740642 792156454 527774394 240770419 857845916 126932492 166009612 727796032 864467743 44952150 604980051 690968397 299780840 825142434 815609353 477892667 939525242 668806 208517743 15988888 857343621 943359814 236113723 398793453 533613577 655729623 286831757 467337207 817007490 568091747 325761394 480322927 579477385 745640481 351287490 904518509 447744017 967241184 908554035 404783827 640442656 908965306 531604270 378601387 991865691 928780688 604753997 876987490 746045393 406133789 334289123 657581022 742359227 120413095 310709635 321705893 163963066 285371448 917807967 842330115 876160217 986205240 434309751 396835701 749060597 657097995 462660101 31888673 122082907 83831230 372288630 741777662 889550269 97694771 552976394 283783494 895646033 885943779 25734020 546790342 298755882 21459530 497812470 711252122 969719277 226928614 770142183 731897542 234006949 726680182 189613180 15618946 475356494 11795061 672169204 884441108 903707316 216578364 337493617 548772912 582291776 299539995 323750348 183797554 248002818 272184777 58757862 617359890 557013486 322700047 918928532 86730622 930569691 716223498 141109036 273126796 91195062 394207253 645796373 982799471 189626899 602316877 706348713 848169319 562091184 447335318 414090994 721453802 113548924 84967506 328568060 262385100 283526704 648652342 879951053 442505337 145326091 622113855 399043470 290485077 205492547 902521142 550647572 602269269 993554052 57043519 52320013 771714301 771930018 84914195 297616168 41333694 401373815 20306784 713157808 807934959 541947382 520384165 217141361 248634810 907796600 120582330 109997636 597661462 863348757 133191609 745700432 945922383 191206692 709557191 503883078 171260495 76406772 516091981 154460125 495436045 273434449 206501870 565130106 279707857 716204827 831505998 941168448 315896415 210103923 127369212 384297235 84223833 540074766 59309628 661983201 713632158 633691968 93902553 670063357 475149295 141026258 710070117 486628524 247341425 405532106 815725536 760744450 903138426 535220135 1178869 665240619 550997394 71653570 159620692 22113528 798067296 477920896 296466683 801695880 272524062 225873092 874939553 981031700 507116037 534748657 789008169 925580587 374772734 502083240 130848776 455746568 305560266 753135464 254754289 550276576 723887658 830779477 936640148 154543764 880556506 329825846 327333149 274461128 658471118 320704859 402800602 840412346 15149840 635660399 103010856 636977728 147298649 475158448 452746285 831225520 362207892 827125700 520594707 985970334 596659561 57270836 252751448 319437645 429637141 378855934 469679929 143018343 210972061 453124182 231457204 951726674 924738516 857942420 877737322 316602055 999428151 965813492 914993556 560362316 659315355 658151561 203799709 945912967 843516906 967214979 257524254 90684242 305375107 787108010 820372130 546270370 793193186 627994207 330828282 299528029 25565533 453854869 157300414 573171671 917987720 723004155 990186171 623615182 498411202 489279848 146011200 547672565 741550661 821665521 790730145 317033497 663919399 318862606 886858568 182901168 672052217 615304051 354548249 487895341 960833249 866909501 627782271 150955015 85146952 917030317 957934974 866740952 742222425 538637184 607541575 713651217 214224155 840169942 930101625 567303161 18115160 541719947 875003332 266923833 443069043 991354898 424461625 113946030 755221034 649511747 600933821 446368395 736872827 93362577 441239969 57864829 546039917 710861530 86049052 82358351 321020474 364587333 260439495 174453614 979387279 447149993 423518437 432221577 33364299 997477263 421614446 982879312 8805352 387250479 569073244 894539927 78150184 423942173 843726236 110989999 635119835 603052909 578398477 475561296 762996909 729726533 511844437 186028403 118902950 962056634 270572856 30521202 795182795 226252193 912575942 908926695 369981138 315059079 978415872 239125496 940853504 99727733 42384897 871094431 549455642 340552373 997275939 563532768 192491100 894927943 152095632 114373268 952075693 643244237 43169503 597677405 983900646 662970568 314068954 296415706 37229214 178320805 309886221 975278720 29191967 572894385 920813819 240004502 612043118 977648322 992361975 407953918 173551860 288012940 71107683 928779904 359136699 221123196 783476218 744008539 842017237 517687616 151750603 247101762 520660286 412288555 935198892 655685040 154448777 501232121 995112400 300520576 855532120 339235213 782266462 289446454 401441928 911972585 329280404 224464606 546461975 167610067 196682882 415900029 122274948 179515548 183776568 634108104 458852585 48482585 873170295 493068256 203310706 803131685 349308674 678461198 66483794 790583596 187365194 318943513 853022835 293075554 669199158 627008112 535637048 324538055 546378809 376747487 777472643 44383738 115025007 129968942 845446321 435852056 565002021 871699106 966035467 880202451 869637367 810229127 967306099 461241015 234043511 863293702 877153241 732666920 89599163 529799924 40335680 462776952 104642033 818092824 129607031 168620729 459709639 85305066 601641696 351720509 428201581 526155139 46889362 133101157 621296120 243824121 675536040 648909814 355428779 770907080 689085168 989774901 279365142 917905352 735230366 670458058 801831557 599527887 158314786 361667290 902582003 576054081 989860452 415086723 723504630 384284603 16193834 656632861 112838134 692164084 493124626 662254330 710578110 955230785 624610451 923965088 757110615 160118074 243920967 316067418 28494941 502575625 65105598 955452880 866558714 181577763 634186172 579089130 259613433 795752756 172288327 528493672 600308340 22468114 672868890 727801146 573658731 274384379 506200026 748325970 519214525 687618264 955408175 37019877 138382864 217586685 98681603 8154169 287476197 625294828 824490622 975423348 768382971 869228158 785145006 196226501 84456851 779963432 508682930 76434971 536341206 679914363 910679076 126183013 946311643 22499188 466731436 35333193 411149676 238159093 645469209 768476014 953859608 744105815 107137355 307770864 909963253 365976659 417909278 332836990 14765070 346251535 88372418 124910021 18302015 75339392 699961908 107142863 211053515 529983 313063426 742868240 254351220 330465304 478382691 290959237 725063301 835743390 665310157 756290621 795115842 736861147 710204150 466729337 160236390 452154761 756434078 794278720 793200719 567133076 926918244 353200148 603437567 61454765 92715361 364199204 573455256 742656614 532790265 892793306 935822247 245569189 206679488 148937725 297319624 655023254 944450571 300219871 226839837 236299901 293762814 272979051 365159937 120103367 449881876 565791933 733260120 50467990 731311793 769221831 204545673 393919853 263472449 506285339 438491956 114186555 237977296 897009019 512517122 695536393 94178058 92109069 705340212 518001609 907008784 956196165 114718876 184745487 446664938 355636265 976538863 836602174 590450315 147056246 201418826 830478850 859323753 848534744 682389185 916262693 873357424 605468925 891739508 974670641 209008675 252574035 856501913 717042486 441232509 152500538 663851590 663554622 548324159 638293235 272746544 317458360 250329297 976770558 473845600 638718842 259087776 674973589 116509201 107635613 203849615 894076083 558124163 437832801 910411235 194080413 302984228 101522033 907273751 582059534 561286728 635742502 549142941 70333372 703541138 382574608 729065910 840253343 910240359 619511768 475101150 936284922 523309171 508194614 826290805 407935216 506575836 492341141 532242843 113517416 868807717 363032264 660496974 793280564 168238818 627198754 730018210 725476484 103792110 607102555 181091424 722104304 252245481 677151565 339375882 460386372 760505779 321083176 365208279 650397347 692367188 836674926 214675869 507519494 650180615 12480104 155577354 2125475 636607329 366496728 208752012 481886819 585796098 257876535 631326628 592718020 64610650 597011896 464568830 407760151 830217613 38738700 139158555 88017697 212994633 863665696 751183379 525737676 623511337 442998626 595343043 114754994 750664907 545024031 967249849 229517974 878830894 240942208 578400229 283315212 681196603 665363658 380956879 803519461 290681344 998341393 938741790 651720034 912565498 83859744 251047267 609900024 502250795 636538185 403895531 508523336 288536911 499610596 227278542 349594715 133418238 710549381 599527088 795322163 380407972 532304565 279831396 809664154 38904545 11497976 113919474 979414715 100873530 296919412 893392270 37895376 313843985 509615493 924087247 778861719 876733306 544463428 487417805 878978486 475004741 797692865 580114779 237376602 276305591 905998277 604474105 367619291 998527497 365685340 361433300 772610986 348773914 606440405 782034557 351892841 661904478 606446259 385551327 82052695 276844425 463112259 737222313 365527068 67777968 229916073 146240450 61275822 686630405 585839046 913626414 326015852 250198237 668403696 470520818 317331658 572072051 339189230 33641843 238980728 597357237 236073342 832772106 91832005 637833385 736165846 972473215 849114090 493384262 318148781 642063375 53432653 667978993 39727319 744538413 293743699 481179206 725747533 730437003 509231219 950365521 764266949 57235268 239382257 25945757 725804751 640496129 791081010 995482605 854361079 982822104 53154065 260247136 345129489 231246534 633797410 168681405 941699402 456901508 113842933 567358319 658486440 258400790 93037463 189798926 52491954 365807316 937478036 8736446 163442039 578512664 880792273 929909490 301985905 107501743 590374674 461664634 669961778 177411860 512553982 606497574 621175126 844020412 80317197 855451315 181200142 905351734 653379232 442841906 555128682 10928115 957460789 396021927 425049191 876985927 284821011 228861736 24810274 736968459 898605966 585728627 574017427 745685424 708506180 735048411 747339010 323746887 388475969 757683315 84079886 923631942 910976406 443334995 229441970 406047137 458091830 476605040 220452703 867181019 622456002 418311556 401848334 551145958 622735064 270154499 200453317 438362828 301934781 196512197 256255405 894904025 330501392 361495568 970085775 410360447 742405068 282725683 32559074 738902894 624953918 890781838 699753052 313655868 838531973 629222250 13674121 88063154 923293517 360147799 241728961 431683867 732008066 906803867 760871317 644726360 705379321 780169769 792685436 110496110 347788 220793890 206666888 333336953 107688309 709468721 80441452 680076257 865346783 95345521 632024658 664784170 747421538 771632171 411803824 971967463 961622553 682078826 396017659 869060429 655268113 840252289 632752241 408380750 107863612 546695606 486602111 885959439 600537076 964606480 434346158 858543206 87210285 990513211 654890081 646110365 346585039 29616058 946460895 492335486 655769852 360797337 932756704 506529779 705473192 747800983 640435428 775719179 170507556 828190531 560753959 64766753 284413566 842669458 69373814 228970202 455848691 490583460 660668082 664001095 999860768 458379197 310587219 558677146 488480589 368867243 267397463 590505161 151126695 48785380 490785675 194106382 930686477 693944788 102813588 958491441 839513486 673596854 291089653 267605381 712862998 284387252 161624416 261781072 76156024 115526095 849285050 807261899 798493630 774331671 118651794 880504621 195392442 212104891 440565772 300396516 432008949 620068193 498875208 822795487 179633347 627803935 90448612 5534723 565235580 211065944 835038711 560974724 184546205 827793194 5252401 314039124 294037794 387644855 392433388 762696454 285245752 792595647 290260731 390463542 188705664 682156404 10097918 113468909 549137712 659000857 628959545 537162699 285346094 870607093 469324396 956460016 616425589 730039973 602197779 267211988 516070153 562584379 620866229 541495025 207090622 462966646 28938698 840046142 3690240 641960380 887754704 589661195 395166634 988488869 247943526 714053054 714389234 300197285 671019673 487234230 151578468 996640884 154490928 541073998 832208885 405304005 325971428 67964569 102182596 223847631 202633316 784134416 4400211 620717585 940948524 315633786 850817602 317357745 555322702 763761809 591258737 271983553 692400683 196512507 67021414 923451073 984269030 410416915 511289052 738547068 976079992 882454369 231582108 136717968 840743417 525546302 819976302 460353489 765285639 533211632 153340745 560815932 611596137 110237217 594361956 392455208 165710986 301241057 909524424 242492979 40102593 201958435 470430356 928800764 696629833 204875324 405994610 472880430 952712525 168377089 154853737 670858972 543331301 455240138 948207909 908968400 551303906 740728637 738496559 228610659 505333102 220160148 423781845 868526225 209076511 863945481 35872664 522683565 258081986 603364033 657599160 743453603 212348828 431595643 105506535 723057765 734678188 310129355 578907582 789783756 219382570 174412492 548643112 708740514 818934391 903016489 445984228 711312447 329553328 586846186 602885652 100419696 720652696 592737334 308304073 297019427 230646184 934876297 549922440 843222386 728577893 307489223 596698031 978845495 215106175 708555910 790330126 672590826 310279566 192722328 380303470 955880322 32035710 820227903 80889265 429709931 221781883 191040189 116896605 897850767 474857469 622022710 95824375 769582251 43976604 322409954 283497029 411175496 935173804 90153805 620622262 788356207 808214765 538173526 975766388 822028361 970873990 782315068 670258023 34719877 59138399 313242071 107703506 631111057 383773176 355976153 329283121 9742836 846108269 306606013 659868121 664307653 313337985 7856905 387622918 331582832 374808912 447981111 178527755 16220274 215428772 488688073 782837188 178722099 874226685 853420325 269802196 456126487 925655453 364277158 599371874 602418651 299235553 689984515 869990714 612917905 651029802 635093078 442625430 25235539 758025962 137477005 11417311 85626756 412435006 783803961 324641811 320583017 646295125 802186040 650212609 587371010 73825000 454298267 640227500 264041687 13944170 105245860 976648778 282442191 262525253 24553766 771032403 893553124 341840145 91030153 941705823 30015253 162377033 826732860 398733459 343704540 661320866 728432128 547741659 351815020 674150443 857014145 981894229 277376981 236796389 84347350 66559949 795269596 966014052 234151980 920344203 386804434 372680422 769312465 8616746 257765329 788733538 591776264 514973809 220606984 741741764 995432791 181874361 790322742 850024466 428516848 907052376 151742940 378060762 67872065 167288095 160170421 554265330 110809396 510375711 169397711 216701780 153225591 377943227 424428749 788731390 283087746 888319810 186221722 113710962 630732084 452010709 60939577 310495638 109991453 720483932 655281715 907432733 928350700 720535915 664293296 353124035 204510421 588278272 988323059 76820451 560598925 120037116 987940374 225008897 961182831 745099865 132983804 649107551 389987043 143698374 83189150 489497082 229428534 407070147 257706985 623105174 897015879 447100278 877051818 579760754 135985143 684305486 101973635 20461731 141232275 907389482 926679304 42522512 644851688 70351337 302571121 518439159 367542157 135745635 655532563 747700409 594337652 227642521 46201435 454069003 649963063 712228387 75590108 649954529 362447090 535509048 605221561 728310347 731513573 975603346 379474517 157802344 291670268 833438253 635624936 566880818 647325172 246714518 352267525 64400968 775117603 564180098 589106961 214819907 537447036 460605263 18124839 226532170 232874105 514555409 243154576 691084203 639582080 316574908 10192780 533141569 372186337 108807380 503897668 317251787 887323454 901879156 910607914 103382390 367577098 28778085 87303221 145704078 256945557 489522581 534721396 908837914 366657730 333337122 382937540 762280045 655532069 737093382 795886766 999406894 424135227 319663168 326340852 565948976 453408788 544383788 741376606 965999662 905898914 636681345 12048981 110036986 374476950 156512797 970890407 316284567 469379098 684923475 713382722 120559089 700128792 540521789 910272514 826248144 96361044 988328592 565328172 387593948 274799502 118463504 828470666 188273508 614873709 439916611 484860555 478389637 471584947 922728906 761027318 202572673 976085817 869687306 207044560 379641233 969412862 519807023 334797878 377391091 799362426 856679345 172993723 192843004 666553423 38617545 122686872 949517576 250021685 859838988 557663906 991030995 877403979 314501313 342803600 355463336 527642358 911653929 795121571 895172751 334890575 760877104 167789957 138297810 816557962 416506997 195429548 64251421 130553719 399504484 618589324 435574969 83503301 216260492 533668445 320836306 472454093 913927891 567465161 461147149 813131561 560011379 976366690 878176 140961227 130496220 465279657 933821463 269510565 153137584 640633896 835759858 814228171 721599387 842073253 431357236 327740873 567943601 283604662 598846642 536188176 586774550 418676680 946642918 399513018 978573332 418870409 435913599 768312198 120196813 586277474 807663705 671904648 475444968 265230335 329336525 337035563 590829486 715545021 182664937 49545989 779724302 49077456 422493361 412884525 128983093 124990070 868881594 738451300 859225135 149620525 73665912 898010279 126211576 372854027 49028267 714358705 882622489 535052288 144522152 210423528 942966246 633681322 438502939 648636202 766948951 83326965 558373899 487005183 685319936 924552534 908678289 103458702 759914575 633508585 458527295 715054568 959146155 569783766 893712305 581471756 917274197 470498079 862645941 52121975 748897867 8806436 878252690 412234730 121898851 500944320 260320370 205403395 317269218 309882710 656027214 338785568 340676512 549647066 57295043 387750285 719256769 290324762 868751598 37831922 816254084 334386950 909039018 540771712 613999657 453960505 302838429 539851040 50064769 480363095 81962461 450551682 862606372 186996429 915114104 164768379 846294981 627630489 787611007 250424094 804020103 744137783 437375083 593215270 327821464 796910902 7372328 983298849 694900621 102175200 715965953 473311490 92582550 891051883 18287717 4570718 349080937 485494837 663263990 367045376 278415873 643890510 715674961 302160472 182928346 525594795 411043373 136067390 709932739 94062652 75094191 336177225 829424109 632168627 12785477 581266919 258895066 189155150 491007643 414239990 551072979 455831692 62243464 324545313 905335844 381058054 398956224 748701710 591578381 342467026 120888226 797510218 552548984 703691178 281642175 972336183 787767339 930960170 920364532 838509854 50606404 247645532 808638293 733991041 181876330 107914001 51388720 890439888 625486079 649099644 28917221 439725005 383886773 221818075 617714502 277467878 249572777 442356868 292264214 167246414 358826869 581508290 452883011 43263351 640375411 118002064 68513373 276263769 250808300 312882416 278771604 269720711 990730433 613845877 570895205 224481494 182397051 103869008 87166541 77816290 225520692 249436532 115721836 901600880 183542755 419486396 552538155 401021453 545170901 144865463 90197525 663057429 543749444 353104142 723757358 814920096 454948689 670502583 773235696 739796050 28244907 732501787 181261176 813582425 948112738 689809440 759962522 58980860 292425760 858442753 309093452 27892490 646738907 650640419 245480700 3808205 640339940 56336221 97593307 914753154 797982326 913026087 467010622 373764341 462866661 461952227 660658705 716670897 717210433 502594102 101986915 105176350 301484536 739618435 294806035 585037221 995506860 672967048 591252153 257614551 384938803 681708700 78921222 656368247 270863247 244926060 507849550 541212128 24526682 115255099 961280917 920289007 428544510 853564445 601833878 327127484 293650846 151239850 839707276 622400125 812809430 160786699 2723686 29479665 105722758 866385710 439734943 229512256 481828645 70127681 242597176 879661240 915124568 131432157 587123441 304341103 286893419 673245325 363868025 529400950 79904254 946506418 82127678 524014614 36683286 728404334 503106251 89211975 460861811 642493008 623275374 904758710 989800259 191408256 671524982 659309502 325012478 632837916 665591813 558034419 36624809 11815975 109138787 947927136 712009938 847794836 966172466 395971608 451114569 922217806 90656746 682360445 78440768 651071078 548381337 65756181 571766447 716216657 900303973 135973527 341814981 122545170 774582685 502351438 450313364 667030821 559147242 260716421 544518256 611871081 17795329 876925346 979740479 644230087 63559454 641274027 374676998 701465739 563471984 953333720 870167514 855543551 930455644 406213941 783300531 708389496 175399922 721403957 124811769 444998783 973332323 810363976 763160506 891516426 998874360 923268077 373490823 892074672 580059072 525981009 501323208 642144876 175476133 797679080 928783375 102487971 904803236 476694809 566682527 729911239 26677387 806296988 894350659 338438681 760862553 668766523 222454876 870451040 420140744 348581254 725038073 43484541 903163099 910600714 143270222 322277262 701071018 325783290 393948173 481903227 874835935 913219860 245614819 12816244 729787366 405435035 780981993 728273981 926788847 875092476 794383536 953684213 88730836 144191420 675148710 731782075 893922434 11440648 941572498 48140440 37284868 987682390 31290895 755223680 869140263 642165919 77513051 603017034 973826706 328505976 301786306 294420199 802962800 999744058 822167856 999365186 794236853 658762056 633812605 111607751 132278993 389931156 706011498 916632892 625225054 910665148 736062299 685672386 464911296 193278831 321892511 209981958 293348139 376663111 828519944 588360924 414641932 579778514 729033741 175747353 719120396 907006862 337432556 251011677 792370386 323555037 338802555 241710179 163244790 903905513 181126008 787530421 764778973 364387988 340179610 299047174 361154728 211843001 179284433 522228180 678756880 815635929 183063896 230768171 535212526 962826295 599451914 280116127 734698588 181822976 893067874 663394449 240212722 641086674 960626790 116230699 908208192 184034522 505716000 284237116 673180989 942338029 260975159 577947109 715787798 837983448 61015537 840427891 513560159 739140760 165157236 812461322 226327577 878588693 276232997 639294715 744876790 685074669 855614556 25298573 268099736 484407432 729263417 492374890 505840601 584350322 969596482 281924860 232650590 86887590 279459109 392388297 305940744 550112891 583523674 808821951 568347714 503355244 727933436 95687816 290904498 739853315 408709377 451048781 567667575 221555741 260133912 166915463 196032535 644605287 726753444 426371341 357811492 611589306 894969922 750713743 663890310 589758725 67803128 403414608 797611354 56031956 743359235 677519634 679044404 213633019 407935788 605896648 82578988 575622604 898228985 592771922 963978338 665058851 276552398 721103516 468490216 116069996 198830726 582870398 985541214 481751570 591929643 973573828 649249882 925622765 60424859 985834727 573054397 353965849 512935605 589934693 886266079 517014610 166668880 148340634 448835260 537657823 762865266 789413210 13236331 440680258 361244480 902472792 928158122 127145971 44335819 479389672 752691711 80101180 786651268 81618730 883391957 240511147 230914492 801152750 650016068 279031541 595614524 781675284 597507856 885925237 213474848 289655828 347875552 590253985 796492013 315714373 809465188 9480329 464888162 533773990 853848092 791573441 40890264 168850244 893612011 77536154 347823912 415378409 443194854 23948380 112940052 565046654 279350312 362375895 377003602 434946960 712997930 372230540 449853435 173464731 276936826 196595024 534734295 198219884 411410687 656215642 480265528 386249017 813125962 863123391 836650279 225449965 68541244 60559823 355046963 382189582 859965165 210639182 2780390 254207054 509808010 510990844 924258078 855037616 912711644 481885585 840906644 322625347 895727316 282370423 431879816 557072669 581635445 910147594 828312069 950831342 520884684 621149442 904113862 314429258 749733610 207006715 38462743 168764705 241591273 288022219 629286254 116795377 385240849 317241604 608409349 840972076 373558733 350911996 679448337 256231573 12783222 15047241 860418516 765795558 570230663 986412600 325640718 970041896 536862199 949019860 224167220 625381807 996613806 896985377 431562503 590797158 609762865 409555042 12442569 756965468 148476685 674283376 230731593 923702583 901165363 766745834 836970102 463441093 890306894 805468432 184634979 478734296 761175343 581637834 491771426 381267700 844364264 977566941 8713864 134682052 132162639 666083307 754661230 987210000 276411799 695027317 52483209 583944557 730942225 811693445 564813291 86182715 550345290 245827430 143452618 423102331 42225449 938842270 451938272 37479774 324808446 287022824 989831626 984192989 427628677 598278370 5881566 175314602 462429016 761313355 120761316 185982417 162409367 935104960 898242463 38350200 106668949 452277150 511216922 38832938 141335545 610114050 674890162 121846475 80544812 946242441 718862288 47453741 195824208 774722586 339919382 351931768 674968199 942698362 756478235 608883560 519142565 138306998 896237617 779845591 820643433 38048835 606432511 645279780 786724059 361201085 984039188 773943163 926601201 342263733 818400138 792036793 989805052 966324139 309466930 307539541 435641972 67590855 772523264 203335490 900764282 393275755 565172823 963281464 715780936 776941277 501685254 683793163 565401685 381798402 354334246 867757963 10813093 623138654 107046165 595954269 457110580 375952890 223893107 717520360 824026644 346283431 406592831 412666605 967376594 991498368 598055793 621422022 708832979 861860857 707795999 705174544 613635817 15552290 102355005 108752161 991350844 640634384 675909505 105038916 452428240 545314259 535261855 351393139 144283557 445491089 581776978 52746867 146046835 171540047 228298936 930884809 16517239 192490025 466438810 576520997 691127146 615089817 233457178 42029843 175551925 608395345 165313655 896051937 416231145 838661519 927857793 48300297 379341454 824292913 337772554 712103271 516488544 156256614 774987256 867765500 423566405 831550106 450494172 699884833 48221622 104336304 894931637 231605943 309516754 211354769 835734497 163650638 89187177 344592277 51507231 230996763 304408992 925721251 266834637 745023192 662179882 408018859 494398816 46687814 783824620 733563643 259693186 689582913 684363418 895025219 976147849 686705968 798073900 992219159 832839357 707279080 919924619 970134231 26171508 829649488 277870461 794813534 856098104 858051908 683042647 857831115 731269614 700134005 486913866 14192960 619349522 22905923 384741584 928361935 310708997 775141103 294319770 975452732 696843503 844290197 194003825 95363998 433010842 296773199 491482794 366970185 768897150 906671604 439240427 500016863 74576725 820740927 853005403 583508615 570518319 157637679 894253714 374579065 781096839 866951647 979891332 13945555 236461309 119048732 399630195 92187193 697577530 399635438 209973069 130727434 497436131 223685687 444488708 747740446 830927255 729020475 635098493 682054880 569168012 686116521 305453094 133240999 470547439 146370826 311078303 553136510 820008956 241393275 575600093 761401184 243025221 447279776 722797815 72323801 505226308 78295445 3119267 156366619 970986602 74829964 309491641 98296767 203462081 231757534 458527795 428404620 803377260 810673546 596702574 257799215 72053336 981603596 839677210 499144647 680961145 114663305 444984099 468700437 183004815 458386862 552650747 4404566 263664482 64361575 224251997 277805773 693265808 431718212 545048122 848416437 350068972 59857122 806348530 328033905 271872925 7468532 654135780 896906271 705882672 926467954 577102493 937752405 850773578 692499667 687258039 826088827 969724286 604090226 926206391 661926618 348336514 10853084 487142582 369065114 950956870 816237328 425926871 395650092 551665491 787153437 329618329 194270456 85712452 119981599 581450883 663266960 907856357 52286430 376109318 481794767 219176224 982465890 694818654 525043740 498809917 364240681 234330315 732296510 221556632 128601896 850076922 900688530 787615631 69500932 44847600 933093561 613736585 382496048 667364016 290620205 342144326 188849996 520181626 475355622 95469118 817604189 198461223 536786927 520869359 636587562 976632703 664172026 76990123 88658271 218241040 43313308 210073346 322770034 222625239 873876744 25466759 290184621 511894595 507062831 639408877 208205590 90733356 119513191 465673159 997521756 503741722 330398285 541991064 906973029 26072191 153267951 742662265 476350323 929091466 808232145 258743315 965863313 826246050 582693713 747508985 937953340 116266690 338973805 815051394 606073958 811397248 519883116 710085566 498217275 832883686 696935338 197550928 726690466 926255885 824115191 985035314 354102270 486165366 614927727 211872779 663506911 274100913 559385791 319383028 983273279 994417282 375267967 827207084 679851379 11438969 981966820 681667198 663541581 308651853 554141960 380075897 586968943 744899559 720395102 805075613 988689769 90188919 398434921 177879007 425858688 655051675 436885436 47346866 558479951 279057560 163594993 393383 508900597 975183223 372665870 101465937 601030122 460658216 250505126 660502208 359381868 686709986 606655895 769511928 591135280 327092853 272711007 372080472 236870463 515896441 854071542 468334528 410265959 692782792 236907469 12712354 492904715 134149373 250462931 330822941 102934690 560652968 696789080 572018483 57759824 965259134 871234569 48620753 636339671 863504054 458309043 146316664 536707907 113703000 541298924 34928778 953730323 833040548 389383332 580340577 439197325 242826202 446282874 384974761 921785790 128144284 560723944 407899367 221212438 459866197 675399979 725797634 37518284 789536184 786720464 961582997 599891852 511048821 470300277 624105455 132405590 656563467 909026945 717664840 405946150 851593077 858391417 644673331 344223719 200497522 984049312 613464318 612850547 100324174 57304253 379502468 543025629 964159274 61861278 93937995 393576916 743353623 95500485 445221113 693794064 741646640 611475578 472397733 46136685 284266318 29178053 951047418 385461762 324039467 226822977 640702441 72489702 358200915 694914962 747054676 761957166 439243239 462965164 129612423 560570473 846436592 842746542 161529936 846789727 224060198 437768949 672883863 333432652 67127105 4344896 341811241 400381915 691085058 124031294 330379045 592531938 211637326 448866725 784480581 567769599 152553500 513010350 585194506 530910925 849048459 126865995 977722329 880810665 298140038 446192836 245895920 349665324 972140485 289385250 501287213 724842285 213563617 588371836 553994560 504758957 896670278 603378831 516209224 252821844 343671155 893902518 512729625 766826404 734742556 951116960 137396765 216658428 84764907 169231717 596854213 549981288 746109197 696895571 210756638 911673768 382643225 388720621 888348968 658930013 666127970 10894097 896599291 600056143 467097346 996482120 280128959 42799420 243435679 458495246 159774531 487576198 285212388 123792506 167217173 696995274 235554342 40853011 552404863 539733423 53624608 380239808 894255565 784770997 426420381 344271517 364980889 22451788 759545381 21023158 229283113 907766479 106929270 607658144 384004672 178832229 256697055 740278244 697790909 915945281 404450953 946210486 439060720 856243588 877795613 422717849 602528837 521695204 776222762 10782316 331680943 696090238 905871917 134690930 89112405 85246877 191342141 347689942 338220867 892057130 489658171 605337418 419820544 114301843 852178199 780748304 496496688 972179734 870466746 302880923 344096438 419640430 576882370 316108706 186246197 838339054 441045115 702454346 891170610 285076994 505965132 497503391 195419187 475225479 329974381 615649557 587089882 889375098 683839518 134581374 40061636 471055139 426390021 256921413 169399883 523070448 370269075 441029420 364954627 780673271 840020676 335537162 842358966 849915706 380505820 666384618 157312569 208438197 268167133 618880230 182745646 108158339 778334412 973505966 525746198 269319847 816439063 627695676 771720579 799632923 221231491 293799618 26485083 623248566 249866228 868548430 695444654 47508704 106698340 416820935 288641719 777511053 993402317 545479921 367340167 895708391 601784231 804048241 717820670 769917736 834712884 777353543 500687028 986733918 696932074 809343736 661230448 461836046 434291369 710206034 612138566 201201375 102029621 200403998 421731723 11210766 648970207 436420477 201735151 672547189 946747276 199063480 813362599 547043755 46467768 487068715 699743964 708949304 218680022 906853244 63822871 129925376 344892934 675945230 313237316 925482099 923745016 521474049 453959411 740893149 99866238 366396789 533832709 940062501 616666360 115489758 721281 193607923 23230272 95105902 928759252 228435672 563278294 78143653 684973288 794130157 807717302 610871338 631802660 342554650 107466477 222279644 290651105 160523583 345750917 178730387 777061211 791760008 851155898 724438842 766740261 957594656 76515217 909594045 127514640 872217825 602273903 355232541 842549047 547546721 913252667 480267310 637190595 323153490 556493784 902573225 553836130 944644012 470508331 105159721 966337533 742681027 104806245 872065269 622715245 234983293 816836978 748882339 672618164 656632812 424695831 212347776 984504657 739476458 690729107 383345003 941588411 767778720 712016905 690340815 722289524 288064482 76762446 685315515 704363325 817515707 322241216 514984364 859355577 136735938 75588202 83815026 968468902 970033645 359479109 312106137 777230236 652113221 347262650 304524302 315993280 63388944 964654031 707916348 73487445 58070763 822507392 453812437 721288316 560111260 942366331 804961326 497482074 772585676 259676163 955919216 109640152 922585289 146099634 13601882 382520525 811551068 227336786 856084454 337171724 177705557 633994382 565248875 129723190 779825948 197417726 258441679 129876871 479915937 813616070 833957213 447263463 533874149 875007160 376009772 113555420 24385066 560889374 963593822 273489891 506447865 488374796 881961513 93316673 34489429 297677852 718056727 904447021 156053728 17623101 445816512 896067974 920982169 661424990 643925052 566109607 309387294 503530132 590165771 288384635 888784772 153418799 581415196 786392351 17424096 624171107 282296767 320443951 211242065 302193131 843247459 320255493 410995325 762944347 856747016 630790097 491192080 833936818 582770821 205800467 339113071 999297574 244681406 579398020 507528251 534161418 18697733 588084149 675754165 851033720 195069139 661288166 327670425 436004970 372231506 868092466 700885272 709336848 775815238 324958214 475294437 111190617 186842903 896568479 621279245 26524910 347242025 77047780 360734755 204687145 550013886 246298717 737644122 691097183 853427012 528223690 989854659 46781591 510625969 142374776 338877336 534561539 352098964 315780432 991087142 385353632 648034759 25723962 777861296 943737174 748351423 728982887 369665636 375858906 870219724 56377628 436361974 665169482 95128810 466073103 801907859 314967466 806692778 832352532 559936743 159719411 75738910 555439253 391069577 260470832 238850955 666468803 93595912 158818625 381803888 530132060 669223468 939082524 527142921 158303697 738601760 606593090 33888015 237272755 900481441 338723393 287624614 99807708 287548738 293120703 14246421 454956027 544011573 692068393 492040334 865542862 905891713 634719206 599177465 795094612 397271630 803942791 1761180 585633688 429675356 516014854 658329614 733027227 15582496 771338852 945922886 799021578 426366801 35068745 692416929 6582361 614792750 735478193 613455316 793740138 306131474 404130682 912153774 19400190 555555512 806063690 129619139 604850624 565112542 653464092 707131603 688366670 44624966 267327874 745087395 575326723 868755360 652236543 377437558 226907382 893540864 501863982 247269794 907168679 872213436 68277056 81991225 618004811 186848397 242833292 435689045 81434201 581933102 521130809 498013848 812553617 298929681 412048675 800509188 951948448 565942218 458895924 586504945 47151090 655912817 973727488 717526239 611335945 85305558 477868591 287497354 141271344 229720419 877792995 455260267 729731010 116057568 348922078 903455566 136240439 100607262 6691554 63750337 256983791 113611771 73544665 108811516 708603216 173111027 810555085 634976378 823873844 190238640 98362067 141706664 362957539 227990559 773378654 712842120 15506194 220299739 377325153 402523692 174214554 19004422 167243271 729886494 529026348 257692379 490984452 594970429 362938716 811981461 495858129 568253324 425643674 767583122 929066684 671113804 124791032 772537554 406924681 32235684 254248630 337887472 891254509 495267828 612348612 985778855 317549709 82436135 985371216 310651466 990003301 262987097 541526014 717036954 460415332 941783066 425650889 186025876 994120445 44960809 467254384 929007012 739453328 378278975 231857930 707815713 616749191 538182692 168455951 210513594 450312151 179173069 402010613 389213405 950967491 912727225 243362786 152277128 323338228 226742889 570453941 271558111 249177806 422857672 814678557 476366703 901959369 513301236 720253823 132892311 553950510 590087633 160454119 747337974 987240244 768448835 19512619 907421822 978985505 728055560 419922203 539305982 293888267 422472823 564588306 805247156 975460487 560948957 966989153 424273048 681210172 589152305 524370884 17004987 51608252 632132212 888121319 971382297 154201294 122749658 312905947 806797264 257913014 341665 829717286 711871784 361757773 18631851 7295681 698205739 785563703 191875 356312827 879715954 958628355 644736356 675433271 902092022 100997602 101678092 895502957 508834 567433646 101282513 590515492 349833342 563896107 337842147 863845517 367445378 508853258 172217696 933049777 339050518 245953478 173161571 988611201 850206313 998139434 453686649 223408083 89324352 879133287 761771894 982074011 804360861 946635570 926470516 395478497 644572661 402397985 330105395 306886906 692997670 211429986 573002883 381215957 879553240 67757846 325898 350458677 993913345 428523356 150724937 848277567 131881496 942741184 504867986 194208251 607967729 470253285 294688449 799773415 58231039 605186634 568372956 543101112 209544824 201030587 516795692 195950590 457867699 848360730 855112946 842379870 573081169 823232035 373461047 552975176 926375752 532941169 851938065 80288117 308166111 138368920 410524412 523445524 523117474 524976636 958484119 410419618 720289557 451029554 606395305 935608781 989089110 454732627 500449911 867402020 956241687 154577441 269892624 422323155 302161594 741147401 692618105 137604522 128418139 522057281 119824801 321687075 540159764 614862284 522253266 516935087 541575432 572565332 475270294 984129275 745193977 190874212 39068600 436311734 788536130 995997436 249608943 785320546 613766586 932300096 438018326 557811205 820249339 242241747 546284728 215455352 991245257 78220785 950473865 563926697 946308099 651461053 386265711 780479697 736225925 992671140 759960872 878240516 184040475 602017820 208191006 723678282 354530433 230465244 478524087 661309891 672742030 600165516 119405140 205391598 169246558 447454809 252611000 517176982 170438709 134340449 538841504 506571080 358992375 420188361 195368133 43655352 128832859 795051203 167159489 493666758 192282743 550961035 518941100 98922749 993898630 681659834 884502772 95079466 886687219 576535340 437374790 110954278 285019184 305892555 37378257 48590945 301355917 523894143 54907760 736116460 725074725 424314470 464373436 805103881 214018549 593080687 543586352 879446630 938462421 874957664 83276566 220001427 994988299 109703734 260756690 55782973 150679316 188156651 208573297 452862610 138060049 847874052 119697716 870321837 511814572 92001252 943747683 306510602 872226601 704476688 676552956 633227320 234720037 654052719 672951762 22693018 806231218 529241461 336842272 260120752 725750642 776128839 831469851 91456152 489240505 919121901 731797501 673397653 71633022 63000605 178057998 729036297 286535837 493446772 150566221 461564053 740306605 714186732 826416833 901433739 813217489 885204268 28228643 543220742 95501275 744415072 655431049 44796333 513574918 490114713 324865030 95172392 588453746 57557818 395520033 161713575 347662694 910584596 482455819 6720829 504368797 859902122 571245401 160724745 177841818 831892827 163476246 820448932 480589235 255352356 434039981 824668413 319618976 487262260 135043779 504916224 659213403 448365742 884855099 199602720 534574315 178828491 691630610 852369330 916213999 530454842 196201321 327245125 875631644 237603646 667544626 553699150 822874473 687055397 364765077 386160976 612106379 232511836 688537633 245186259 602207355 984665338 684120873 545855302 601989364 468077747 572439491 596558761 357785313 417554785 239602825 889309714 538264994 797528670 970938210 133658405 686188306 153997421 831945017 976484272 896690847 996459293 49195423 753045889 74030239 29439501 340234319 808833743 570091868 707430352 312090994 644663207 214493730 857085700 495832413 132654322 380481458 701637163 285346215 769937593 133137044 775655900 544720558 318091953 107893125 237794713 436131605 812837789 118175283 880513505 657617779 63269284 937825672 781160750 566600497 973932109 982864724 349089670 916686222 573727839 242054182 991454284 942381314 543154570 718128922 358457688 963715874 646088159 147829881 2605477 968655569 951303979 819798199 369020251 852013219 274388191 851718520 271718719 71108915 638967931 186927483 652817114 13534282 465703935 372577886 95591944 703303806 516102143 184044039 396650648 324328860 714335813 691545991 424548102 918819556 364921247 91792065 664399098 530688646 970367908 142717285 8985304 14988240 814922058 422852575 505919247 51253977 11233938 155194204 42394793 20611856 420167759 134223762 359834897 293036137 423993319 800154184 576238743 895721189 982576750 42603970 889931640 271068403 944825966 363315929 395628751 134149978 14890876 348679891 614003423 567605714 23712708 921693150 957844305 38672139 534037518 242403754 377729874 997459680 729378020 665472009 447928295 850644904 885178457 953676513 69244332 9830907 304263659 456002999 303200763 397638220 970385525 553205688 156789828 194100369 835010637 425091117 459895829 964773921 882704795 16990872 338910908 730791303 993586070 286416067 540017712 523888260 683490779 335592053 457086256 274464671 715316466 849748778 185045325 391086008 862053346 805901434 789266912 838066037 82522060 124972640 124504107 569429140 825830477 935777993 431576489 945531433 247430600 113802716 294728007 572306517 17536408 172414631 389374870 767141871 985537492 588110248 210336928 984255769 796852292 129860774 693523475 441949087 336059997 484426685 612593176 14301293 439795275 844415989 286586193 749093644 579109621 179088734 667039567 968096225 856178829 234699426 437904201 352450593 55682430 648655923 33245260 8663341 11933718 194936264 694662927 456937606 419209269 899419836 383423267 113319320 854767156 543881927 989461207 490532763 11262945 250273915 601316445 7574048 216020691 64148249 525668698 686699799 725525971 637942037 642679825 263237761 324460483 214062541 418082244 423059789 504122390 153777485 897281419 71188825 910078559 175028282 915116410 317811494 747055473 820755286 979219113 557342397 224199258 974073437 875790317 19377745 194026536 111141583 812529213 174643291 619819088 53283036 564965625 995085037 550039024 911526760 214301264 806578614 232899882 602223994 319331012 197509203 95822159 764667486 526743241 255378724 188080130 458002636 356879245 395196649 803773238 721573455 194300471 323495872 658426812 894564475 434284793 391660186 370984390 609502394 413694348 401514546 924566092 487138737 383477077 983198662 274429578 128090681 665842655 298643256 764141772 290922164 883333721 138100197 961610374 997726736 649849014 992568962 173433582 999847395 926952997 477946297 686243799 675786309 126143366 129073311 356039350 765880591 116243047 695940798 886058726 913385804 702869812 663409093 902113081 589700885 463339370 799147565 649550172 890486091 381083627 607581279 944930196 750810358 795184778 132033210 25251688 516068916 743366218 957290115 707975755 95651093 444478531 934905041 57291431 25061714 696348981 708094034 726082284 510021689 563765920 495774479 244850796 632425487 838703745 553760282 112823622 991440468 54411259 580713537 604738225 885474568 868335383 29978156 240150021 257627840 639647833 582440241 293301494 28414672 486618076 171662594 926150746 763395986 462497411 483197384 587602494 646917070 16757225 975994509 303999196 18419386 750418694 441131674 805103435 270656764 901999608 991992338 462408912 112563846 604497074 900597975 21848467 423394298 112921702 630641144 22220981 8562592 561755069 563045342 467616448 557696784 565227507 308096410 61471940 771552838 48963709 841178255 33491269 890819467 718534144 447126392 890027350 336702438 323921066 155928200 274021697 858491750 376867906 231104700 505928407 730518504 586362531 755717141 315240308 968729617 869331949 729403145 220572593 772451963 144330011 314607784 156925524 869772539 414533069 42078124 63113946 248867278 972446881 343905781 411808292 177609489 788015627 919956731 207438731 195476173 308335585 121591813 670880617 515057009 503055466 621335814 862022149 999301475 849674211 828374553 504980710 989161389 745788197 161721779 924783444 761533395 506608817 215510224 853282028 262537709 742329819 935919133 415887239 191445783 580046175 706986784 248237716 466322824 656260919 848893651 699392760 614942566 329327 127021626 396084897 560563056 79117874 668102724 50961001 403756846 411200906 69693977 424032179 250833989 418114583 56698978 734434076 189820618 89487041 568062859 240537247 843177918 932097196 54378364 973965304 288774078 559515472 688173485 433964679 19519018 578706989 148787837 602349063 596450148 551157889 460182999 345237672 820037610 18343160 694530941 711265854 728528930 138083270 965446551 703862521 187914496 23687500 880996418 228952625 425857468 339420776 795536263 663824454 786561179 412924134 313457794 80481313 435457852 590733016 67892632 289900353 21564097 720067306 645493463 295588721 197295802 434666121 565892705 195335413 592640381 736300929 493531778 677291755 72024487 26835826 41651692 824585745 760289256 665165928 336156387 680957611 7283423 521629996 241978159 599254607 447035875 919682240 404956630 27552732 866172653 301659616 158478036 331073271 62956237 999485015 677226840 75456599 121140752 310275212 316149063 882778179 656677468 301355363 101227183 430246521 188616853 251009683 567523064 898332142 219675870 94754186 61877586 964125558 378867275 491141245 83165039 160214822 202103154 974297459 260393131 318481118 570502011 482237972 379289011 128163124 607147366 414965615 116866393 361827889 386950088 158750081 187974332 566640643 191889054 629735723 329274222 466990585 949939624 181590135 148662607 820523127 54461310 895459978 519371797 345269041 312483356 607124908 887336614 415151484 116883440 698591791 30992196 806207601 400382331 542240743 959776280 928837383 935289519 588908112 673689298 730051690 357430753 95282788 644639812 692413785 536072022 270301547 666900645 345193345 419628486 397844913 499883855 476819345 931028339 865735113 86509559 658763438 553320737 57961173 185056206 119861811 783585680 184659986 334923544 507729634 351195785 697664879 721522998 72405214 668038257 475549684 911016709 597360322 928479878 357127085 718918922 918009870 112022379 720720747 136153251 466401581 549465891 523649465 991378883 784403701 191713741 302319058 641554820 864225564 617341749 567299983 886890508 767363099 884388344 796511917 191165373 770061481 751730195 908070884 795274860 804987475 641776407 99427052 995281862 102448732 889856104 319824655 546676475 149999136 875226386 271899540 885001962 508890713 544435437 86422620 140990106 631467176 925197076 766988507 317219387 561580073 829361066 967970359 553647946 661727083 182821265 632725314 451266450 541743467 527979547 878453243 546035822 426256749 522241939 650064475 159652032 363171291 782394581 572432799 797757586 202604069 835392298 622879408 508538571 708391764 513194194 914978296 999155181 356062266 335396575 964441817 121212045 806890918 295718654 387983116 842015011 14073109 326632121 671041059 221558834 943309994 839080609 74863349 243974280 731807967 514846736 36362791 7571483 153429936 525460 721298369 131293278 345135429 550265422 247130574 267926710 475014936 183076199 929938539 424043581 77458691 848220783 863229021 801187982 811951653 94271451 238708770 723987789 181855894 820521149 691888173 363894168 935803167 631425994 532898144 53810079 468829938 79889980 741301951 634389049 755460291 244529795 972705047 304117112 900870214 863391910 348088610 619426348 120856457 873037068 518311576 176640526 603709357 453862620 988807999 773777803 354254629 629626731 764821731 835605692 875753660 446447216 303677840 765943816 683866641 892943518 730268339 410781572 805529387 670381924 625624989 175061531 691701620 945078736 544777396 284979566 274430458 877876586 768806982 226421163 947555461 393181385 379338252 993192312 652111090 185898811 599907883 869784117 209570579 569663863 553438594 37474211 168731458 471665100 865848633 445833927 29974311 934612484 948407180 803110047 307762874 691417717 30932344 829781849 923308665 877163067 484979120 482717515 241278129 877767482 721952139 662754321 641667495 801023691 387419146 850370168 56392628 155104040 169888882 101988486 313074460 44172181 88717074 358087966 449007828 875198188 735075494 70837367 558805286 114924755 476820420 571544824 814323094 445375346 850828130 678241568 374195857 727235531 856475599 330650351 210396484 832083513 681260534 913556503 965668606 780507064 636025722 687766487 876731965 180914544 29056078 990944953 491095476 355379649 141241440 74862266 917918766 846188316 981843965 34503775 642760050 886550069 725851728 963521309 302675824 497151730 16574856 152590513 945025252 333889409 666075535 510094721 99064823 712751820 97569509 525913145 296835130 803223207 913835687 571924757 611599069 313139771 187110472 876597637 83566759 563834054 105486232 63318423 40542922 540638324 198185590 519613733 261723412 723488352 491148965 315718086 137497179 559244344 102740907 257109983 950109191 522463135 276586592 861859489 125358112 25688857 400717706 685211274 575949028 176100855 186214554 298179771 809663107 639091985 542123702 902983045 657128289 738059413 279209885 757910871 693164899 353768806 536724434 104675514 735417846 278178423 185730870 292287292 941065293 285248266 900448382 635761671 629056782 258125754 214552601 536159726 521699686 235401374 277553961 725516892 915151869 944924616 370973031 601714651 231279902 261487267 126567121 786037020 516681591 798589998 122634787 810143975 356199184 787204043 302632014 453628302 266846250 336606902 215348314 767789686 975542801 160044113 502060175 524398593 242585345 125397936 522944471 475399150 322706140 157244132 670086142 183099735 330418109 715127119 289578726 639196615 142609775 58999615 279923637 794093886 184093258 942389597 394334622 897486561 85987440 274448878 282083219 318891736 351721425 864521927 648572974 586385410 428088680 970371219 165191972 12147375 358173790 909949957 587544505 126513696 512079110 304188809 499918337 531900592 911387091 560865750 752296606 466844718 6471701 364991501 194338804 994281439 660454712 49766697 111243980 934157261 367082803 569035045 233077317 245033327 515742201 418731409 974267430 333874088 765184156 386535659 369442741 924193400 623401771 691330967 470990198 393484099 82143795 564259781 219068242 809246692 761210482 324854411 62069240 149266250 813727196 479224604 630591748 311755327 531534763 840879883 164036891 949464821 194942134 385474133 652367443 460923037 249214631 64706016 610451782 239940290 151941351 985651969 412944437 806842920 448155864 368881995 176728974 838480129 816799250 860917425 760849022 632322119 138879271 826610702 684485537 11531376 917189169 383404833 763368277 255585235 668061373 633053698 806954712 238477136 79671329 381541658 638629402 610905686 260605596 506422750 855607117 964157830 589293984 773686438 400569881 897901330 971350513 128167747 43178284 71943579 797936784 172036710 233289813 270311502 214547319 738709639 356011340 646424027 408678167 91671007 386032462 14352147 344686830 515931156 733605338 752012481 755466624 311332530 97413155 610592652 282101677 262120751 655243366 705157811 149233702 720349752 24103197 74469234 139235413 791675180 989484819 516162096 77946864 216892334 284737747 329540249 59945757 7031558 454336144 406502015 496741882 43216010 45760731 702994922 673258799 407960054 581206873 537621101 484433502 896650148 650887128 423706625 23089153 116617173 622628550 23898973 559332235 981066685 136179133 851728882 865949835 755427019 545291535 348020702 149323057 415924165 119750734 788803774 735488290 491713276 354995477 139202724 519769895 752849069 285579493 11527673 85726985 623866939 347026474 27990942 245067609 772687704 501246896 987299084 64209156 638154212 662301939 40428863 285161981 59069359 691675545 933735849 641648275 795418104 105834512 520728453 874870171 531598449 805034759 172856810 400438463 152545001 700583685 254873607 771044659 378379767 530655867 267362445 2265163 276014406 731401977 804853109 293774920 493162520 312954497 877700079 796421900 815238870 774119657 136949740 520680430 409927369 980561493 272321785 670232693 580650873 196560973 711676274 953105043 697147449 534180029 237341952 17454541 491856799 614773191 508453380 916815341 39398568 832225183 300710224 826280347 321366246 370108413 80769378 980553271 913567761 924234523 157452043 656153048 462595019 31851450 896878505 275757052 262098232 606104199 673319500 818117811 124939683 226336252 149878672 377276 186492971 117670589 303952598 730219069 495303477 809853647 136025139 332999723 283526901 242682370 520867813 91122846 60198922 845146305 393611887 840330799 809515021 952541678 972285390 921754823 189784924 760477244 835417597 181582247 185094622 385935380 546534208 650829420 336309178 917515206 642566817 62393961 387552612 515082763 613128157 14863629 204264952 699617269 33050356 684931690 358622171 80018269 71479823 681088539 168650940 438068566 853951240 846217899 877425621 948705416 361237850 376461742 402202197 758944353 877742668 532070303 651882009 514782110 959300081 409274680 118849504 170044158 448754171 9503223 987335015 984003543 982140866 232812842 389168844 165806764 660697562 102389482 274068747 602984622 114651290 761896874 340037442 325292699 212335566 676060089 652043632 232621926 554008045 193348016 158346769 265463325 928351426 840876563 233343346 428267106 791410594 862268104 83336733 694223559 734090533 103652349 318045485 584724038 56205486 565525488 969526669 864382453 537239161 616740071 257055291 597551089 188900919 660150337 258186433 672067342 111333370 873865508 797891322 978424581 817437719 708726676 682468768 5050720 81789009 845985920 428590587 855647775 457344904 66118225 916550366 966634389 785970464 389468182 685235953 683789885 773184338 55687582 60958966 135024895 213354316 13043538 334374550 393161467 571557364 411703622 266258372 772802639 558674847 881055222 473662053 211397970 136328878 366320113 153320874 749414268 879285594 347281495 739224940 719979393 885983763 507014568 405056586 384312787 841186700 25461099 898434491 735466454 734449850 86215741 915740309 860522140 703861036 990877270 383741584 265118388 286311779 263189231 302816351 822112928 888530585 792028456 489930490 510587933 446266201 472915267 409732409 65325198 357356544 971599239 347735785 859072391 777337081 603364642 334344037 275658275 591351141 583280952 350000326 591455890 517225429 162845838 900850227 684752257 933200779 463771798 79083467 330635095 396639911 280051369 91606076 954013182 73430841 243261355 314286930 936741399 139671323 653733499 840947191 214691468 193996633 448770182 468081121 700114015 416354874 663205429 738600169 515029061 162912433 521975746 942306164 572674884 156794564 407100575 908248362 448040967 917875600 544368980 914352517 597039699 575784232 55897291 630746170 252947168 658490822 490892932 841804176 98857902 81941615 456173191 87542889 963497976 983724876 845953605 125671982 754632521 768432771 571064284 901432524 243789281 659391421 136846892 236018975 645678053 863349212 947459833 821726055 705217790 322827729 208250911 93834173 170538200 247811859 301432509 575889934 879673862 330579618 945191804 469146058 791816872 997300031 505557601 567827403 233036423 452301351 120451044 240490585 274923296 486604748 381428934 872655795 457399313 883245896 687933753 399652817 480471515 804724091 499469786 291122984 478311458 482654665 578720122 767509373 728448365 899443866 33754905 683291721 373059742 921971269 791952786 482925473 67583869 195524482 606536001 888445648 797498989 515088414 529253898 126071666 914466449 528009022 623047960 95762160 7014525 242047544 155487105 598286684 598979691 6865807 877117697 950335393 5282080 782774316 290554891 529944123 133825005 249069777 12925773 893798255 444635030 541943281 342439744 156634993 343019608 132108971 958947839 881975279 489231458 833310320 628737316 632736929 905313315 368454952 307120941 509988195 159522176 359903299 649456781 421705353 280946286 26123752 476038432 744652841 686549929 159679702 918295722 28902824 451504509 876366259 73867052 273121967 883381607 437372986 281982807 714975281 180322058 116797424 148328907 276137886 932689787 259206181 679553067 134473877 60046842 337434260 383511530 970411037 561874118 702629195 556835021 697146859 118263363 739727423 388336463 355689022 953028866 634468273 353513275 592848592 976998692 442118452 618817344 819512134 433255823 248771834 853564668 173084458 547199624 629584375 407899439 104194090 219423377 765540552 545189505 603647656 943610221 418419362 71861468 230262436 501501666 428705617 462795025 429545836 851446543 717552129 226883603 921039984 692146331 144878361 481938212 923426309 888597839 879816670 441809561 376523217 173236282 377849761 50984406 599585385 141575491 526907348 595557653 337340276 75822295 29128167 649532976 109079218 470308149 555918011 847621933 135031837 612947065 60123507 956491514 968461434 992938272 828975576 973130294 855316155 996123910 147792695 892510877 261187531 714738134 450024347 276560335 67435048 569609500 681119892 93207926 214871008 148516185 58025513 732188025 700965945 629925019 32794109 271980583 632604342 112449930 916643886 137109036 388548366 880125521 518315089 114628862 824336469 889576125 282410236 428152386 679792379 929088543 308671730 937071557 516095537 538321657 751682168 215536984 802158906 726503780 118917586 83030591 363387513 256456005 836361090 858450405 48897628 878787671 548216204 34819867 79254301 271357650 662070048 340349641 341221649 411930868 463218321 344527703 493882541 88194823 237266247 286003948 438932421 754392704 57481648 278188121 765483562 58673130 463313186 865977037 191148887 356111463 661005859 761979175 713053593 484002939 100038442 380158078 847422904 975800576 299411603 751461689 706119969 269777214 204944801 194806685 235615003 522781263 627926488 871896218 926841658 908842296 18246634 146742053 197805665 328474656 334012672 363566418 946537856 358289505 907898663 865857790 310460821 498952952 870399979 984902176 559776931 365791457 521551856 118448662 840298438 915192710 515004964 65732501 782131802 349183994 157059576 940376536 210918291 628429280 471818630 159867119 678018606 405422597 805593868 92572619 568603432 5706341 572068009 452917530 118953355 771414919 714896360 929472444 661335987 816119666 717600012 152851059 418291784 281629891 759520354 995801822 62592288 201457092 939802442 360223539 45332097 657990714 852775506 434722532 332289069 155524515 358613643 272784755 14784012 100134024 116847381 756308594 614821097 165998875 776563918 645488293 581446364 687153164 242513252 150947359 585762490 881728694 348487744 640643482 41045814 712230571 355045429 630472389 8033400 298552671 801328436 40499491 583513588 73187084 965461136 797763534 599980172 419228147 342794359 165728185 820263348 109565417 368027808 293165431 855910863 354501417 300344492 542987059 236447296 63410627 972713115 40932129 428298668 59994024 253191242 340639504 350128892 171352831 279262720 543016890 476948935 977309007 448600209 291535102 217439368 668490456 993752956 259093591 890636157 495961071 121668547 306451114 557785284 41259498 599554946 633743182 955231829 532434903 760059674 567426782 996022765 165717479 536936431 120429392 347735676 318641590 900688113 653185980 953818474 719685981 857204737 566202767 983147669 160729376 461267762 504978547 985380269 964246404 831869177 28463587 275803957 13425340 826899311 430855361 119088886 851895295 539773445 986543397 729809073 535483459 6813398 997301725 193143835 988894570 549129976 533455291 820463692 248583611 460338614 531831070 981605814 671450784 412255120 425237436 910788806 571017479 555850743 260677966 171702764 197063103 376074705 180466952 663155720 585330302 423445969 173365275 885222983 600796773 178958193 960985738 224623892 15245056 405531515 879568287 623666626 852819912 405473629 779241075 184672212 734730525 989609030 54817145 351897975 292354755 904381738 331749830 188276098 367054800 837481439 160258688 399536466 40345220 901161553 13370382 110796311 795247403 431668679 919755382 446142607 419461816 560694790 535423695 630548427 377114120 990133834 914360703 500959633 31469747 826645819 6652598 32821286 275287351 413757604 309073244 980746582 363590518 210197868 559364720 782042906 916314665 15073187 255529645 74082177 680094921 501008835 928693246 588239006 142987251 156189373 128593307 85186408 259964547 743128265 862823394 469530873 30663675 231702702 361865549 345971742 90983784 285202542 562319612 360192171 343182550 381776167 210099762 749476219 22394218 710840032 485015724 337355235 741271087 72466425 591296455 447774383 885846445 442241110 744365948 497635581 981878913 462978203 663107033 222352916 952077431 69383165 252291940 760921888 566610271 524985231 277438142 587227539 785716972 773384325 971440847 16571713 982587729 586715709 400376683 45194936 289229421 359576883 947384413 871064673 369144915 759917277 357447655 385610023 293389704 945428011 251837046 932862130 405482240 54338400 905705241 419286755 707513144 585453202 978959377 621379949 399517588 320954932 330883911 626109745 695926761 192777617 20866079 868767210 672236375 460857526 557597349 987027071 544404040 275244931 947573679 227887517 748494402 827673193 888408715 721526698 153684151 700416215 344707719 385273053 664358361 1832275 223138219 477232353 633236033 789660943 399703841 795590833 930797167 617968679 774564080 883282837 183489612 561046912 596846516 386487601 484373151 205726241 712028175 897197962 271937862 117434182 897103452 565331965 481521763 650755191 934529547 562407595 168250908 771964858 276216855 283338388 80287007 804582450 422109433 147081050 544635468 45892728 504880701 744522045 227774900 467127721 695564548 679903159 108323499 806555242 108756487 702821246 952727358 449543328 462917957 121404512 342346111 330426333 691383440 934864600 415878189 499799545 80941580 294059019 118333780 54509605 520864808 113569526 476549624 715275266 136152766 913710403 529192564 517130690 752593038 844360545 201107539 90635268 739189541 722064536 92584323 587852962 92444443 48204527 816290498 904892331 79173958 117791073 263474982 605973544 405040301 969528826 471559718 695658297 305026499 963950554 304190171 667050307 676814883 121378598 78634074 184802190 981622071 153362742 847246666 805132337 796086791 797239469 786190641 636000867 620186477 60292047 370833652 434523967 762565387 995423530 671057694 892427159 135174276 766120655 481932320 573664925 770801076 911991238 941948105 285651622 496407239 217766811 579211196 730387360 355022091 450199724 654205192 96438769 442226950 534972496 722106743 740907870 902397936 286365198 640632301 128041435 983708249 513871334 690293651 96041168 666738706 349771984 225456172 532586912 44783012 912036997 988555169 282804009 271373148 214566928 21084671 36946300 958983333 78700402 859089954 10401142 782915775 699745277 123496930 450471505 970040492 519087540 152321585 788645630 326018770 373231466 856382543 218882491 589439250 386181921 828781487 908605806 924717794 338619557 924130100 684475903 977714152 548076619 956248764 979916784 157003842 424662738 395926900 274030128 627068549 118854660 560900741 981369603 1105108 479847281 21755202 54114570 800609277 427414761 527028351 146024062 713129307 797662817 242035316 232235225 661358310 925840987 154324616 909151940 435216411 284886163 935906776 953054583 661460608 67166756 797468455 480185762 408749646 904555415 418087094 204323722 594931233 602478102 757635306 381654567 43935267 37687868 597979105 105002772 100085043 305231321 328230946 543786802 562405112 780439408 808964787 567172010 643152194 696714133 336928554 257167582 912387062 663316592 888928024 305547276 693759320 38226717 395744847 55401421 802159725 218724742 967782604 929966215 802662093 284567779 299492687 968087840 297414986 774826219 978193318 5092450 766370499 291003824 961929038 908484221 837526021 973391356 469250650 360746218 344835707 425850907 681747485 925121157 820953726 865779285 93015785 212378345 989436693 717818654 145421783 948450971 243344526 941676411 796557588 861471754 170064903 263339594 834218647 758494679 421168320 459708859 531200041 147748850 770084339 147017823 718549273 535299466 30979596 833311008 253448965 33919276 671111776 147502475 730408642 50856844 283627904 525003257 482177669 226313871 120830277 419886653 454875105 855859100 893227181 704183919 428047696 356715834 351498487 774176930 154840187 2763538 545591728 906370243 607821773 168765859 886732879 812617725 724278723 851923939 772366696 346054193 939994849 599548461 468369527 959684261 73674109 116370131 283252079 759368066 357932944 580038757 948706528 359640842 62570812 520108837 779480708 268122160 140991689 751128218 799890060 342174561 565327542 378794030 608525981 402723521 846988529 623009990 391855506 898924998 233277856 269362618 2648317 331929882 572595342 646335943 68068887 374664623 957419933 738676726 459772358 426763369 599280376 529995840 410013941 133739874 241113387 207979142 54524651 232069682 902579245 199822087 517825644 686079098 113202384 493836514 409358544 311429040 173133438 92836990 249837236 531939050 753776843 309299444 144429176 229014583 715929568 42917804 687310365 891455182 574337532 474433989 192629074 439256261 990852494 852829067 964276919 338181934 550422784 528858858 506779939 68876228 443287034 284208944 642072218 981727874 47024279 707640697 383265902 429210914 350671747 818160316 256385631 335604519 607750814 524328424 230532199 223779147 337434663 262904308 271841674 614213365 665258083 878723731 116726346 463830705 847603571 848131390 459632564 431047646 162438768 128864775 412351678 910000243 374750436 867640375 378740450 687705720 12636007 103073781 766662491 665557608 405426035 925072183 328025698 500905246 167459561 565202698 857598470 39057899 583514745 733885310 7070904 482738349 414752711 968582419 10989304 273417750 781437471 175527580 966467877 746943874 977787818 219746190 548625466 840777652 98694643 770997140 288636410 338602134 662562605 143364099 301565665 872671816 166044171 714820812 18279339 17774925 10163696 55393299 784391867 239438299 864469678 655954096 91647376 453754777 669896450 179746886 521707821 254704765 246708809 295895699 76344049 838786243 429978652 309365847 175464093 427058129 975613215 729916455 899500423 651671148 962700084 39723640 396841481 896970409 89932060 192053511 885443914 453878520 960379401 916039475 245109165 319303675 386092008 659192710 898525700 242608040 914152104 301269427 305015230 371922320 394895499 344812794 731430512 538366866 804760386 242255420 675101323 185236729 837146387 945945301 797976999 850358346 691271074 182598585 721674693 381529327 639218211 694433562 299084246 928370085 479897144 761016239 819829884 44585766 156312069 806719692 393914603 246846748 237290836 288757221 947845171 135074097 352637626 472190868 467995830 851256989 905946266 902591462 151229752 795727321 560170314 126734283 269810266 250000347 298182086 554512607 150582481 697830664 346671954 292272554 558967827 328696176 622894897 365390987 562850902 398204337 360199420 404087990 712609574 997153870 696519370 982303796 262774485 757557142 850868475 891840164 817129224 980108673 315107095 839579150 335905305 960237564 100587341 534849488 77747920 945293311 261827613 10307971 15793229 457894995 6692535 957275013 466254256 993589539 397548683 705407448 486344556 769907131 532512910 587612551 397552273 2645542 668509413 758957985 706638601 866690526 843493043 625612662 838544024 141725352 333715157 122792408 750613101 439576322 324664918 884911628 23904570 779004414 16970003 726803307 466528821 957679394 59468286 464060615 300278900 450832897 53379128 601705149 150017097 117941533 854418461 507019184 638698505 91810406 773406023 747862343 684260492 729858212 984606481 861896855 788761479 332210700 21979025 78452624 461710938 768777098 522768641 927360677 262166876 720057291 643325321 551105736 339726159 799201565 86270655 900451612 983428498 611903573 618076456 524452387 148518363 532145479 265922824 918426888 351355583 252250517 507408545 100613271 990791312 790274863 841761925 538990766 945226780 295500187 942019637 918324092 743385041 796795325 392162169 737013318 146186542 763269313 577211165 465136008 868816992 569692005 18398949 753067367 758754367 662101440 502636398 628887157 747675740 778631113 264932819 722080309 221216931 502342111 728756983 127664193 405300328 952793435 630890182 527930714 7030564 326227570 487920817 669826097 708657767 595013581 620166055 103445787 643370963 976106851 779172144 583539942 24631152 186946380 876634808 159458956 32375720 143846988 204090168 997117377 514958541 111267480 296460846 388975527 755194450 642931815 747405445 624119070 234249484 60006260 868041136 916693885 638021854 675826871 485850650 759256008 631703718 716387378 650725601 552089036 914962340 213447078 777409453 663885904 441311600 813328666 800345959 136758401 470044359 358460212 988924032 669910246 56394316 138836479 210592904 715276143 773784578 880605631 123719756 213961325 140837478 795492219 380172032 294161027 747776700 548329066 961230841 756925886 269474376 817869144 778317451 495077669 859993809 750064665 282737801 298409624 705959239 975582004 907145135 502031517 904742429 168907147 116769666 261743422 661449003 397433230 310151307 949768614 825390571 910715320 984144003 868777568 93433424 943234193 49164928 48283215 71525581 207745205 956444870 817782449 871302964 523001209 477398618 639588447 966610608 303873484 226908685 958712855 745420210 252838752 966910226 40810834 607558382 166276204 970703615 503342139 76757706 581111936 339384132 59477687 642325672 273636670 612523976 427200945 738731589 516859332 500142687 760487942 234438426 337353005 278908675 136231118 707451675 280093944 459047030 742136426 26557724 580820187 350062314 464279951 595421911 696053368 279638722 920480444 518208613 582968096 497169691 323132360 662204191 478679323 157925401 912555138 190742326 737417910 120405742 865243087 290520318 530255854 808671958 900398678 548235633 382382531 484683763 479032035 83371262 791028077 774869038 12258717 940828714 491959274 930570966 464295364 317178559 479197981 322414459 946853620 235361902 431667174 120497969 545921814 824012016 282624159 93426019 225654236 375478716 741179522 200032722 884260076 898182046 247017744 553020661 708590039 997189435 10888294 83188820 464909664 536918094 450029764 942614157 650578592 429047029 735161125 303065149 132604891 697553014 60542463 663624939 728262721 873006937 330938229 324978728 808448183 857209627 677823281 367122175 244928611 988854046 206926759 527181960 808485016 235840196 747918728 820982997 706783453 163797243 787313533 368448660 585797886 36234478 611702443 579900854 395092352 586723061 154790206 782110321 266972761 257486800 902824193 826611699 434478279 488798751 846889077 131811024 73987818 258968633 883460400 884036692 918948239 337231417 682875865 500197008 366375788 391367996 424968997 298951389 429141312 306607477 238164251 439281928 251598626 435570133 24695581 894224351 464644119 548059961 959471608 281366969 154122819 523900987 639634429 766317233 481759279 682725003 125385572 446325659 533939732 114879550 82371773 874779476 40570560 816110582 505667268 822665186 99346962 714139789 281426887 661301913 904054482 774693560 331740131 247685264 488954653 898704025 671475587 795722022 488224712 974688062 445710733 979114511 286886771 959842547 864110703 138346035 443684840 661059346 146121074 253479076 389445020 614981330 163794566 815262779 286111239 140589598 340244601 966130282 664529524 44679487 748327897 931159866 76956543 712228791 390992829 706162555 612305672 202853244 40772499 654643499 244852013 418397094 852169938 343273630 763746564 42551864 710494914 286810863 109455450 650955378 967588125 665905881 979415534 993157225 811621295 13068243 99514025 980573897 199013196 181030758 279865666 843414982 777122196 842280200 739442768 297745920 325316680 984952453 171956067 599665271 118811907 588878913 238689415 183121567 488247316 695344678 121052565 166104104 121865333 191373076 431539111 950435828 271460466 842640984 672145118 250538477 892064594 236849608 464059220 868314060 714256809 180722641 105152178 803338590 274094811 476584848 324883723 444057278 96075535 352346917 827822253 174560234 478140904 783858589 687769545 135456019 25923758 747080931 414776574 166356599 279782116 639161213 906896437 651466406 898328872 848416885 389891077 256122247 906304723 791048838 979463751 156538763 941064062 120286174 894960984 793785983 616581168 643787114 999217890 613484736 49527393 978435168 103667038 735679760 157965028 301041678 471912076 814580601 748997757 422128229 301573361 555823551 982462693 157847134 791637520 685741838 174947941 761141044 767947707 990684105 184320969 394142177 745387763 487970563 108784778 146803469 844729762 459584020 253292243 703904474 96855111 582522701 470395942 785211446 141094131 937475091 43286784 867545994 241651904 436609694 28553192 577673731 839079005 624142223 37612813 759303654 634159614 183818233 708124763 545157375 462092548 675352532 268564962 405720460 603536503 914680880 912305508 456448821 787493135 483070633 414363471 550330168 667658556 349344114 941848616 157591347 246859916 561977395 127802997 477262483 868498409 861914373 273023710 682579258 235642254 433413746 359598857 162541656 1454922 999487148 527893392 836251321 377537278 978706959 490352491 3905604 201007898 639751006 407012140 642075107 667173924 832390387 93788737 91254783 369489095 344891747 715447385 231541582 821630802 301294665 215515624 650666786 599535974 954103039 924169308 723553948 456789505 29564286 601812763 869601066 90983529 866668278 908908508 233862826 3427380 306574315 666699641 154729675 440220186 624976163 925911319 994464553 780535102 945682286 547920148 827327163 549236869 870654052 895460808 600441575 542901947 213644880 146814643 704151951 996483918 667096741 582355140 395390110 454447352 128754357 954222315 171804330 451874863 914897460 232616798 372172647 287161012 773824508 132903961 701506672 191407224 788715851 675422609 836402511 983911914 559972275 332883838 42763426 780733655 222614912 57658182 280740928 700068445 331090053 841180089 466029340 224042240 335135621 500186661 904647205 860549104 185685282 914107872 843086974 559986171 737723080 66351866 346060553 849135819 47287088 108050427 643594659 733660053 903910471 35511909 155258400 455672640 977876038 586396108 369043681 908969954 280490503 692226000 593535465 445866661 193853051 444981281 416799026 813737127 165264913 482246904 123976399 129115801 716067023 134419483 233844210 110843032 125329280 118233237 735616129 672543903 36995219 312420876 713665054 905444201 602549882 191394929 835925562 391299798 574470787 346633906 695017951 795381533 152639432 711215551 913089479 472536646 706895008 705509033 303565184 463466036 366119332 922090699 529098205 234517459 287092562 420055144 401831904 972180122 400394663 813468225 728243622 470482807 798315490 222104994 306515652 858804073 540700745 199271192 215118536 425211260 413947169 322400045 537221101 776786663 64921620 463650007 28354539 996252753 563337167 967313873 285412805 290143853 359405982 84542372 546508811 227822651 55686202 539403445 916152210 426526455 376257013 516713230 857543096 550513333 416573666 438469555 240863812 822185344 587498975 991278466 710414138 804429484 208043851 953840856 313468675 55589052 623048024 260715979 559258422 331700548 631308153 896187360 353989724 928870017 124920799 138486812 20727586 921547139 616374823 824520606 900109825 939222253 15244294 11924601 835102718 753509582 495367523 748484462 964028078 933826164 331268304 76833699 955597248 594622163 914503895 694262321 916766229 620038933 526225087 59540423 207780511 830383501 216143758 715034202 736584578 98737485 375668574 65464635 253071919 745625475 134577075 936549200 144129120 820407254 539203541 401344482 261423335 304252568 529090089 784504542 309969795 760419105 655304491 889130260 37380422 480068927 543145168 42891156 48118315 565010214 760530263 403102352 169585996 344756496 9212221 826719646 805961073 946160315 202049835 664958249 915784595 266254668 156757021 419319677 817280216 541474778 502551999 484669315 591456003 344869579 280347502 352509461 131784100 405919389 774263734 94157400 962983029 868116484 381065771 937585920 762932827 795577936 814897925 214001545 348286818 32787290 534637913 192544714 3493168 48704623 569453165 48266873 823797928 755784564 329444755 152057845 418070898 309466918 109728605 823940672 638603971 462503925 549486637 506154091 76808 764099280 381234355 762434641 288720731 970599989 181726449 257779806 643059501 195882838 109345872 624830037 223265206 987994994 955071907 337654018 325421312 860001669 18327060 975574363 231421553 85264034 476852333 225458679 196111717 83906577 754195526 735018839 198717412 209241667 344187217 271109641 250627131 336592167 840720715 765624368 236732359 576516436 661398061 894267899 19818809 664490572 722612163 651284806 681374207 270004620 94386057 789627305 448678876 841737984 105887271 50202194 345502157 727218867 535674869 610625854 780435610 155847393 870390813 413041534 475811748 307309088 897832798 641281944 954006614 743148211 718275313 146330908 245737316 704733497 932404438 773110348 814710296 697976409 645167184 27193988 774317829 326759827 36520981 530767143 327591777 821878483 963585537 111110690 207842694 625375865 564635431 376236779 112362346 685666161 108336884 476566035 678557379 753827686 949997857 980228716 829948191 199038785 913817973 307338976 880388282 731294938 300095043 353680567 84913746 569339164 313468697 104074258 38700651 675128358 447350581 81606879 379821231 195630788 900038978 970962663 876580358 192786005 42776041 99780881 723869043 498344814 610074376 737944296 589052711 694681471 73298685 160432545 419656379 629210903 683848356 459696392 524631743 415831980 925409102 265776667 214398226 570043102 669140549 542650749 649960767 991784601 675871483 183874330 350074082 675086652 92244075 941918286 524837859 15643571 556078702 563764252 587488031 920884867 340414537 480905940 532113264 533475113 497691128 420907506 295171807 246825583 862809855 494163161 539904057 517217803 907929474 499189735 362520645 981509271 453693814 51192376 608222568 921974200 458627980 464596668 501151868 951058534 962512965 449714556 447338537 657575946 345502917 235922120 191534544 319888148 345177554 373084918 87099397 538390522 359037821 483198475 443682122 49521116 373651178 935810624 645329160 552516611 690745550 371693872 300051198 197404553 811967745 704232396 699299487 484011020 57715932 672184245 251216476 46619803 547215117 849772720 974533737 317790392 324485317 896449311 173772532 933864939 602905338 928126407 799504168 70897853 800177687 791999742 997395327 48453907 992549325 917507617 946852307 449452594 677556728 102078041 346572593 289270736 106908140 809514465 528182618 694421012 255520269 285102076 729232274 89384720 394674032 68331151 728061285 206651316 862731323 164336643 581166248 383309694 784989720 621356290 85711267 335215215 877950369 570586442 5094019 630364920 708010157 677878696 469350368 351934512 536401377 58687624 699537474 944741249 707532193 222058464 894763599 764161857 750871719 761466282 352567037 93761153 813704476 13593677 97302448 599928273 978477619 995539071 940664899 825933060 89189706 927406868 267506745 612125984 682912843 670014863 102344006 856046294 761911548 294804823 789664351 4610778 272949669 715016689 920104861 585838757 209569127 229753677 380443358 46690700 167748508 120662157 368018300 723892922 366098489 935859366 310316517 514446823 306356141 287595736 606998938 93035059 543570332 841748602 744299242 330910799 352575910 735448847 655847910 554945497 814770602 948982190 849712789 932096575 741606701 262642605 902487418 270829029 374886048 890698277 170734876 533805817 142050020 579732360 245793546 430544535 783380875 4124232 53000880 945957289 926166648 128954747 902890494 310235924 908994105 226795732 948896471 569724016 324414461 183970838 798046844 794163467 383339590 662077628 709277123 450277983 986267624 791908259 710188579 111688975 873540557 19474842 6264997 462623131 105208562 476086208 528564884 21113320 643819102 965833057 102906774 549891916 514813020 283840383 641160930 757529101 79962459 66427309 399972594 879585499 851897008 103897576 493190369 245203965 503531715 965246547 469558483 923371186 230008796 859635893 688404520 507742260 70842420 783094266 640532545 267607222 900781291 170898578 32067455 694477089 441091384 295220143 16921976 800949972 55322975 224894228 721582204 780324635 521608381 185343763 607489439 425046918 26368360 711630755 396272152 698644069 89733390 526844948 989600182 918732877 96993211 461983573 147897117 84087738 649201756 134151143 155754778 404231476 46650013 704808486 58998761 804839621 993834284 322791275 949610451 37344819 665860503 97533576 427442914 778564511 117417743 277594841 258457535 241071044 500904899 836252563 652540780 214651475 593075265 121020964 468753275 804559101 467964841 449794866 302181485 699241970 672414044 328484014 277570814 927758142 790538277 475776475 54903249 71792764 3111457 927475139 829695702 266208563 230913493 263791908 722326047 366157810 242732028 630590909 34764198 991589212 213026811 201613489 350573166 107385140 766155194 987513005 503287122 47750371 844757180 594182924 864257385 190185865 718707643 773050916 359106315 920345682 375962728 202811524 743787985 560393980 835212209 500651883 320551961 341132788 561636351 902735807 740508393 701638856 16977181 485412640 232725232 442612655 185933861 956600217 441538218 330815146 293804261 67703585 305816616 142940686 980697652 213880878 260116942 66392799 603486010 391225444 321974384 162104868 724499258 443057960 927513519 822705814 875977399 190521500 476630315 887326064 400740154 75265819 185323801 518540048 636222326 756619172 418787802 382463614 699000668 418095685 441113603 163501310 889591502 811748938 895206399 431774612 355107972 595006365 833606178 577799131 674500431 24244008 226071687 540010604 674680942 896613590 372114615 743676633 631838957 336765702 970960600 590049650 619649733 550074898 487329260 216064531 924579060 806826357 749911682 606086013 609521283 163676570 533273317 949045078 544029515 326588128 393830174 921041326 965382183 402179868 778929627 625064358 152031816 316559125 593139759 483655456 313411918 591383272 298259632 364890721 480698594 539701858 737613333 220908930 881851026 739386934 101534219 516659655 293057634 276958312 601767137 167058317 845676759 820697276 87680553 394076379 266447160 450534961 485840379 401122146 188278769 356893656 940101184 95003939 690622569 975135127 455149163 346656474 712975452 142224707 945550537 218798084 367105045 311176921 959667718 940253319 812994747 170283169 177217601 878710357 540712777 962862766 589494144 703447016 249240117 38782977 146035688 640487278 507958023 495876419 446062042 628969226 618122627 905879787 434517235 70471472 641426300 976822163 559011098 879223192 446520127 539249208 541570319 904072776 926383734 1569831 730320679 56005395 226221736 130128188 177177831 896411368 909499304 59831160 854809055 716872896 713460314 283568344 451120070 728872214 129326211 328119295 529739835 261577595 16141877 378970240 203564143 488263801 208529011 505179622 722989886 595600250 449503691 582181919 41849020 290328790 18591961 519208049 160607727 289246349 753138895 188251582 202678865 62861286 945534248 453934160 648741819 271615479 413010540 994166065 287776026 136712043 344895209 168253361 733969642 117247521 419911892 473392603 705617153 312188732 863211399 407145079 175159816 481937951 494133442 673317325 260133204 517508005 613114680 179086298 791217058 316813067 893930100 380953259 368088205 114049815 664847443 879400204 960285448 910189391 766657751 814024403 92547593 195690357 980314649 86718151 602165761 294032030 696590886 310044693 724349119 540919250 380065601 691384133 776523982 547807209 404990516 813857475 161020518 449891021 719172475 109120281 37126657 580242648 915794432 834319043 351364435 723429207 50250588 845557946 158797971 190775155 229640554 679421529 313307634 929047963 85138989 999499498 432823933 868118098 887666500 387971971 107853346 547417787 404073247 621469454 870670461 612805345 12961469 14758652 174753069 647076938 117601586 264770386 9455643 284558832 520496671 880251780 193176431 744316002 392302268 904658203 143160705 469050333 274534273 317785371 991393566 128259556 236226645 696597499 816074668 353816975 369869938 202620168 415730266 911575993 80859942 642491571 207269126 170782275 449597804 592240044 33662641 952191020 84439312 240706085 724798806 318111499 714848948 863359262 865586437 996286934 200897157 206017016 735788429 652303949 639818180 732289156 67662783 47333507 325553090 565977849 142519877 659646631 435676686 596865504 810574440 90969187 291539987 888958060 165430365 568767780 727345015 288317850 805960971 877584617 330529774 488120893 51965296 910271869 400429159 916345693 928114561 300658084 887322272 30848321 416615922 50693399 725912284 958324099 98825201 672870318 712148979 608527188 955262307 248700048 670452705 646278015 718573853 134194855 984251988 968801219 239179894 898702680 259895214 234983776 989886219 132926516 392424402 776447659 174331511 998151876 755261960 706783300 765091682 262226053 473154919 415381197 680293681 356900398 829328791 225622648 987076714 478930291 990362984 567415115 53331480 394801270 274802314 508261903 444225163 775656707 108929974 581720643 34824374 622794412 331521210 576629023 206853602 356677011 28628625 382716949 974601768 257550332 427435960 977201236 835861686 940354045 244362368 123714531 765971297 354333185 944571157 815865104 355792093 963651126 340767770 210060252 871218130 674203875 782805613 274735736 836039309 544552815 805784315 257066968 890171473 692144463 866724070 226848613 37449034 215466713 564830015 696327038 335939133 990632685 363664599 781109432 833399124 469942567 243967752 948461986 470230944 187546604 95188132 492265152 421761577 325831924 468954358 158321811 784991393 479899850 928177020 802625677 979540411 602410009 525048304 230337278 558732650 673542237 217356570 380421987 318026967 425883180 505925436 233187857 162333040 479349466 684662389 575304459 161407709 893285990 27283664 457613560 609860045 770370712 891060797 573860119 900702037 449333830 720683950 18553069 584109283 960197949 293528488 719361438 890476386 929904089 768127620 720186586 414223066 702187524 614029814 297622328 553125989 932584977 969293902 79268935 168530769 402934331 62594566 230351857 350187642 209755773 117763596 921478024 535162724 619212020 633915081 139103408 138097971 320608046 426996137 658221239 676401963 496669671 434229303 943986439 484138026 486866509 727855725 708020646 171127264 383394430 326939208 862321091 184110089 671483885 513507358 572961589 895750331 186667773 278212389 431823498 12773717 410799860 766890265 950004250 16762101 223916059 823801953 588503828 296903 608137366 549179008 234827015 490456434 6217540 721502661 738777689 508555086 782116598 108378559 925146460 716399696 772367267 983525837 99286609 342675483 471538794 451399098 541252697 234149652 309383348 307990225 119040856 561327838 934585007 382522054 202136856 989136171 433737165 324726262 295549491 682878080 738872973 525767222 491171557 403828054 834192807 157353970 521120084 43633637 922573260 276609284 161731785 908314064 386347869 567628817 999299343 833862227 472615353 881917377 282423 747470955 245917545 517319359 269324369 452686516 498756499 2700115 650338169 502162950 529482166 45889771 459659704 16919592 661748293 267912812 724159727 832713985 314164971 296402678 813089207 807603112 390461366 151538753 609039236 223639953 871680244 447285686 63955476 511627174 612108124 652793138 69045703 822258989 466136103 544502253 552517186 771459732 610062305 452301190 96562071 460001636 171006608 204222592 604744696 369191548 85789427 707212814 264590972 556265924 329257733 475079140 187522436 347222162 737339857 632010435 435848090 289481460 729876659 664197316 103277172 510698957 439353044 585775419 592117887 282817962 916963200 559140797 185111874 682952602 129650496 549833982 449837010 475735155 907380433 508419258 68216017 151114433 17635906 629406424 21481370 695368581 678988311 982299805 42387314 169462850 652072265 767033970 388389635 576126168 261002473 712233358 554974658 281059723 385565942 960259464 868380740 839600227 195719044 712339906 344788698 232947866 787799712 669051093 418357441 822252036 465475418 15156314 135604787 894166720 870588800 341955500 395645168 137945 54420379 620897423 583215541 295657997 396701994 40956981 699002312 556084405 400637202 108351834 761096078 645037255 509280803 545140338 614839312 594171394 765589933 704027258 517574316 864918837 555383215 204349804 790818405 798539887 919039640 917027173 441978965 574770916 656357337 881444247 515085337 907435007 221382646 228245337 593719769 291599865 943397038 990658509 763899141 581010545 280698919 890101489 471361912 637501768 835262486 423080688 419027761 491802172 68849526 680488355 516278839 975651440 499690576 989329303 92144086 897250898 55568575 901552738 816249037 30340803 965496274 643893666 913272555 675999851 580450066 781498346 274721311 218240305 267270554 969760424 900361857 667491309 301256313 624111787 461357627 683614047 293326766 944080697 348194198 148905774 179899329 902368609 652440093 911948355 529142686 356329204 491571444 723663854 623663223 648352126 498061386 606639786 647501587 587506518 682020759 522249038 838963070 19350919 936483282 887330954 520591629 393021500 470936638 420090993 14276957 603973251 883503918 613785091 232919076 407142715 322971266 794881990 766577372 458587659 888505919 23458014 645214653 689183595 757549212 135744641 981355877 602873437 166627882 505305506 541952901 826618886 158652201 856995214 829161607 13228454 579937050 932327820 510129751 905959509 152279161 213240991 913984687 273899183 649946807 928565808 799053379 377782706 16873551 660629439 84289911 357919494 972512389 793575572 839514989 422643244 898810807 789857312 693417354 469361324 457241278 98974863 652092756 575840724 207935323 56851410 847519460 438644804 510280141 860888648 538680655 642306325 621779918 382198899 44287698 822255640 627383960 431949393 912841292 922363417 907947451 570892120 6294314 966586591 46907026 527878825 55395944 147798185 616931888 202540922 838591554 463175795 796271429 283463362 194209987 854902399 642239093 83962662 133141806 782000466 932166891 771145493 615851668 12424349 757435070 735816625 540292562 661108133 840113795 974849056 306339754 898552404 762645265 600233953 644579801 390152594 999910667 563312845 531912575 575137049 933439058 374504264 496459288 652298772 816546763 368860511 503305120 174642411 507674036 86427207 579447326 584435113 254826435 325918409 50744190 176542085 351525187 554569295 936110293 259285498 539974452 406641358 415035437 152389162 830981362 710606097 25518306 196294524 954136229 353178705 373563196 3911126 458295099 815588236 944229446 403034680 556291990 445673372 866241699 25170301 205076131 506828757 816464541 741353404 608518127 906558448 173938384 740894514 200042715 453724050 595926974 593970018 437801056 33014293 17042768 16117314 680806951 772166148 360344538 922034384 410576410 722442031 917522108 289396855 463887560 942767477 106336786 168396887 837695110 501915059 971222337 926247441 550154742 991137608 466776158 86465571 57373475 264689056 312736070 406624692 190524817 104145608 689576495 841158166 652708674 286055952 97631773 823492695 452179392 154721514 199846449 178620202 355113630 505390272 782871245 980929709 51928487 626073128 599320510 477618949 617757706 996170870 270758319 827405230 760731272 746086274 443595885 516550381 503546487 629925141 268984968 872846713 689748133 36251915 29925012 403221117 262242110 210059177 727959988 245941906 392466533 941478829 907988130 112182140 964485720 91253813 403286291 104642783 98832264 33474349 743851638 687726580 699095289 947181783 984265771 476566847 346807158 296609593 852532328 750710157 577131730 587607570 939689579 476661227 553729537 272774998 937097140 433460524 80675759 30476309 459870159 499390495 354876459 599222564 696847417 71494695 897319768 412715512 320428777 886780535 836883912 688452001 761524173 364918786 854342916 954242058 857136476 677562325 267882471 183408419 505897854 860544417 765856188 43467528 577700204 934544783 847654233 326549988 776689966 965254533 854531392 496217552 830919626 302487636 900674336 72763161 832324916 925578100 68620429 140679541 260894424 541092102 371355983 245454380 616350959 570189442 615690775 387916651 776542298 478457727 440463486 831284696 419061812 518205560 512823076 128866019 251553362 600256501 638741302 174367185 902282900 284249385 405271064 457943369 616574888 880743064 327530430 901092377 568399266 44623353 545154133 668126193 581517834 849090339 524512601 552577226 160747995 637712801 288846413 751078461 705268853 673682257 596210835 431229051 753471925 405916486 327556580 465531824 806538782 81791641 932855427 378745279 50596990 324516156 597918649 201928362 846891922 67354872 554601738 948341491 831875771 50932706 600940477 370075164 203266131 16870911 6500639 675411230 456521490 943679659 663835076 22441492 546814866 333448659 499134523 804101143 704425805 257555274 828312275 107163889 116714066 74807091 725525271 191297318 123234297 963361851 194794931 391391989 874186843 952714431 916480613 621522170 677150470 892120729 216083642 932311339 148819691 61537965 485798439 38005702 833259049 473133725 771260693 487328248 239996323 798460732 849414433 844695255 365808696 401466461 277603058 735195092 304576102 648244747 731181034 531449222 364701997 716205007 417825291 354690101 426530682 160448617 652175167 15753245 703948061 38934669 316787692 58679527 605528108 313391205 598433353 9597254 107731220 837651147 670938293 43936846 366344582 822993563 109177032 118409925 931479390 248925598 20159212 194983938 642675033 123880935 116383457 707245338 263904613 321699353 534812505 146850093 311478571 459658688 546242153 127798412 115533172 129743003 195452739 108741743 721143745 682598700 350212215 851288514 343112240 275064382 56693984 311331753 788521175 605963924 830345495 645953190 329331952 735816607 465785796 78370084 607380701 610793161 274733726 947187070 14074373 368086792 689658304 832656128 506378973 119697756 192225853 258994268 427212417 555599122 682167633 53463726 219446247 714052502 98885471 971446628 662519313 63694525 671294839 953454856 976261244 247173325 295892507 168682033 187830662 944389990 531977434 463008869 766532422 184079969 869033968 19452927 795920700 324749364 294802812 290031460 217186474 149158698 122591611 832686789 436500970 625690266 518682193 150138259 150303741 15263508 950819756 720017818 160145946 1114785 252340090 833691700 926243020 138540153 939966433 887183702 55351591 738773555 875619076 24745104 100667720 423982423 772102123 464566713 412775002 532955292 13358688 276891611 687316343 350578042 878331360 930904601 816498310 870946543 206524451 649228329 772308062 846621431 633170207 141584424 743209392 675779694 984457062 817922176 427914951 184588576 306933494 919545359 149582326 244127503 538292039 343608528 927486567 779579453 229136877 325060964 440898085 642821631 829078278 819806541 408369901 122305030 553617302 305177250 284571073 204835127 114413749 381245740 348959879 382481525 968836705 936036001 226704714 79533819 840842004 514366607 412077708 369346694 204493220 805535995 328923347 877804787 859733805 988682597 587021600 545028164 613557060 709475309 586950029 133878589 637069449 865682091 284524276 960085390 271269702 613586444 780557075 688293122 593840276 100104369 976322110 665817623 997479554 257298719 378043487 122949837 114191264 427037125 41496875 736849975 994502389 135407612 786002776 759532007 473996335 533787380 633564661 481412010 363825053 379868374 147680663 558650392 810969709 472809045 584653359 96805179 427336964 26173639 700191016 344296039 7291342 148282432 277167962 749556016 643857498 383693902 367343045 792099490 477239033 533910122 31979961 174723027 856533859 219530510 253928738 148883609 512766844 932660914 221214989 323250965 80377411 121982771 478294419 279903228 51814868 996594173 129991216 125182162 982491097 425176821 197744277 402281852 282304492 753600239 897304167 1177585 433432725 903910756 69766424 806494770 310545675 929178280 793344356 938493699 115514989 901718377 106117956 342908708 481773256 686554679 471020187 542952813 784920565 116073372 732692317 285513589 794442680 138006170 591575613 231195807 195408453 973623620 276395929 615512516 395883129 109554183 531500779 83281213 409552248 41590772 151418546 158419299 578963160 723895318 437331512 334040917 846377681 842071819 851957502 625707779 855974863 330309928 206473526 451912634 169725603 491596196 723706702 321817436 922164687 986703583 567468023 558625829 204026180 836076908 809869427 108493641 29683545 257374349 120192386 31741238 10274952 459191622 335323279 135262586 164078129 660723024 241498774 24773577 598249595 422127919 168110783 235033671 900534388 373960072 800146107 66098027 681257971 660770643 797088473 967082943 94886203 391501446 51180259 92984666 196944943 249569370 167756389 436183188 584248829 106242196 469997228 955719352 497203909 535996045 81457356 42472138 934059110 313746438 292740494 184260112 339743842 769550936 430993760 145963347 786517451 46959829 84398590 580851124 903669063 246970913 221560087 179128229 132447985 165172856 558798168 605749802 966728801 972655471 840148917 764096051 115650564 39027978 44556133 299894371 491222196 563845630 954312938 779459418 546281304 173854201 577477327 619786635 326204902 635776858 825913007 235563585 384811208 580427254 414245417 332924823 973756097 634971866 827951811 880445037 148461263 113824384 339707000 746121982 791446954 383851025 132389145 438260517 690813960 231678879 327350398 373942619 120322122 306604379 86247907 534595379 291180709 82953135 990021994 412432432 828314677 711468247 161448184 933269059 630215610 431315658 864147762 12505428 504033029 599266843 141101890 731809549 980224927 647108324 937054202 981054381 268976711 105899596 352131148 884319764 706268389 19874115 345078430 153895438 66540390 379513223 844670455 725509494 908843110 379464899 26215776 193443852 257491241 392812242 328087632 611089564 320016766 149483913 530411643 805541449 310853251 310954448 590280278 721609221 138488234 1431480 702328136 479185079 866311901 634030349 15289836 122506495 367908284 80041280 740161064 922514539 709584163 855229098 373673031 878157602 492974500 157777717 90964729 581166969 332516895 617935789 403374974 30845260 367634811 532442592 165551299 379321553 194425804 329997857 69801335 147279355 443839006 393526489 328315872 225629084 883379742 808311851 931968932 680257059 729192171 399007071 962336453 286881563 72180726 712605236 279412464 792662458 804697042 966411578 63265430 839981884 61430623 997596709 810922688 274404805 416673375 834418656 282622596 306258052 672044387 722554993 301811719 407321169 926562647 658832331 999740431 542420899 241883152 77516856 472074593 881644567 280895369 91975302 640787405 298264628 327645039 699979910 923352137 565887864 163006868 293011474 239348123 911824709 281858686 213576933 609631033 176504811 205462417 938393967 651666195 652912053 679368327 869165513 253396810 936162868 39000722 893414730 363788975 936295825 306062912 179301865 508640274 566159647 943185102 809296471 983110445 842958844 593316808 10401401 678929568 466515076 648126652 774615106 575681759 70467139 532463686 564093729 330680909 144544584 839564895 547426022 205524678 768169999 971869836 577426250 485855977 254782116 181707458 446978693 275339383 171349497 233969566 638922880 254727814 802173182 227563824 411842648 529551983 577628951 410623039 918923645 791459511 100671640 521330101 424493293 110705170 694885603 316503395 191661406 925209981 121223867 465702667 646999026 375063667 443556309 674202394 419996477 479984539 868752655 487547357 242316613 246528048 803656361 457134359 633487282 363347800 960800655 320317211 290183913 778422060 209706450 943925799 641903518 238248737 512549316 783829706 477573032 267948425 181693664 185280543 421128377 260214313 579552004 350429802 986205605 958174479 424638152 359175709 759680222 897304335 774604532 186629648 100102565 902115463 535383877 257382653 412837517 787634325 212681260 479760056 569781523 147253097 248659920 340380322 20871995 151380302 986091428 315146565 277541428 397968436 418889149 135446883 844935745 301978645 259944164 148196215 881640678 196842416 272167637 172642913 322734091 836371483 417987026 731045549 307635357 940253376 703287072 726447643 495133139 686931979 311078116 714273565 951124734 570708641 313445566 975358288 777932661 106089276 17000040 722310693 683343592 242240786 122316158 14925266 499480727 459162273 989564502 542902138 799717098 167109820 412614336 516825880 620050804 983563557 564421955 450566842 39632248 371166738 761433488 715583136 650164086 766461805 854257967 239215990 320334654 581494978 455516584 849120391 130207079 852026917 348822719 22041495 919923696 927109716 655186337 17116299 439175903 950753220 415219217 649255416 68283483 491751288 132601124 589470985 640219874 896892350 911240873 492859251 51859358 883783123 470527282 536572867 90277989 146593820 303442375 800327906 953242552 779207547 452761097 564777322 787532063 680371648 949614432 102704745 897581316 565600158 525311357 450761908 728288734 186420166 122321748 257773183 321019651 2381928 330266261 233079403 150958287 843176643 534760347 598933869 148049317 47148630 670946741 350268433 785475201 633087200 19194334 379486199 15550317 178704853 546780086 992424635 857217607 288386883 518657615 992224492 854435168 99455136 440378327 441526161 346782566 686683583 362679519 978437907 10538167 631973573 228696140 857074862 544535349 174582587 318146840 840669278 255640505 189159806 393333138 871801752 921798405 443759678 970437970 670021933 329338357 535900179 289945443 136208750 35125933 266736446 130890747 158366398 418078202 361820058 961326205 305757614 588018420 247487186 727030820 218236771 627238262 283885616 734965903 807091162 479843007 727774481 287245431 893921530 648985842 274604103 498786171 574147528 54754003 13228912 163166610 713500149 573152445 765561270 319492369 236483825 63549553 696580100 231977488 463035252 824463303 237069488 23120008 624869505 443184021 2972191 918503920 108585672 189133716 457370507 882330139 241467588 755325695 720963961 43551007 370635574 259943005 337463494 742425727 831809282 434408073 995902071 114159930 361073527 790810377 188366801 431022105 526434360 286231795 281805365 614968584 596755114 297347756 392161271 247487598 467641089 488247824 667880854 715466499 371522047 156853422 89099598 543895526 915256580 546091550 632551966 538058984 888812415 306042323 280671269 40787947 917007648 112683822 697917821 569553000 997855312 996899503 248328095 157857802 379904417 110899598 900450700 705231989 152719686 916326686 822803474 615154892 837397211 272591200 490338910 340025655 980569734 540908851 330581223 722447362 125693328 493074310 208621325 360730214 303938187 458925451 344778543 319154948 318129262 747497158 116498802 592213255 778731463 943736205 27307879 228010827 169605735 200342554 838071243 763107871 729039133 370431634 262787795 774379490 37364339 224157994 448135184 235901863 925346300 148024778 385031810 720763121 500858187 659141436 231135329 920203971 930412320 647727700 544221139 888942692 206096783 313952923 261450221 150795644 946871314 436550878 842689144 244670568 198714898 741112340 173257028 542541258 316404845 429611199 449153420 570582773 786068383 126131417 878580166 22208824 876631053 357076592 943702741 205445901 645524247 940728305 488615852 549190533 31129449 189799084 803752758 258216240 881880104 567389245 443355687 760239717 908317666 759356181 314562441 32275761 184927334 671867795 776147747 668048325 907304271 388946542 466325987 981180993 766763045 353865357 596501952 949306720 854972934 434846784 889457806 676860002 672118489 839422422 401287221 646918131 476929571 198437016 897053326 914939897 90953783 971257406 281912984 314985218 343123286 805608117 525824327 617077901 861175893 398954239 394328929 275153505 846871222 987915071 288504780 861449422 84370442 609262521 561370868 216071967 318884985 587830859 202830211 256192605 440707106 132202028 830532283 296176452 429561737 635323694 334770374 542903141 876218945 468646093 938696506 116712513 210966803 550649798 52550198 134738995 85982308 429707660 222634183 627792827 967292418 375114749 971437528 262817020 883432078 79422086 810771511 315307082 437802605 148931500 301658546 588728444 748865431 794932905 160225619 525516437 512785134 598054354 685236233 546817942 265260078 110990833 56067260 7180201 18884707 62168087 266695854 945091793 259651877 135061107 459223106 287666151 814222027 105811445 936654766 132155079 800846298 521418531 385228619 208407312 599229505 814239962 237456347 723639097 396900396 708969854 544211613 447254186 384437809 861375321 890770356 904303206 151675093 225699459 331478103 736605186 227615019 345888315 813801799 691650123 38975284 73465818 428503636 211131692 490875651 765572022 536495593 592805839 620633734 430286926 77606796 550566056 990627443 990500710 154800922 94638158 856760087 801788723 959681078 178579526 322709473 53817283 731902790 792116014 429212007 501050886 598986862 239554989 768624231 56860473 731170899 798929544 213392381 684523415 699187970 946966413 870932248 783287778 324829414 501719591 666558455 810187365 132394861 17805670 184845848 879980219 999353841 3669320 996164972 504744522 334896471 532228458 14442280 867151592 977771547 263373221 107498399 453442607 514004966 892884431 371715729 644324380 782517983 928058904 65513571 133867419 833963964 902437329 36765847 207623294 266998090 693217257 517009712 52077699 598552776 568997356 528629774 191873109 645468001 136965886 88608674 142095226 966961594 762828868 620894826 376529818 361093825 269883910 285407622 719663632 777865271 459846186 118871208 67650608 742504052 510915448 652694268 75318065 733544149 519142979 676419798 966468169 710915660 121407334 139470263 492877250 162089650 671306452 248558320 748131328 493313149 914090453 722013113 836091357 704077027 515725806 54391996 212222423 789131271 680462206 829217843 833073474 458629201 47953862 850594332 42791152 90644445 169373497 47351848 427241196 160344034 658837586 716123434 408083307 740065195 657068597 978649074 611380496 619566697 244422947 737967087 19655847 43814404 714133451 951332388 859185320 908023659 453122760 366561261 999962764 226385165 381543398 193162505 174332289 556294220 869471818 281730141 131471311 281878857 885046489 960082908 245146472 635651239 856653026 670690799 722677869 181412983 506387227 685538956 255639030 672957599 15069103 681985289 971659748 154686557 653465356 916895362 290277621 967748292 313801900 113027231 855158042 900906945 903626867 167466728 752686174 605055643 867044896 57408045 696876217 615693936 971204195 352779587 756199093 118264 850880857 764386402 962143589 741721753 855926915 652429151 971717332 767544538 456575228 800195972 761081971 808754385 626959741 517969940 795187162 487388681 857054737 736541635 122855338 140869466 775813700 491072018 308609891 464055620 110246762 210404023 504945220 529515384 123213485 647478261 816646276 882219093 987655292 162022656 899653717 273617682 342172841 695839037 163003680 638386783 212361494 976327863 775783766 407252984 330809106 690014430 508890543 141401952 858111077 212680970 139414859 659161186 907637593 553548741 680372023 449914811 38649224 188675451 610632640 191961957 256710309 154951963 960293180 498727436 336015082 504094211 95521274 170056455 456516303 112491098 506107476 838382061 975848984 839693532 497867411 343863151 386262921 409571989 829956561 290850584 540418762 276832557 474365841 878758075 496722583 3617683 533426742 449953655 84363659 151952840 102256859 915538844 216949234 771456570 630839446 348714858 466289022 921643336 742833793 35800954 429518839 587786157 160525418 553100605 153475402 56103297 662173937 418667729 597294434 502243428 500850212 221091242 257458224 267956891 632415072 843615276 359807109 308007814 362585897 639552309 656957505 488075313 254771785 597527495 980916919 468342696 436826122 543847288 357332084 663218709 715116033 265959631 991432043 35544281 240423802 17951551 159326277 305856183 9610039 628419030 825946939 85152070 572898711 711936835 598374958 212067413 479826695 277028301 964837509 880486664 415695730 692726102 991537208 440460939 154363079 128927431 749242064 43332116 849471023 415241600 962910209 828737715 176662168 648941588 186584325 344806391 724231093 811605018 239372721 505228049 892525682 879665641 300355841 222100799 997794838 321469279 166245086 270343222 268451441 612277544 619388965 235307396 377116424 264182904 360109391 178013914 36243530 28276276 512701959 227569243 822460297 732867155 322079270 697274787 814722400 907728906 392053565 76520460 544311379 48068562 489782451 157713504 990774961 185333681 914124545 2998603 546890596 804288962 342616615 407888696 518747355 46334748 369013763 29097641 346832221 670080306 716069392 17184210 185569458 518809811 590560732 326905729 622625859 441464705 277482458 497286587 643216925 740402139 768563961 215901012 625619275 306167781 464473925 276343588 945050289 676572474 497532053 456718864 785260995 210803611 397556756 131707190 776798316 280194956 941050207 153738683 77502663 941370463 509912786 569706833 621010218 116609656 561468957 38187814 726508729 455918319 308957481 697585884 419446455 924293807 347681287 379863088 560201646 521549159 566678311 697661645 414034485 279278577 365752217 814598219 985891385 489550077 374397615 16857524 796053632 411360929 772484778 479083839 422851279 172775512 232138422 476763975 304144521 817755134 142893130 380853486 499123866 803036549 44911363 68330871 433841985 646374868 289327977 762763529 10245574 27055635 651838892 663401359 449582127 15802432 604025534 197753337 131697814 803618406 259448247 817678640 815758523 24575779 612669836 752455870 399953972 382750639 214995752 77233086 984703569 742355935 84749236 222907259 716820975 52531287 607126990 649075181 350704922 685691876 393007985 855937445 165896453 670270977 423827764 894477154 212780417 990403887 527833691 737525081 180115063 105017053 165910786 620695135 853137113 111360805 841046755 207168540 642282438 78691541 23475271 514648397 165355349 888364893 593094454 830408510 136057534 799890163 453919660 173698683 887513467 674779256 203409277 725221251 996393365 218288409 517336437 306407466 100287175 128980833 268144969 668657538 322818241 414282492 181571793 329092870 230666271 124385248 52119665 6286256 742995648 615007617 164779808 443166611 426438958 977850323 458611703 153460772 52622480 189631431 255213489 149352471 189712350 415841695 991358848 513353928 647770866 111313502 78164853 299988773 939882901 601643575 351341638 896622067 195329002 570058853 179467431 622242725 586803932 196626146 907228205 855800370 311882044 490867139 908027496 203051043 676378543 944249666 590744747 435364802 243660191 338060060 205428106 875527401 607373388 155679041 495483718 902023960 491303116 640988124 734717012 605781198 881506193 93164894 574326349 380657313 150249767 775718254 397660943 75783126 251801927 1904723 618387333 516911422 322854180 998582998 777039431 784790144 200097448 561958192 67899074 10710376 449062090 377483017 451675172 371538064 843992117 487600125 612853394 135682559 968085540 930438002 699701958 150752908 721868146 556884591 138021222 927537923 651393839 902060554 549981429 462235037 433197159 430235597 173311033 613490395 369407196 231045319 439016840 871287975 10566078 969945532 224697129 642384152 907628366 496404926 862834426 998586955 940070935 294114320 767389914 436563516 356475861 33861439 220669020 506212934 265669492 365406697 453048465 685057957 731543521 481265148 737583077 184698884 785006223 665046790 183193615 812127626 454310421 292085212 432631300 303872615 509972715 34333665 328928228 559195360 990372162 808528927 10870325 226026381 542571760 653500098 775724741 590926009 225257468 469696997 13038976 750252413 244804310 216868185 710799879 866373829 759379605 45953604 900323589 780160793 524693959 674456624 817420856 131935505 33065134 774540695 821850921 465577858 648341176 434443040 387349124 829698125 838266805 158101349 967413087 479867312 49269642 220518583 450459790 622678862 583189282 177609080 158422325 321088084 388813031 404937456 136900510 271444290 925196070 151098033 871829687 463632918 218148551 209758490 163002227 728496181 324556558 343419810 886312945 258802533 358256951 430781240 113398065 192894581 378110415 306701949 26922500 691906081 527804732 169796575 765646348 342357313 746889266 97327973 794900127 736448841 150704363 605781774 575339203 89657040 53953500 242902001 678059794 239589787 703719869 596319761 942598408 839271188 230075844 882184798 600838655 608345070 750750909 513067110 350434933 417641407 914149202 240930035 485073439 512174714 823673013 138518107 68176215 509096345 845467905 586507692 315415877 589973921 45322171 700734293 308593166 646810223 528564196 980330925 81170199 626401198 70576351 294496155 247204456 226909508 201323521 933312091 943245554 665055910 596149362 523303030 306466021 949280624 33047101 60024262 601453563 978272075 524950615 796556512 814999678 29658347 913953224 677545298 611176462 348883119 696736528 526447021 329498862 498503170 886713544 384996078 210311073 490996805 776125142 86631862 314293640 267260329 486530322 650743114 428844087 442165729 620640119 506490287 949879173 757846787 389342439 886544385 373294104 935188355 844743035 6301193 641461946 986661214 140223021 909255750 117228293 977124029 518153395 974329619 819382191 444128621 748348277 315049155 26305808 21690794 947292833 937595932 421271079 480274223 164817179 130000897 427587473 728625295 329116929 377512001 230204358 578383944 80599294 422660869 710168286 791777769 64949063 807058267 52397192 611612904 488248166 865597467 840077786 433420228 395364193 274751962 88147625 164074116 693500941 743677022 957553351 586571722 197872001 186437133 848593053 383164925 797726741 406764801 942728873 25507288 623766249 292357311 773922421 451124491 257649725 773243521 332157873 936379892 644703093 422513157 559890772 267467190 529853097 315827088 923776300 676978942 131352917 838781694 868787658 648434363 973997683 652399336 212794953 60959203 492683120 254556173 915823772 656917452 675132495 584295870 965237259 905774466 861762668 361579809 929559641 597864645 748136921 343242320 580610113 635895471 323047831 250237549 493674536 813076528 676992394 927987894 589495917 709349878 355738800 344322091 399623468 175303852 109376460 250350155 273961803 657837175 222622335 358772529 580361616 405312135 435090322 75720439 164409883 535961326 912329242 408313470 334434154 375960292 49769420 664979203 173249578 55306554 757194879 85835622 249784019 120248982 192449107 161124361 273805009 248351133 531361436 798764579 585520726 241830686 280805465 313552280 130206531 209638235 146655462 140309841 280565698 104749112 60452677 792023373 509750443 999579393 282955547 146778331 384231714 961772254 834111407 954889254 148680343 225726491 883801856 116654152 538975756 369226917 155552196 678245403 268170414 995469554 228116512 288661927 909598733 841679632 47205756 579864868 734387961 256378152 537194698 825194204 907281477 227213850 775491894 568403984 998396007 233067449 895454915 567948623 753176599 152749541 976199815 945467217 275723695 575570984 427267491 952546960 353929791 538238909 237572294 930059009 106076364 757118091 272144056 513014071 902926130 304713073 710761532 936345194 421626511 530583040 706469308 784716951 356654761 111817970 609175295 144895117 429359347 270913162 567266080 209431324 868262109 64387249 694844711 773338868 270065518 829182317 842508847 887047303 678539250 652402932 713111494 33885877 249102166 2348728 402224577 919281483 439242048 624357749 347108749 320712692 337380790 653553977 386753319 690275049 497454172 380390610 969316203 53591323 305718727 251029090 602986526 900844456 720185608 328862601 282172802 996183007 922590907 363237552 620113576 342400898 174109767 605511611 461943792 974382062 551873222 168182157 382152861 57225220 402264928 301940433 4940421 590921336 547974675 928774097 294453834 28161531 981586392 385441210 809747830 939907583 23580381 336950433 846961598 789535179 751847597 681097870 18386299 148569490 343084973 944150703 53902715 34287303 252590538 676397697 712942584 740605431 344691499 811910014 684639104 10367353 257185431 909808819 836877592 306870830 431407847 665373830 611021066 268370096 174604160 376004356 879882 422754065 475097855 898425484 597741721 320809074 296035798 162051166 422266812 459259199 135142969 489440032 763218154 661464963 242264936 239372766 566429913 194956550 713962651 888919560 451770119 205117197 819560768 331316834 115453884 632110535 727766573 892802757 67997041 384040265 897247337 761981825 502430339 484769048 241637637 28202684 236641895 416012413 196913514 520707028 801541143 117181097 593747162 556738448 307669670 761109518 64428771 636127879 857856822 731205541 188725274 522435505 413761451 372953176 568203199 402229191 548058799 198517232 138311560 173095508 432580374 554311596 572182941 496671059 664556283 433627598 118966421 621035578 436686446 249618600 40329549 749148970 604970694 246433440 32089544 658280921 944724974 993048172 237858852 604717608 109316712 378254 491259749 128980517 518088410 492842709 543588266 72874617 666173216 685526765 674607608 89550517 7395109 435377059 150521693 114662535 888934758 822092769 789004772 876957246 358732603 367645715 876440496 691472655 976920414 347475271 983803446 376212341 862347896 672625712 601615171 188275154 217559685 38513274 711515000 949034722 686112972 799548009 628160167 938655434 882159865 385189775 377364316 800843095 355589400 950930369 410019069 13685890 538023709 889267053 801655309 425957606 970407053 460088224 159708094 159906966 704489091 96913200 147677404 82937204 687293491 704989766 641981757 86164303 778756851 440331138 21354448 706545829 5095972 16358524 541642576 595582570 316520818 228283222 546264456 640599153 846728280 23640050 812617643 971095327 462849194 212729698 970236190 753425771 371291846 705327620 794445390 760410807 914681437 88314916 54482428 544776548 187927957 532225390 197073333 557588223 993649876 417113978 360633693 121393097 448009551 31614978 453577350 788676306 605844606 764537854 159182663 182707623 354387332 34266591 494168231 684320138 875451853 458719665 177643291 812724845 951090481 611086747 825519152 437055116 214920158 775050675 726507806 6259120 270872812 40135329 433375477 556057787 470903329 417706205 376536408 366206208 364268205 578773281 604481247 2352272 199793850 427832040 189155346 749069722 788081280 239522101 462611877 577662682 19277237 767262219 260584341 805717882 488369124 175219698 258354509 302274406 8109199 722306149 768869555 904673289 721090855 786829283 365827378 965233712 210989472 214350728 294627496 140807236 596997190 465145519 462646858 373519623 763641695 498223709 862828909 525266625 910610503 438561633 698595967 609308038 866407859 211587746 539420923 588420093 281669280 993676861 302757501 868085958 15254660 112353507 769990251 221368922 456231591 60965167 585970220 295372886 414195335 748779577 240749405 954266671 618228395 847004767 327103793 582040647 784190933 468729688 318069300 860934574 349480816 344718908 496259338 558516322 175196837 464713031 822155462 45210970 621048390 923184685 501399608 484471467 733582734 189946049 125896764 592862101 8564371 156913893 924633059 135854138 934237649 591752651 424786531 701235259 452335379 864188343 447153576 187406971 442492163 159270234 784126578 422698596 409595264 602398331 135587446 753445537 63515766 723907293 53574510 70908453 790130169 14899450 213174205 943847194 913036698 311399932 782242888 749278544 480153369 239167264 405622722 542693072 870037874 605076022 99071619 326560448 102444964 287550410 929635760 897133041 288285533 235360954 760204842 595681530 203975170 900657884 609989223 109500518 125601511 257972188 600690410 885316321 330722621 337857525 861885536 670602252 816330155 279545417 12031560 391058911 250332231 391961236 706170015 661599355 286347849 428194103 723503064 987349664 519544619 2104224 227030864 926705986 537200083 119366088 158360755 649950372 126263868 713780955 934710761 32821797 599893380 96405290 275587105 567966903 533217462 364191913 654456138 533394496 672170359 766059553 47194106 442426757 631708616 718534800 502037923 438415429 676462495 334041317 629012194 205484242 138885864 912627562 72683073 115614931 394794812 901060318 256983546 792527770 722843348 649258649 551939875 979143362 490986248 493713512 749472548 810238884 456596099 520888886 954051597 89219051 497741037 871958934 722567226 16138539 876357710 91131212 923313090 573503972 770890164 867998435 625329114 762671998 223245773 546106246 544421973 789642327 441351144 539194600 552477805 683335893 506429208 963271671 993851815 909950048 322295993 70139380 994475997 939352252 64197027 45186265 611044637 382191582 925176671 734456283 314846389 611518175 533107897 858838578 157666840 48114284 815089868 362201437 239968807 889775620 491154835 543071008 792862664 15265038 287695747 430966763 676380600 178728025 224740095 986956294 6710730 791670584 114957915 921342438 597018076 600608748 723213016 245565907 543514037 519850156 134488711 894071427 601734567 207817790 647116062 260674830 81361099 452020707 152600115 275327413 575291910 618054587 294253483 370484401 141841962 554221723 494494192 839128850 127291423 336233087 88361233 152634014 610468182 701885867 588275218 911038107 729426350 873662858 409432688 426577762 114784234 148563060 569596468 537094812 506610675 375562313 808221772 521123226 392327688 473074546 645830838 973914139 95928019 70079067 28836332 227797811 737983276 301986237 997849340 540192958 708498114 604515526 477887433 720602698 217758295 774950307 649365183 144620576 218693348 157905085 400119494 702952481 570417958 804740733 456533174 530916724 130624879 332192601 502435166 332191519 720213845 367445610 853329962 256669864 568351469 478738502 995419332 155939594 582610185 919862723 908390559 583320340 273870993 814607226 816251435 768100194 306704510 764841038 819600756 511096613 762704173 325547416 22563951 315843778 360774016 532846701 122924074 851466280 581439374 846487446 649091791 782590907 976596747 380199940 907216263 541655168 673541776 368163689 635069564 358543808 166895543 416062141 144697861 376097654 552280553 342362393 737190770 141636997 337223499 124524487 97959251 990351895 722222766 740300247 508636243 78372996 107818201 420681832 659247199 907950052 254167039 460111667 832587642 342588244 446381910 621403611 307433942 721471335 803504716 936225274 130819571 979156602 633288963 257740128 181584279 153113508 202874655 293071259 929619519 736723998 944340715 803204998 783113570 706735742 825920167 571679894 959570518 198839480 858706886 862763249 422835346 795528201 10512906 437710470 811577413 502872429 884096217 6757691 393774796 125352269 849147207 585856521 427765106 490987559 553269032 324872900 775344457 287727807 717328299 765048889 310749902 855164254 753360382 869953630 466294817 84414871 565807991 293628309 343120603 58046898 195652630 482851915 30467036 910817242 477908354 551338707 294520192 353544351 702640493 55869964 735173685 503415203 895664455 294039189 156500166 257884032 821308515 690061773 749303069 944720618 682494987 357172745 193387916 15502169 674314974 431161216 724321191 379997730 763894893 320841290 569690862 313516709 558030390 853520899 793394299 978121501 800391620 942510524 306274591 144699617 106396991 869704348 38849538 375544359 300275818 359358353 395513494 657071783 364103947 158592082 299660354 894854550 245086080 897970325 219069444 780045415 523753421 100899840 199602146 842542989 516508829 382952422 618102654 995055436 315880245 339947708 115795883 268834661 448941338 731414187 9768370 239121036 381115905 458670890 300066934 757488831 719393707 605083301 903555109 529234335 186001848 798942757 11264966 74796004 747573117 874421473 313355171 831873241 277693206 30174023 583931427 891551849 663599351 22941086 818647765 995759889 736930003 455992660 482473596 277722113 967702322 727500724 500402936 372787736 736710286 222416652 877633647 450081515 749240613 965500316 752518897 725283232 820527071 994044581 209583429 996266869 312620018 852566106 821657951 125685421 177131097 86518060 620207562 129295282 558297016 394894431 187132201 287337298 783777747 587786772 156927528 849594880 167331099 107221366 601121125 464964525 150262675 471297486 933523202 761133840 95169555 357663389 680013583 533163729 320375612 820328765 686160436 209514750 455711752 58670703 59578618 272838908 953490247 352977355 426866545 362210845 361001244 168277645 822547987 121249551 306455957 428093789 795801442 367694470 414580765 253678512 324578372 874056278 803409345 869806029 466875052 706158413 28208787 861413159 989256035 976233267 436797762 596192163 414981368 587577327 273936894 771427865 245590520 392574744 989564321 501539120 126351377 387236806 965535230 574539294 462483493 640134552 591222282 483666029 298870589 497806388 346155331 264283225 474377124 802286614 846611682 657969880 459129602 302002799 854004267 955520693 666791252 843514363 48064484 837467813 355764675 375484004 103837063 571792631 474953368 230043997 858127422 149510589 985472424 41165545 284347732 734959626 42017294 345961165 423609749 675511378 197945580 389706020 57612227 352384209 669667593 661995675 178083234 993645673 626573708 173886007 438338559 80266842 508378768 38428350 61627227 662835451 649815587 428396340 222291988 712359954 362536787 12189420 846819703 661210671 375658713 106730545 833125191 956550848 737477580 296730427 946149028 352765562 175078444 426830039 139237363 179710867 835938781 632231390 834358564 634789507 95293974 391939771 533470185 426706147 93206353 844802418 308534697 712026004 755100245 790176398 57489059 242313666 288879372 759153164 225063663 739199136 318728979 873159124 855223037 285446951 733161747 252609786 947411739 468929527 782796678 855983244 123100457 811122399 487772060 495680559 59532847 968136616 910013390 239467083 35738650 632539843 11813504 394904614 293228501 925386223 310317668 705985645 442025354 856295145 982444358 462630721 280600689 263234317 820393915 752398449 624823133 51647351 25110341 489622306 230932060 790026661 630979125 320326328 459265368 738119369 656751030 724626816 364500554 138803260 533378609 487957055 432559808 216747749 738719644 479261552 73995721 277107690 864563190 680796090 649565916 521693734 918042835 181046599 973199099 982636229 757118430 760933035 165954406 657709273 648698909 918275913 973675814 835086023 406712052 18900994 96139083 617360753 73532752 502405609 93402012 792885175 875756977 128077402 22764846 197177616 224289093 526344333 289987894 319940472 294068967 717079112 159145124 193770176 452209540 245413255 773125979 917673845 80561586 656971143 57991744 791258054 348666698 892597867 99165212 361071331 88218453 479603204 977642438 897622708 869764515 436111210 123603514 304413626 20516904 354376749 686067944 667780131 403417786 615077498 404711917 6015252 642762394 32225372 991446997 774728789 585567566 368019390 785036966 277469734 529224419 16851589 20931389 504443669 507538067 29141983 272458055 446418896 937660695 732220902 554584907 28045760 575631163 204800744 593365933 111640022 387118552 250153186 518125401 282904609 782743509 7645075 392860960 162131212 322322972 457907287 615709681 45524524 955601022 622747368 328295246 446667198 468948384 293494913 158911827 158988743 359010263 30438882 309635352 772823773 530545927 634527391 539536572 237909337 301263054 309015664 468531175 373156079 765325699 998149665 88803955 294954686 534612465 590260483 660881506 919611435 611649509 185003931 217031561 924557173 782640482 876685373 434112292 350666359 337552470 413770569 98157723 182721202 939648492 374037725 380606259 920778411 29531821 566279447 717824940 771932358 508290296 659321050 163527158 718898574 662820321 422367858 694679498 495324927 918384549 83951863 180684143 907684537 377877375 52520118 271945578 625019938 679014911 226182605 757648621 782930936 922450477 463697136 949497721 241066965 763145953 182531976 358027822 932813482 6457820 118800596 98959705 315415750 122276504 818407491 910441139 689134305 924242733 152639624 948635559 445438309 950370290 309665966 650196081 614365878 432790996 476583628 31505801 425244566 74076725 571064557 406936283 641162020 156140393 438173692 464955485 873378157 628964214 991336382 827179703 687320192 647176675 605358494 847382431 77630455 13960483 875711614 375369965 523182471 346268459 581612595 351054563 435878363 378256249 523489267 682053758 640407075 576313403 112615238 134127798 420639234 281506539 277132880 744536230 974053331 199988316 487706440 120020360 332644040 15590146 571685635 186040558 14459647 444523369 828580274 986559843 244013362 917856615 486826715 170096524 689772509 366074154 992055594 35560237 469034871 300235120 484138722 895181160 695332574 261850216 240966876 766202915 445946267 191348946 713566206 221115534 548795166 308692019 276721776 527939663 406343137 939983148 72565475 650056457 213039866 965124671 586175206 555726611 180211327 287199075 457359148 325836870 215345790 417810063 467720299 395642261 517406454 853801485 331541960 596514423 35913058 782833894 543766377 629570661 158961786 996226043 606036935 909190888 671836567 550574964 917581680 296447821 555324598 207777372 921543434 380173837 74149110 220347338 779892843 572583058 952799724 355145344 303750921 316116017 924100904 921139544 583076247 342049598 828718562 512409612 681833041 928013545 762275626 785703552 596767695 369595293 179477054 626123534 187320311 120925348 867284233 814201413 175629444 267295815 255620712 433951003 814787332 943797268 711647295 492320824 63397216 143010838 874417684 141633011 569222214 577090573 291487074 558976290 761052371 7698805 788576421 893570502 455577380 815397704 923692284 534732871 936959800 441052687 71864198 436886646 684156449 420911447 144996152 460147825 399453499 146535637 469561618 846600194 138856431 544407911 519471 930878580 758294782 290476999 642377812 519689603 357088979 861754714 822621234 187740194 515892125 115510758 589072929 779641084 97203277 133804080 621759918 273097327 350822476 218417545 142474751 608191762 914739277 543138383 42470425 446919251 57714897 919264168 530495302 113323385 807904178 611132029 116603106 983931119 778328796 167786744 708135412 512150358 568873376 640509957 6915364 645364424 142676784 563566103 496852290 455739529 794645149 251112491 710778105 165229809 850110759 728005036 426880110 132115933 338008164 768168197 234030107 812640782 378646995 559094457 406979726 246580755 649558042 268344924 551363516 864441837 351573892 922398791 43098823 288993866 621242110 796913932 397323126 656444967 29154759 954615615 568293416 946766508 832520293 248586031 872520922 127617997 545842163 868701390 262180142 427340576 604561350 476161479 692916480 962196000 997777915 119072571 624768869 716159765 582761909 372119324 969862109 511069934 14056234 733415291 355734484 344306984 278706184 916903612 684720060 603884828 842923438 798223649 576482343 549153861 733488456 588631473 639990212 955683880 102669154 107742653 605122234 152506544 242457657 150351008 677956176 341848637 698564145 174589739 631687201 119232038 662113121 509647595 211116039 60252546 778827973 294788344 313566614 539744406 891971211 53969852 583316847 608806430 903374810 54242704 910016371 358198418 519604146 538582743 66325125 389883686 143136228 359902487 872323777 470468716 424361981 819624070 107655165 704462100 821030694 836015537 355674237 983887425 72084122 768679414 477848210 824591613 470678620 888672802 41736948 170598605 552657868 392083156 541098025 684756226 921997433 100105890 136938153 90123228 912889344 54693374 794679321 596767859 278022769 499198599 327365408 686436636 699470926 67102407 132597317 585153267 356585126 942315095 155390446 905141269 659708579 593889283 867568357 238580 226991263 177564272 612015134 659310297 713761050 973150591 136886170 117239123 797900086 458373801 603466232 434196945 781209713 676101706 123231720 650252708 515254861 367142865 547310960 378483866 452178388 195501202 578060994 962613230 721050786 617944516 433243617 596860253 324904246 763688360 547907268 986372489 71987832 904400974 578172927 865698829 455716877 660015155 795435350 161733752 860455197 745831463 361870613 469384373 58295801 325856761 448766239 353771600 967775855 629770316 741278095 519411149 16110031 258982687 46687469 583751665 609946936 102075014 825528660 843245772 926410035 859800227 554708589 46460740 187360888 670737537 386710932 38625473 724301429 186836567 820102234 870106772 743557735 493311243 889407742 928872724 92265082 582817312 630852996 338986204 847286452 242530189 622368931 8886690 275843565 551438996 305664131 743867275 651317540 236514138 41447076 620637123 686073081 271126135 603873135 613772995 956249031 420614808 516131580 177030662 93904716 840184380 652201780 276977212 673940986 131152678 651803011 31442313 621076548 348932523 693580863 260737048 799315898 279358332 573876509 338216818 849917426 149545123 476986022 533008493 256808256 953838690 878032323 726071017 850625365 249052205 728228638 754577234 588952289 568682765 283767081 446192925 180643846 200938857 940041233 148298701 741988245 675731734 619494481 234341899 1299885 821518989 79295283 7101314 638809241 448375099 788677717 496188795 780595755 267296535 871970504 391053990 311309676 392064993 980885619 188945744 257192834 335344286 535802358 616708358 485148490 460796645 980397674 724193191 622772207 494053912 664982151 383955858 931895765 480069640 172206613 18987024 515351841 976469061 304206897 87725185 394434383 713583595 652123379 776896182 734621032 458422484 913604923 874130612 364673963 765342233 886606311 411683191 810548120 255781523 335491495 763250354 43229386 147959429 806141902 529373064 327436085 154791971 196510208 74826430 880833525 850936385 62525451 311602016 655698783 618811543 267111171 986033183 72577499 561724200 812005414 795573460 223248913 260784604 303294611 560094567 400093333 432498792 272328339 415488036 601739784 532575118 243423204 718459060 188873569 136778946 770223880 898129304 732086945 943635931 791548167 564738047 52162880 877743209 577722021 789878723 399509932 188392308 965113332 460870544 189547583 421281570 252967010 310837174 701866931 265496564 357930706 414221599 855285171 730921129 338790238 261561275 569868934 129158525 976391674 476207185 534783287 264544279 926485594 22511122 825696524 295840388 96857148 904083150 679121234 192700793 393335696 709029196 516133598 381722470 60952404 363759794 835193893 776974989 790499394 258716092 914013529 485002485 171983410 708200790 782288816 902045411 87828186 177558149 394725368 352918785 806757134 778444784 535554827 842004338 383145977 238458056 907827658 105013424 463374122 196953813 974402569 48555130 771812067 466597254 215001357 787579051 717575849 125067022 306696004 201973618 214326209 482616299 677833936 624436266 770045915 957563783 11705379 141920018 520922106 559398597 310476788 463172248 875940163 679529252 569131672 809447356 165513844 774292233 195129230 224128842 412250294 336211353 488562269 502775318 895125919 474635093 701947650 195238753 792664218 400275355 61286280 458422652 284290157 7336838 405313631 329947143 462761028 144531948 529178164 162755697 985662902 673695574 740603692 537081441 965248373 368044872 391748484 735973184 419580329 217544274 640071724 14256965 534468442 820351288 947249857 425863653 879346774 5517943 707361102 856376100 194166186 653505401 28019221 829280587 791673961 888336085 999177619 340757736 238898992 973686560 86512361 745829519 93747057 590139729 189872244 703928267 699378905 726478080 919310659 381886627 260316035 185613488 224279343 997941052 592488241 806813900 299779169 482852183 849109050 815277322 23857012 706607232 659651482 536326435 661176276 476998209 89136614 48176965 754684304 161067642 913909945 795193934 992875618 335166580 315835652 838255367 864853395 16137179 648123715 535597423 244316315 250638279 30696879 470121478 740451105 716407993 235791280 399030932 54471214 326588270 726184501 952601222 29773937 977337160 149111948 318912673 699366646 443122526 714012355 342928548 832495153 165987560 42510547 256576827 606164876 147795417 599926929 427378262 654392036 278137698 714395965 734958387 413484277 934534227 472925104 38902506 588034419 263191879 876533287 809727954 101682830 149615461 571414669 8916410 33915976 812953197 669986839 52622403 739892499 85710995 471818606 393053368 165123307 573064898 21564098 346144014 119552210 150441705 749983266 171178280 450052514 18069930 609637838 212111622 849635164 219797003 940879613 650990415 927945550 463816987 704711172 22125170 707606743 684528845 32374 964203088 697012268 330455252 264553189 816630363 771405089 581276914 211015961 581286402 943767436 101338022 859612451 638899418 886946700 151136560 901249037 201120760 522689004 68255306 532159496 288649290 944795472 206282201 37287377 93008391 124062754 612564166 11146713 251958658 637373828 87637668 919695383 432422449 256706416 462190781 42776853 991401838 458860567 974960315 796524320 920336858 879392375 896737936 12293840 598124515 375445224 416200085 369059310 691716912 709597368 721426000 245542514 851407670 782152275 311857077 549402014 485675977 409146088 688516724 188237822 931605042 489492809 837735203 328819900 521295539 364187719 683703323 321163892 490909270 440421967 709978351 773587890 571275958 431410151 287593540 871323289 701534611 684627713 955683035 381858960 581359357 607013204 444489317 932644846 422890189 618262331 787315218 648153191 165566810 680962566 364472014 214615859 144597726 109265080 113244922 501042531 63766622 304074283 432437835 300979584 133460519 110073555 788691168 147457963 412068283 967626692 32957182 142817919 157581396 240403530 481441585 133154194 187129138 332782513 500255933 311270311 582782601 190286629 210007386 533964228 797782274 339189065 287730180 586471130 466696878 992650181 427703047 106026069 113840546 278375710 38280480 308685319 270016692 279367461 781091900 305862329 919449463 463104580 875418665 816220140 709136927 415892222 130149416 984713388 340351412 290147221 573611155 90717600 569097440 686548581 961941728 32002726 64327450 666365758 378866727 599970528 787648988 188029691 214730474 178140986 214860575 621721474 336097333 681080196 887558113 281607159 253334833 526542837 793342497 442974551 443656655 261619858 990086032 944718402 343088818 209135545 724630694 293197 209170836 705792502 556182918 132503804 487660464 979845337 758137652 19882614 919139478 664691866 912271373 188421787 998016501 10826539 79418073 278705403 711400464 987993966 104108488 837188514 476603377 466385731 151898265 718564289 316452045 847825404 310814759 831301887 750384825 69066944 329647509 861029462 967270914 367946221 43866666 789559259 648807497 385157971 826537987 383464359 370221530 23611935 410168318 957680908 91360702 507832685 558911478 498605244 777177931 363856924 414704011 742611526 883143229 484886892 832987987 334864660 700149421 823453691 576780786 87076454 110912632 324918607 627971583 25460138 921288051 287185112 790142075 775894024 852491197 702465604 469924615 701760095 277084317 334454714 811404897 214582191 409398086 874889933 179498116 708828358 636243498 421461372 403101150 468359087 379029125 925908008 69186494 375632702 749920085 202463425 51179787 950163056 21317302 391915034 696625157 778103244 219491442 424038548 827061077 387446344 147699169 133887187 558023689 533413762 576079644 909736652 313168409 159399123 720309505 648478966 928032438 297224416 438313765 252652907 738902389 493728288 205608686 878712232 120594870 274799344 432199010 925796796 623916528 67565282 851266444 170735541 956777342 763963320 900152829 75410135 379456296 649308635 842461717 48960152 60805943 726744988 525779318 685809786 224285563 6831329 986816665 161507402 373297682 259989580 24918306 714439676 506703602 890293390 846858494 12840468 290463366 847565495 302137211 97764937 979230334 480443184 152847888 545654213 280891659 277057106 209237856 336233034 567219428 42125210 37837009 372516871 722898468 362680525 93340852 559358045 160232990 841644548 803416439 945330369 898372416 568807463 776789357 771226470 134245600 882730231 844703997 343801768 29098919 730872084 425251844 765129205 818993839 515996177 904753868 892257376 787853789 148394947 420170823 763604826 490379924 745007382 217569548 852596569 457233250 624720046 216677273 752541583 893516690 391132321 838058222 937726011 16147142 685459654 106407783 545621413 30041411 888468543 268353596 685389194 100949087 981157071 160436468 337107382 412898870 293245667 350391219 972136342 526541070 435685812 713504043 866399414 861957612 785509219 546772780 254940003 867546358 736761265 785863716 449566683 249060522 926879898 726019173 469744337 333776964 841373558 384128012 149019139 751513307 760726983 313386502 544432538 807810838 782287777 979574064 305241799 153085375 619572691 140028469 394480956 463880462 131026136 738981344 994943411 738409352 541147053 286824701 307977506 877329047 984978324 163460061 378062144 673130980 411456 917443828 519806662 863995043 72741720 434927155 728655903 204598085 104485631 420686131 158394042 511901245 351797806 711419553 829310514 648589539 335278487 280252600 934801959 837087864 275086041 375002998 466234970 802080968 875411044 384363032 473745624 795686018 757684003 275909343 418144187 295082229 686045232 851770858 244816684 372125674 251226313 8792167 449202186 226604248 597804679 78219213 417626109 609319757 888804858 827163210 839304267 916031217 214776870 418719251 729062234 137071345 955110732 770180410 113432110 759872155 242280304 742674539 883537515 540875840 128734529 728449702 999268943 16789681 39768982 492109860 763626618 566741743 474162056 217352664 102247393 518806571 948538357 156652819 843302294 869046573 535229454 596268472 110138320 35588489 988230926 281958561 71890361 349775496 603179031 190394168 143157674 515245010 122759651 659680781 864207563 932162301 344723247 745051784 96540688 104213323 830895766 789980673 19930033 526316184 109224898 31321501 296169786 823441016 828410290 591380615 242212725 402201759 793894484 523947944 308196019 673918427 344782479 250437932 329257202 386916109 81797914 350661299 855519176 96707219 787851927 356577095 648731837 350925250 182843909 361162772 60903416 272628126 940823106 878598945 635605342 737063695 433026727 713827593 585226827 524517547 539414863 469296519 352913337 636198976 600638904 774915078 365211069 841717144 317678694 432426386 525140302 732735224 106596807 404796437 455741407 783696660 435472728 93346060 146221572 857749092 663174288 73331233 85179217 798696185 555561023 247754469 440923717 523795353 90504198 35498661 231164159 788452154 40168625 337118430 390077902 376732218 935347485 334088418 433438221 420843724 6498445 414271759 539830126 763840833 535064953 798239473 234606963 283907945 778659871 453687609 334242673 217023535 540736281 861419625 545910772 738990785 610615132 457153985 996562406 346816309 213456216 367154417 507971973 906275269 658435579 146010342 211156069 731122696 700682728 927550250 383519744 221502295 768897137 569116041 903517055 917373891 530641305 893775228 896366332 398756348 956495025 187935703 158794680 788490573 524747530 82841162 851960153 392920812 798990772 53598264 676932772 448560882 63553497 996926391 522707130 461768781 384489294 356763238 487474440 838523819 895995775 506626289 699539794 620260930 348243752 687419713 663267430 227080078 616600911 630527742 789985251 932790474 412625736 189508539 985843422 745678596 936134917 457506298 191761996 327421452 979713222 713037437 48687323 524192781 72592400 678237299 396265336 236555620 717383443 907239288 87578247 581267361 343242577 214516680 309124224 506338746 291358773 691087772 664959637 232872397 328945459 417142245 421127123 829337908 336005338 702218288 128049024 225150616 374117642 496560767 672234867 591035235 590790934 696424241 613859688 750800618 343352941 657059899 890369905 391749393 257935935 820345780 704973352 591388624 119047636 971509616 473388645 956439267 407481408 531456361 554005384 342591663 421750677 449688215 1641337 430770157 935967768 720299337 614539525 425185529 9779236 921122724 218398598 93234757 537226939 872468072 234043999 812178572 30040681 132303227 26365920 54803007 790302013 470649768 867313806 377144333 211645973 635897277 507046419 503961401 822517599 235200547 407234895 359008683 695722890 609496089 601835516 9797936 2720334 149594099 777303612 349615650 542511614 698699333 223484998 897238972 272200325 652527842 89766919 629303039 489195643 24918629 85459959 570584083 860542609 828410513 854907995 20154727 96001572 846439124 672559874 122312708 276333617 461229732 508076671 288013047 774833883 39213146 640299115 34390838 652600268 760701378 48920810 330537593 350983961 139451607 651246441 465590668 362605351 796682400 206704108 218756747 485371339 327842601 231717402 456791616 747754052 942877759 820801167 560525866 247694652 137605482 969222492 572404038 485935561 329911800 932318749 165688912 658105713 519679831 999361206 187873281 607112810 281187973 603936042 200410753 445383642 905106009 483826900 487022369 883395758 450208893 405714605 261983349 747002790 699888387 65873855 369401747 89211930 296767566 492146369 118021329 819174032 385939618 32416436 741046400 323010093 910994334 212393497 640510694 648609733 755673076 247000204 241974292 523467610 7645830 363963973 957822894 875634752 819589635 639095066 284159029 480782411 479471464 542976070 254024097 398078653 106001382 695212343 675524005 993652346 621342349 425996 631364970 725383454 698856650 106767062 149667652 444114654 449381556 11183578 698833347 34313725 379983254 135765229 616051199 817879055 616448977 537929652 805843385 361618309 605796613 358850642 266681398 720905273 725083247 391044968 496802054 952031238 480124926 987301124 82382402 514954764 748996825 937454743 417886190 790195675 677384880 636468953 615181670 316305607 751018463 887440671 118477311 247305359 749905267 146706538 245484677 534778824 983636410 926794881 592247277 835136051 166405016 449081339 154504819 230863125 333140323 482890596 54476980 780223090 886416087 741907973 744672872 769626418 658110907 673950237 672837210 679674621 594825686 966746800 836988689 801204524 141657053 38565625 396910049 673701649 850633144 245998139 873891727 976734434 32483496 449383068 621875450 336689758 357457718 409564760 500368365 936942143 874638487 799121902 741623231 782913145 744541047 188898441 225777698 341510974 611716879 51594502 614318203 651956683 369182294 26457479 366775958 88801870 341992697 333489484 526851696 776057945 275823453 927429925 893564147 790345420 534737754 788648413 797236648 521533746 651739730 669922240 286264590 938634910 736823509 796545409 493756372 222136377 944315375 367072728 609326101 353148998 41130227 98157389 577183878 265422930 424080 550059749 624230628 603544002 609599524 650042952 150901272 824993730 52254666 208112601 149332427 10882033 492691438 659347920 739799128 961413292 341071581 732733352 155716111 801850806 131712928 26417839 982260129 936480604 296992505 27926200 22386679 538704865 532252656 60197679 185473606 91314364 357488282 364115095 451668662 81191548 609863638 460505950 447585735 279754443 763896842 85689976 46466523 700849967 724185264 154688562 653820933 876158641 162420616 469706057 226437408 557370793 944087247 231526656 537581539 639013368 64624169 807112100 406839930 204883836 912345742 302710416 220776498 228070769 727342429 406114605 489457878 627270583 963780775 155464475 732866060 187603935 652891176 695717520 307964236 695458600 175255229 355090522 609315178 53766181 924223987 605882432 687004468 238669830 283370786 190887364 63779923 44917194 208657611 72768668 931224139 570869684 696754632 263544347 301177953 470586888 301912451 99024522 348086448 881072554 680867518 988618724 530710200 85346682 581946051 146356933 382525590 245840457 657500502 702339347 262825617 152828339 234537034 568477354 213415370 824486688 115390839 927267438 745489992 353488802 901100492 585782511 20260726 945925395 378824535 988656190 809741043 336202198 952686632 522025698 2233047 387719848 195308032 829352480 791587169 25920870 499709650 666417070 206044365 358657199 662620111 571534725 306296897 986556236 965231074 155608131 823461183 823221869 924701917 514617585 948506614 611076907 62979086 98820786 140402674 539512521 714950781 713728702 149875031 16821874 681280826 540447130 847257469 471853179 817512395 618740583 691797944 589912421 836505088 26231514 973975548 393646720 367243140 617737646 44795422 747377503 44884629 652595485 689387761 998823792 562576948 576359812 414645422 916309684 714281130 445307086 718464904 578775581 798263257 836995359 64783481 515801538 725372587 557553925 849110323 508111635 258612405 956664926 59343726 580366315 10748824 154526487 54739442 227563128 945575538 965358764 490747590 926565880 384305065 855325196 933053492 498545787 513681893 507538834 430241456 944254626 51993335 995850511 742648789 123316135 380490935 989207504 3727743 438846167 267870801 704597145 269493481 486340154 538209264 543857726 937502697 449472356 511522972 573714202 946161448 437455282 582664791 453220038 895988304 534184291 148007850 716367360 97048295 141713447 992458721 641328385 122595271 147442846 974807096 14232262 382002100 95535643 276976488 315390515 616689497 955680407 842020251 744062784 681572955 959145712 790324053 68187965 2263783 716604728 746084927 602492200 5255433 59196073 137899011 598401591 20310478 97449681 219317502 962927355 50294762 542375309 698600683 350978194 844252057 169133974 861533976 878983735 509159858 689095699 882825758 332810240 378787071 309944389 814578154 34180091 82382669 593592168 27639130 241745560 627793305 219793324 910438961 384371288 873942070 447385523 637311218 878117808 488750709 875569785 826478887 770921673 169757754 739161421 466103827 557411516 893928934 334653010 363273704 42820311 849170964 667174756 669746827 668918508 57432981 52557673 796025047 215938502 586065057 911382295 616118442 608392560 930617778 96192900 113166031 759847856 232105878 864251700 522358269 730378660 244662666 747664567 224441782 18535820 904051157 682327096 14087543 606082163 412445002 152248346 841190033 397274157 719374270 167029585 535842949 522766762 4065341 441171670 234184706 918991553 245962270 646719258 182303613 143276902 291731486 618834241 177021186 994406624 578397158 131728073 8479912 577712978 427511577 31501776 671372868 407180030 181140579 572847343 716050513 663225495 720636639 938173864 457397583 522440574 542166696 938135689 445957900 168552175 502455699 180501591 72826819 287451752 217586921 671012543 363802859 834390513 648719498 98358077 274414283 466620647 905005380 3670802 99026737 307320963 10471523 315984990 916606928 259309393 230554519 819642342 83228953 924497202 271172516 142332519 691472951 139203919 114697571 248785841 30312261 863459585 203043564 462068721 991106463 478871919 848627167 691830656 767845503 498766695 466099848 946210932 945239452 811325794 49296999 952132902 653506658 68804365 852982774 473270950 467471389 505182759 216176995 236068749 169911094 647734383 424039318 567947754 722105698 796554382 674756872 676447470 869765185 535731499 968451222 971994660 163300700 447741295 574003574 573708272 431006746 705129451 473423278 432872752 843250788 666933888 576414597 363915516 954181412 915541052 163586225 12217999 681136318 140043223 579870677 10657796 683092883 536357191 761846667 42529640 127230183 98272373 82876438 913227263 564180812 65760989 599033969 903238599 313724163 988277537 526834599 640997718 349501240 447036161 861608515 525511239 293019549 12892145 430536719 207089235 138706107 966808249 999360620 611463808 26784219 542658781 438966959 700915346 130091207 375577110 765082071 121664032 385881002 205721414 722313240 846992692 22796353 421041585 189142690 612990873 407491449 564046763 488926842 436246527 104812820 199272153 754482877 52071741 644439973 68457321 863149362 52782510 264384265 813854547 977600348 25090763 99176371 84415405 459255787 913747422 923544880 706562736 785421469 147222043 753087671 774219964 929993960 698166798 832210535 785799142 193765323 279826637 627149042 166231641 985463053 912605543 702467990 111953765 809625077 575294473 760712271 920467702 227812099 409469629 694683437 221150885 936474718 422773494 474960364 369574042 732870081 515943906 607311510 416524126 463282931 42973657 578109320 566729269 596876231 326391222 500176165 280318435 338361127 483267339 100252179 401855846 963798761 786795782 225622234 80435529 589223484 667699374 377503179 722190857 419177331 385500567 158835510 624738598 116887485 636535484 625102505 563360595 129863589 360727996 113832665 582958524 788730333 520478462 708696079 48682407 497759296 142231066 648825730 842183251 16832324 920599122 502745817 936880416 671015068 620621565 309440437 188256604 607798805 462679460 618433955 980004416 41458941 507506700 553072484 888913792 786321659 431470817 872780869 936076270 655134929 92377634 648487942 230091254 85687971 187862089 426763350 301745733 75717562 123525358 917372735 23886629 984674741 304223675 652796257 146406214 605312068 95653726 799789506 625135364 384821387 653617088 73237833 535108605 861415742 96849432 585506618 758451461 129934891 927715227 964274897 362170673 961679074 900731546 689258867 30066741 644583290 530165421 857759506 139156725 610689210 500195654 265780695 639219984 153502245 516498632 542884642 235749582 38478033 320735833 213203009 512476251 589336499 16569142 930687605 486265534 183742721 92680644 328522848 527245161 690783546 433145845 787776133 794926375 357562284 952559717 317962864 727607653 530895482 515779580 606266554 950059666 944245017 250990860 702701622 639166997 740386733 935800948 265420343 867371129 930016795 111322131 737116605 954658025 530603620 340860685 840069438 946421805 562658896 654384416 333840661 260758275 370909896 828989372 340379038 110854562 765601898 422389611 519539175 550893360 531864201 332183108 949135791 916880570 716699574 603771934 395311646 909753753 615502689 876545365 689750851 811769659 708221337 503906352 283970419 689777758 35259434 937805950 703470818 656064717 296599829 390048154 346128564 367761093 46780630 282317383 220898632 903072138 564436290 762654593 213660795 106400801 10710514 531956272 434274000 338250894 203226676 757346640 434063971 890692967 594070292 40135139 932037393 431807843 294744565 164873558 201131904 555659232 172808102 732072457 172861307 311132355 619296684 373624470 404101763 499858205 321982270 899116793 642985240 762816209 557993893 508527046 507896474 342451490 700981437 575136461 617138173 639459886 513704486 640810239 94888665 654237202 599476074 747606344 446533397 886274687 659679809 6062879 933579922 527388692 865773532 693021513 225696844 467133934 673959929 981984004 968856781 192651358 252651477 220101531 292335193 921360180 608737411 677580700 596028986 835922258 492248281 527449450 526228062 575625433 202837823 113968281 820177662 357466563 813064490 795989277 670674548 642167774 399251706 441706766 231034561 450785532 693473323 141852801 279891672 862405149 404284783 902288071 914525740 97048609 801000041 523382322 81652753 682989245 906754861 509880895 669674335 995777736 302734844 419044056 984860744 605636314 410338608 279797407 191123574 579294734 873621456 750617493 490059777 576670229 83522541 902408221 373522391 905175191 119610615 376778235 552739005 409370066 911646929 881899941 389600270 182405183 892526933 113355774 265562067 587876874 893316348 784228742 673996902 796209402 555632692 684570575 965768200 436865858 637404696 878701512 945067584 455418872 644605498 456166661 159409916 600327940 935668639 645200171 27654005 373978682 457270085 533286676 106457179 20589514 742209165 984600848 788487104 405854618 62925079 471009987 495191101 135824442 788117937 955255772 320914147 657695775 319643214 157522373 33076323 477397853 342186503 227270011 90892954 784198064 26839545 347610702 555999560 680291270 690886037 484206334 444684278 840474772 363972091 720517126 677292048 498437470 91752955 764530884 779188521 846475432 722667585 275351351 716851554 952889287 959718307 865769315 226920609 92999912 969365232 906867118 493759664 850470344 122128109 861828945 373704378 64700618 375341388 776285170 671903180 721645116 731856233 826242105 681182980 46434211 636137146 411793304 324961915 61527419 370008425 517298697 943076197 42388932 154315190 346787570 844062375 847809253 637306518 897359764 954249178 813771115 173924465 719737450 738486508 999065721 157972875 900777286 468053578 912417181 685266420 178691847 936401187 710855056 90706562 185243365 769138452 598629685 676183487 871309396 330734124 123945352 874764470 7494081 447488046 857915171 772447764 433251898 913930917 120782296 359422331 720012002 701363629 906360710 119339142 565262840 176389994 82914930 326227188 789723543 175607935 165379056 759894737 37717477 524153727 886958380 31807397 129822674 931973488 518234175 292097861 760896676 768586330 47217647 310526400 871710266 114214591 267550626 581844017 231869818 699511733 118001153 418261683 921752276 473633811 367136278 681673372 375979126 571258464 11348511 164126466 37073023 180354093 894460640 383061265 964748395 428763381 175322806 974545710 959371704 234140200 877149186 864911071 359786680 6730289 473115757 296721088 857255848 506815968 195619169 616802403 32480161 704965668 411370613 796746080 933474055 865652633 734486784 971875037 392359091 119361272 467049857 378651704 954509708 873467223 104538638 311476838 370125117 84111781 520511143 523905309 204737552 949048497 236959720 668325986 977544458 380358641 554212127 660361515 156654466 930134091 139027686 648615778 209031931 676333155 357245344 461367062 778337764 867518183 504383946 260085806 884557271 232519025 847081788 152135121 355769039 702652355 34655477 221616814 139394714 230548147 273916070 987378143 520557234 498973495 902702083 474666663 86238615 877692601 724706883 962899025 756348546 199368700 937491269 389589733 499163934 76184496 133995627 483327921 411316795 947675907 430605611 82908616 523993956 219376593 240515883 255175483 458341862 107457038 273898677 66435218 783708172 932778704 899424181 253180365 181279250 343944396 628829566 436935947 388052020 531274055 207755497 69208056 292159361 409365107 32347353 910204696 657275237 621898153 894431336 819285663 685280869 443577414 133678909 701767291 994656599 234829887 691479767 951515987 421025154 265165472 942262976 593089245 857468347 238229468 398316800 386350456 218110118 893695320 573809816 952014254 343553058 196289307 2527535 679093128 836012772 574627910 633333709 931178974 258844941 437838745 831775823 92304659 529319988 953454148 912754551 897462775 443419060 196149868 601267635 806203059 577407716 123013756 630863695 54737011 662299036 928376536 641683082 501407399 859602542 793106970 494439591 874950511 898215112 315112124 419490897 357145828 576184854 214084837 23074922 815698075 786841725 736238459 368452789 40365276 486115273 344867348 571233614 340488048 519603968 326547052 576667385 397534036 724577547 498716044 20369275 954255152 184750162 835566064 94491265 289926186 474768570 354666283 917125758 566684839 319619317 972399234 998044790 824717905 188855912 816337616 719657235 940664576 653178823 900400851 424751425 186874138 337142799 814248391 242154460 726675584 857433510 394219387 901045348 267819089 15516309 928155890 153899560 654451061 26259933 124162834 448075377 920700991 299749003 807093633 769770472 218782882 804221177 898715695 415054921 722315966 104087531 525559739 186525714 250905447 828031063 161379105 617402500 482554534 437353177 826474558 914649076 226247502 936202388 269880964 986120615 524885506 210992245 771018721 469726901 591962221 147929825 939603575 592598278 770011928 956896928 175133933 92179903 831732720 728821888 498576975 439752515 118258195 752940823 611402063 377167927 67992337 622207531 233396798 550614008 773265435 133452803 96125707 982558226 194981832 871208522 889038129 829537145 797042778 208013149 348344158 290406487 145169690 804238316 422083220 74775498 192725902 365519443 48692652 456400288 134268504 769437464 628081222 279839924 284581672 178776029 371574212 242771438 575474699 40148429 668505441 346880596 750823392 429913619 909620470 194917417 5823083 836355588 339336467 448442572 60579967 950628066 905555368 335420227 673334573 440180034 475361097 328039541 478556460 413325371 153695427 732108464 622235272 894617225 732943153 107677109 897670761 920429289 868760886 543918197 24252871 123824167 224542951 177553107 14959288 508388289 51039519 61968924 207379968 283344670 754314307 691240746 655298692 183921776 8164209 34641065 495406482 242870658 38600015 273318420 152982920 830352515 577413424 953827807 449504419 267177714 673153419 457194100 965625432 531687775 492563620 847042698 894887343 564336622 436474834 701371966 683500595 965910585 571141651 422635757 55913952 157354219 943657194 593338455 977362095 107115251 467534545 773966147 103471286 757231389 850517716 28691149 592419000 781680123 639396557 957708022 217995143 12431251 404371567 584172507 738577098 620610383 963427812 321710584 812659269 460538382 882767139 738091422 89935054 352054522 727151252 109138091 774970901 996027259 513396065 916752768 932849816 385712968 142449646 835530183 220294809 801535334 94476912 113161907 173219354 50287647 996594409 409511550 698509993 377621098 880869063 448437831 590384587 382967070 152737304 13848568 392090356 326735229 687753447 227521747 495178447 158742961 894829077 781477952 585028169 928467718 795783760 220228107 110549743 504529749 869530243 205316618 764378794 447485053 84353082 415371515 513597256 984850807 951859866 110063192 192043770 274156911 478769425 995857314 965312859 351698564 925519366 472943096 691131130 855960112 880283874 824869822 536294912 550788527 977989870 997466326 507388485 770476065 710888780 707775081 460602918 489977110 734532069 182040825 957408293 276398579 702250346 940279092 603984016 424447506 762212872 165839630 139724109 115029198 419951641 80415937 569112045 210907216 163230513 6171574 345993366 522264940 172412231 2836028 827369737 415366938 555875703 190262550 766626417 280343725 872137808 565798270 766917306 594871852 574502965 211814689 460290722 838778156 323903147 856608775 67593780 291270314 827591205 994797029 28382618 351938464 485602858 764861392 784974740 232153882 265370277 47899789 52843361 339339830 608357591 176773113 321088135 834856685 845342134 374459940 788315612 374744734 903647247 977540031 247980623 269114183 645181650 100928578 148821503 652795012 155258208 321815034 746972298 722706542 551782766 543536069 603942653 151487603 181968966 35405906 491815664 590790235 93983367 243281610 937936935 582557759 559875074 548630255 743703071 583192235 769947884 529035854 587511073 191148366 393853142 990478132 97796730 941850497 717744125 509876296 995801624 994736695 415577464 607813056 434291853 374189735 240863801 213942728 550997365 250552007 205063933 687199485 420564219 534793353 79172210 766949565 255544734 206502583 610068399 849551507 532132837 981264129 590810823 151073156 959858182 339622101 240799298 493503517 354160741 895248892 308632040 718805587 331272594 746030836 194980396 68998760 757973652 882609940 213426134 297940105 964350306 996413446 845954285 486814781 73126510 955019527 706958199 213232761 163949513 46504885 871684546 230395375 389133316 411467718 979900800 537576357 234468037 307238622 365781730 153743717 591959592 50865102 319206590 430022993 595120117 713962336 10797924 32676618 631528075 132350721 269851276 359415381 360826807 630391119 437272899 831275658 664409324 530313598 334933245 288098414 838091583 872228508 949209956 367823167 994854046 694063653 129935236 735745877 216183121 31899498 192382010 292155103 219708098 456626275 870378825 667641190 141119687 579379479 831019715 85320629 863856881 493157917 378959622 771008737 228646668 899714590 859637423 251633283 170344472 514897985 347887694 242728837 641667306 699198211 989251330 580811666 303406070 394352454 855628537 787528132 564750106 615673677 691893480 364156953 407700504 672469121 453462884 519967525 44973663 139127458 769019848 810637970 792165787 574525735 13539325 837887483 338857558 198551718 99059032 394918556 412515897 759046244 452953070 211282530 64560117 838183055 624887874 204203775 595509229 595136210 570294025 546596149 691413166 295173954 171286087 692620583 274554728 312305508 63525173 140285278 903702134 530977826 429024846 389444373 938390594 868976186 790871567 485995988 354824012 829029320 988211832 131165410 124831128 104150630 978284695 229299445 817106935 31961200 233426256 354820502 604980064 388417062 119179482 14724112 511337738 716421902 41860838 289143057 285094061 687813446 757003028 895104473 123171174 830242461 30455027 286920933 605746890 838226941 361379545 686354994 820736970 474494437 109164169 530708505 60970469 524051684 918909486 124582190 320197717 932512662 728388695 761200953 4266610 389706065 277029470 361459224 722312674 606505470 809905884 564214232 187596469 345747944 83772743 484695982 753846606 647953973 143907679 806365560 235082569 330929243 620441217 612590104 702580149 819793579 263405992 925082593 171953426 892905159 936238138 171659807 771585303 620796107 93588086 861496069 927037527 382085845 544606404 247435217 470032454 748370306 431082404 65523893 564492033 11354017 271517294 118847348 257813438 847684108 705506599 550908262 438997943 189344578 984281621 586191494 140885444 526875437 401633580 45993855 690314234 785420383 578675772 535337517 212858509 752159854 972876423 112699812 523142655 793253412 936565438 142763079 737242731 35037778 812280040 731939451 197873211 15234155 137737136 798618943 538362997 908421589 624274521 317902240 446694556 934544876 278861747 510814155 816936451 873717245 163202665 459018640 35523071 470720290 442807745 994586274 92507351 578008546 512699834 830390078 495166350 998491598 86907026 622839566 654390520 472352878 212126698 691477807 665864624 158026091 614305984 404958227 628277125 908852812 210299650 482355520 17439274 547852036 274375272 941521797 774949633 277913117 73375475 204916248 705682967 602136389 725792067 653103222 886467849 704422397 652224979 345595708 40179793 802818186 211614662 926723401 95692329 638161337 189723876 580025915 828789331 248165233 540180334 616062862 410935398 632086863 17862234 518522664 364904291 571209862 241904087 901647511 856800461 889928063 404794554 574870476 103312612 141643016 929904275 290401877 836401669 699103720 509704739 817032408 883952867 338095079 177292978 128508020 952969891 542905993 138901697 463748414 1057424 759188275 706464053 696372936 331421411 913877703 554152606 829764705 748158931 621161288 8875422 252111277 685878222 627885664 324374539 50972850 800745800 634932156 765330538 993637344 500363584 730243312 285812858 268668479 448699561 508362971 321202359 754910923 999632159 420134084 587354919 876805100 999310314 639189255 31678321 566298240 841309815 120600129 463940555 201166668 87078156 263227220 206785890 387624608 834349860 849105747 649015511 117827051 665987838 320371593 62538282 333482061 464479279 145510403 529805204 627050674 790387256 850136047 810209598 478058377 454372015 877406168 242097320 623554118 287255893 687120069 772731188 333057677 598121681 207610988 224329175 256146547 378571528 286801444 930557388 758823807 212877042 864834841 678880363 388459205 270266536 514523128 457934082 572372988 362891370 475652 628134250 311990051 126192283 415307067 359237011 654791113 775722507 405800325 832859936 793334 157106488 293272341 631213314 724348015 578329779 445616919 909569596 863400481 560383489 417404257 433141018 121143149 242083166 951971902 588715082 590233586 724027643 440097635 425987138 116707523 921218967 559317436 812909093 278994139 757845011 300111897 912685381 433717604 779325239 664566317 221385147 908895023 952697688 170209949 346476373 476128598 746995673 220882733 241350004 196507347 162624879 407956628 107345286 439056977 500423246 674416990 270915347 229890644 563525431 408782021 910356937 121191914 917290544 786430377 147716900 309879188 815317454 983772358 105181817 668222283 985155156 700317231 328243074 986454103 559857774 885876739 682175938 836167455 742062465 259709288 159777013 546736203 830482014 156444517 964207972 933164797 965076691 153401402 643880238 967157623 835661512 980524469 410546968 471307027 947380166 294011514 965247035 608322452 88343895 32675184 841417204 861845196 34410956 120788662 624686082 315560569 827591257 286049132 15598295 513352432 350610106 331739268 412792425 829982346 897464527 792086730 61252619 619588719 779118478 213170335 522132248 62651374 629943393 612311778 230471958 373692556 285806431 607675737 741765949 242838612 420159396 803407947 637141193 348752508 253423509 636954235 883799155 823910023 892543336 736679706 779037956 176582571 819445611 446478482 808913642 122351406 437932722 996593634 165835894 845407636 783176063 457931228 215435131 544566394 494653465 351955802 939265708 596765627 803532864 119148267 507687890 377938992 616852494 939112263 973006561 137982233 10429959 259606861 986420395 649436456 531209241 698713969 667467201 630523920 894239529 45402305 535408383 338078513 605494444 191017367 694603416 487866603 655851508 790787381 256310795 895659949 70844653 753881505 287163403 346734648 412595128 535952413 454587505 334547559 550791154 363283857 575899474 849302711 76790885 375975454 644334814 283818374 977430682 850681080 379535616 783779474 903671487 447320334 576488481 391861436 846754472 32224994 865186190 419933656 629450713 822468056 35520031 888609935 471243353 978775655 745044698 328376925 685079399 50334099 719021498 38295351 287110678 697390537 947998270 276455238 292695905 320008722 473205541 499541171 993150519 193328904 502315773 806901035 950930828 938897323 584604724 706248224 677281813 761422339 525213051 483967679 510652684 911222481 492764944 885756681 149096066 976385601 447821022 519918588 155398032 761896206 247694056 406583746 960694980 332955905 380189861 581165388 702387732 314795061 70851225 815875540 101080940 10992673 796113415 12514448 952189803 616570638 132735676 733228925 817527016 958328390 562159921 436766413 525301090 345556855 199501138 282590916 789174843 128978612 780102591 353565069 427165429 168995389 585481670 469780040 432934348 656247134 431224827 925359821 215213045 29333729 694076019 209707791 314366913 316869685 968769746 312953483 610517417 260387564 760445380 341870368 636556119 254092206 22674810 222404769 735626326 241073648 372112441 581954056 277306260 692293495 863847957 559355215 871574931 669208500 801166444 574208397 606728718 659034842 696521788 227607193 188178010 737638372 447390370 512092499 364599625 957894242 260093638 884153019 985074059 548722131 328209260 925187733 702688126 163299402 526630232 700599203 69109390 497667091 631799223 164625016 605792641 568062245 377978827 677473527 255686643 65145181 150573557 936232932 183927777 812880172 775671578 159276463 164831231 266926502 503200087 441555102 919829012 32055775 883930595 535238221 515832190 149699205 298322810 350208914 674560408 834155091 317925586 95212045 509710857 249482591 686422935 183679511 248351723 583739611 968649125 676562753 108571001 631575207 725984412 495299551 446284630 118368250 571511469 315697938 536554509 585435550 682848589 931670354 324228130 177346110 271955304 271283800 269395520 423808820 420557670 774081954 206398197 917304838 526175403 948157395 108990792 457719163 560124584 602539156 92591288 186289510 243622658 175723573 944185915 413415337 819652057 274185672 999383289 738958207 939388394 156888190 815946981 492459521 695001503 800423441 830069873 491870616 234737515 446219557 494441138 468754759 197594211 506997860 401509582 57864778 622922414 203512372 47372246 987337887 542631561 987745268 935604853 727020904 763139116 730593855 327898294 740639694 660807462 909569767 105809292 225882644 778859001 496952061 542276328 621336771 458536091 663068280 134248515 172744583 675264741 689982709 263639898 459030552 787812831 611614409 163983296 644489707 121347789 337089040 83734748 532097670 792127066 427255105 936955109 53788705 970000460 534839525 30387013 857596793 806679950 311903114 959347055 262441052 383782427 39396889 435110061 893732522 944824628 342884237 804089799 800145865 998851490 636942238 876734385 432163656 580718344 106618602 583661098 716123352 751029537 444748804 870147709 695466870 312061935 106983618 99853827 929123312 562545754 70626895 236767554 465424916 778369533 781259191 267445423 999342673 833190811 842809274 663708211 283544321 495517509 485315547 786367473 612269755 891404832 664295987 908321563 139490794 860197382 110412704 283180828 798659587 932562799 966563644 147542417 238131335 157922853 256153107 886270523 553908898 494163335 477880203 147826430 471573586 217016370 482681525 824133895 762637025 263098393 124083175 908378572 469249258 103300212 751592829 293534063 775869025 263834819 229076699 928720117 26687080 757876651 238058487 346307866 157015259 421596818 991814155 590715307 205481541 400079979 917668339 70911721 473862028 843924183 923750838 258120027 642662327 671134112 681785941 245303922 655615905 810492152 894628200 49724037 915598800 701719826 174719679 736767030 748350342 698538299 937879293 275432926 259304213 266781020 666679605 868121014 899705282 534611878 439340118 492349026 630858402 860373424 151619031 227267308 720197950 392064478 474216338 404088904 644314695 610176229 395774430 430730155 557508051 332020788 772483764 252819932 217486093 851352683 906665883 829334741 543659569 702289240 299038631 96486690 380375728 19477346 453670595 952318148 55249438 420608471 938508931 446793640 557279922 5986695 473873215 448296137 394088491 338706380 205396794 56120834 633900734 659200822 992527305 432645406 269191797 762705503 106876456 347078273 185843960 647070486 642876624 113328789 647949891 991952070 312865601 38927831 889526894 573426184 657984235 404456810 778332987 396424469 834351741 6582719 215495287 474484032 865746356 573867964 56171725 7951333 153889086 532570078 876792972 377134387 44308313 605050649 156806138 936214497 836909720 717946473 892341749 828689131 890426085 280165183 100491629 825204089 587766377 195259523 116812016 456587906 930034168 807091939 463027930 592126828 852299827 435188728 473972467 146621674 480057001 87115080 61714918 184492004 505915365 328634883 196054170 979785705 406799574 614893107 744794837 685420915 275029979 750611307 382032376 756757442 922796510 890698439 3929684 585870829 557679121 985770964 617752012 171771325 15091089 766588158 626481325 429383461 900177899 220484406 685170550 625712846 130287101 830223317 429615388 117327606 690711992 533068008 666976982 196844842 721954419 51796927 870716842 183186151 453613831 656954757 67998293 2697194 402212244 18195066 725397790 668220161 947690772 478225357 272713229 711969958 684728191 140170094 376768578 607494585 493406587 233360430 813055054 181376705 738033249 863517634 910552740 998978972 408455967 479978099 251295600 538256120 847433011 914501132 937199168 48024116 600405838 786415895 241307273 320388692 970928898 203750227 383502291 204449206 969103250 855017452 170294101 519038291 594849356 540435920 859011336 683350096 617112047 605128275 560824937 284336724 80771403 103421047 754404218 425393215 460818131 455401184 2924761 838054287 944735044 280255019 671097674 416970661 194341575 37775002 60247687 281531560 25479962 94154901 30789284 962942639 651305002 664338914 389366170 12540669 410516388 337317732 359289296 693519431 671837257 333017756 27794599 217936297 381911254 407081736 584563574 976744311 304532891 26629764 863845029 907980818 166788187 311764925 517601492 752077398 971255285 100589678 359906323 685703900 777696131 720687996 620219589 914537539 851861727 881473599 757573388 658870957 816341386 829910175 187876932 623313976 86808268 761478679 790996967 567264777 588379221 542113717 211931930 156377372 886154575 670952229 929506519 126992445 308058791 217353761 445517732 936554797 850189017 945714197 908414377 979039450 674771470 265142680 109352225 799451522 100942006 556064136 587249209 602138505 37415176 401246571 525905640 950593259 399390730 510150665 756350435 383793200 251436956 119311370 52595722 501879082 62333500 320762414 954401631 353481857 782904466 810576314 812009214 606006141 985675795 979142488 718866719 774730128 150899661 177848018 505103048 296543218 573690401 35080847 314163036 631250727 559387142 832730670 934897925 972224241 619512783 950510072 940188353 203867015 462721544 207306514 808523905 666625092 462077332 80343724 917090800 804647212 427145797 903717869 867805570 258986405 772332411 578651430 245903167 225579270 568300578 243317321 700465931 945323999 833519162 499644934 321030442 880224849 801757819 979421583 281713208 458330899 304466848 811367526 799465577 94040533 970366561 431639469 322816305 779693815 565935926 282629616 816087782 139244355 250877414 171262865 718843572 633908563 514130603 136748857 135198163 959224321 572755297 513294311 523926129 287713453 717339776 173581611 562746990 85583033 759223475 531796993 211719139 227596879 591550771 134554455 198263430 305176590 741791328 740877153 624342320 541378030 950823101 380750573 281009335 420374486 498644109 843467125 660946712 248314989 328307499 191906164 235969722 455796373 167926332 788024777 254160758 752785081 714010027 464142086 338640035 899420804 564525331 22819847 962390841 36366060 14716777 581250184 120105103 608545134 960069110 77423190 83062874 29978546 890161876 166016644 501754165 243908731 184665110 371310225 72491330 338213357 735901550 89397476 976766581 83825221 255416554 903483177 834453967 909868313 412446716 945015172 148378558 492576307 125139397 395868199 348584724 486178546 680267319 571740774 357688845 281253061 485130861 120813922 984035811 815962928 437032608 33166949 854068385 862497860 632952978 276663235 122337152 507339849 528848515 273302733 309002949 261666844 911780670 406477666 139005625 495445747 866108518 312525362 846785383 28920781 248555278 435831518 433083039 866295718 46237991 80095202 451648044 824903226 886947896 644914117 185079302 560933407 955344035 69289895 676360290 332643969 344319634 52543650 256631154 187907022 660139419 500466976 382819269 382965059 357296668 961629555 413339604 924408004 54621316 889604840 292372843 978215271 430878604 176270054 737409200 960102298 702443736 991059418 435266238 601075169 229659492 583685261 622254630 358230287 134007209 258504794 70028672 21270624 499229212 902388152 607567653 441779614 631425343 128300275 959895527 972972703 679857186 602448716 273150166 856530276 202588719 355546873 405252409 19113613 935985900 587760819 687282399 735718816 554820864 626818638 77090550 47642665 781831701 973661127 201929000 686080300 702178874 723697827 732162572 231834148 935699057 792671713 443377707 890952546 42535740 848794250 693210793 209054173 292090031 69338852 665219046 85209467 908984055 393484102 598986724 250433658 243035797 40941924 965584476 778701142 24876322 380663166 501662507 120421095 575043429 305797289 767130579 753306315 291522798 327304875 151970808 337642813 509549452 473183454 802630725 408283338 679461208 603522622 821311210 786242477 978173412 885458474 460851171 749308733 503226925 622833195 590107449 836007422 632591917 782857846 520244116 324195751 856547432 460434325 648815105 94764836 634654060 476832758 782688722 991603448 409605982 97119812 217488636 182426614 845859949 322271583 898099937 61934318 109544146 626589228 134455127 802134837 954403669 321475205 159090486 931582047 916422382 380066786 751232057 243908878 95457915 938679923 216825749 979500235 941948618 476066339 585020561 283986394 722913437 145794225 844948088 852359971 790509076 725943407 679469569 480667168 137241082 182595346 765028201 54948393 553229481 303743590 74291775 428616372 206323061 637331734 664227994 593746986 599415485 351987684 832988551 126155105 848923014 983848465 168886031 341498416 851910969 450042977 50732084 794829867 597234476 298114367 454501995 681945427 469356504 624140652 343371883 665047377 679058649 888580595 135175199 190200066 728098686 524260429 635715117 377352643 143876811 996193276 131620704 378052140 716954343 443642367 962500240 184683121 692928504 921007690 952992330 226640454 44289389 737172782 366320944 52056710 882365478 399896423 595332301 638284400 737277249 668133045 399505211 126010846 492490991 208383796 343236073 953025911 10933064 535852075 720012432 254175537 671078604 964366351 676225481 970610829 364915119 292293905 148626823 963457902 784466106 692031523 459588017 444521880 136349327 587714245 259969750 199287182 388779050 661958889 240080477 847147714 399555714 939341506 412325790 809916607 845337497 790299084 803884244 211026571 221631460 522089500 957982933 355454409 813662628 328795232 182055103 916932718 170327337 98069411 962659794 64849902 841380309 13867307 103356222 631762478 698353780 113274964 861654232 135237026 726240011 313852956 942700102 258609901 339174206 269987402 655237785 495412999 133680291 519442412 840357960 914588404 781070390 304950558 187973701 4738007 687615149 292224211 899365563 128312238 70576891 110427971 457832085 116505933 921873035 975085507 416383873 513934404 341426119 172860696 272883688 688565822 521511961 947094024 846520969 421231562 323852583 314268808 481997379 567258408 375187736 142137903 747234557 464452132 711253801 549441646 859595236 998724940 619406967 825646809 659974392 544996038 761518763 551084131 905898455 771494632 42574552 65105201 516226699 94524669 41406951 153799025 841685864 216091672 248157245 963038833 175316077 458269687 964788791 600677959 459274427 789902110 53510078 829524584 696397502 868423839 207893354 406029637 138054860 989577941 497085404 983220897 248906436 89451275 882090712 155457640 356934982 6959088 345291475 125827391 187422351 571089122 475560310 494298513 967198379 68403700 250410153 175172964 361118602 426688288 68412326 496965448 194245890 67340807 81764677 322451538 288611308 455169339 120049375 881168504 515698015 484466036 347147686 365161305 854111595 440428042 172113437 681328374 472370456 750559789 360445650 984307697 115155996 49406648 46356902 353477398 453388841 446229553 955988881 786806254 480307062 192686380 829975762 613309949 93454954 548932818 176749927 131594743 750252721 104074335 264558309 304516824 962465594 706918430 998795758 133484496 194401718 295159155 94926267 518808692 767448081 847797064 62927186 745480876 758947702 957743283 338836325 793283101 226053160 141916502 968942928 209140754 574352496 596423659 484478648 140081790 743524587 928382342 523260036 424199393 111183100 369132391 375855397 671959404 288140293 780890559 674322284 520573529 254797991 930970274 252888559 918446842 899994631 725268497 384376704 295771208 498724896 806678759 622978344 894949225 722898534 930751721 687875742 477891304 91009946 996218313 708084781 458386836 748751897 231312695 922305854 882653927 880970799 271686246 65318524 278729748 311451064 153644409 649162307 273635248 211325009 564382287 572444978 987991077 443152009 919969380 504340927 936908236 849600975 285581241 495589006 93279227 76492156 865563494 297206609 337912631 85312779 175571450 356187656 975940187 696649962 750309098 91036587 891305962 313905087 488155497 70712933 813588324 711120119 817532199 584126427 808633238 88526072 392212625 871539489 344522671 224501667 254201037 316431000 599224578 497504375 183655931 525726621 141190836 38845397 617234660 519590115 812184082 148661663 217791924 229220802 617405623 746698824 763517705 691659346 431850788 375982674 142806089 77163274 438824914 945672437 234766565 401684506 534540573 633450419 231680738 326135304 32936373 702694943 613714653 272146625 913042098 214335150 81009114 532194812 227316090 717031047 796808819 874188751 346101457 647536510 386870510 552570407 33520259 107989819 234385833 751113718 527848547 553732284 51362977 547646834 206909168 123129887 213430112 181080009 454604227 392120006 837829584 746864741 615643845 532570577 629587596 155965866 49170340 782699076 265042036 717769152 156777800 963717883 798345224 760422549 643924038 753267806 872590819 926457967 160859760 926695444 995759807 316288781 260317160 949811926 255175207 359441692 933570371 524267936 408667569 407413092 117346878 745190377 718845542 18044164 464756639 568082524 327304925 252093152 614626679 96039704 343231287 891256812 95990222 361179701 766392973 90395799 154157640 726872477 979431806 138086251 582875583 54477816 321014436 574527236 534721801 668255425 817948692 431477116 715581916 477416080 14171432 557823444 673569080 168941337 384505710 370120696 192429281 275504873 582642623 902413879 668349199 234833480 615260443 721476067 463122961 229269468 517129564 72573086 965666367 880302608 656349798 51405647 905136297 940613278 112354023 660755003 207011217 587145830 396725765 522455350 987913402 835139047 678094271 249891028 846449757 486718297 198312281 140707870 233354812 298789247 752553564 774827908 622023149 119841910 377772120 751941774 972072085 845182489 934096033 291085882 191921741 256930945 997940665 101019163 973761702 888749933 1760108 520284111 159538691 421841236 444480214 296224005 562475490 623495712 189879644 347876160 370657216 840513551 768542957 355963824 49566347 236711212 264795983 361539449 670062395 330605436 784848697 619008 698138460 381553204 51009139 895270841 9717582 335098369 461510597 523491572 458038310 566471831 138564708 374399493 929439818 390984545 333765378 902762642 879105364 57848035 212102082 212705749 409329529 85010734 247716791 486972230 791216280 433769190 506520697 578720733 192777332 302054677 746450522 94361408 799526584 891367378 180034216 674321671 638008448 934140910 764339500 191894060 409944689 520209338 479548517 514187676 798066083 892937546 47658256 670304203 177605246 495973340 814933833 739239181 495978569 288532806 211993682 68386526 464111797 236822062 460023501 431158431 790255116 986408794 891385300 135675517 274543005 693390355 377157776 661547573 971213834 996672461 211195165 695200785 302504710 698767510 733109638 254924235 78723004 628431596 677110134 502700856 564203961 772565786 885512557 315942001 195179269 777588976 873047081 606271853 227004181 348417664 218533016 929706720 238196117 280462751 110211121 422890561 991123481 517849721 809994247 98130138 816209442 79440070 311045145 315436642 640571313 668614443 727193877 199632633 906481685 695501605 466522720 755166169 165851496 483227238 17040091 668318437 399557260 904833396 782249058 897578848 577319851 889597026 206791357 866377085 148994781 249463683 315514599 583933508 177472273 689623894 237122787 811840272 561994262 951534334 301732471 259437991 644096151 155605182 589217611 198126405 802237126 136617912 840917044 889793780 329522640 969471222 563969708 298076264 363729076 508332243 604972595 7411350 293366066 158633551 226660253 750438495 14717623 388493185 662341606 503873007 119355967 499466295 527806608 733915212 854703836 426335900 412958662 861993523 379422171 430801591 320920664 983818948 291988264 250303903 13939174 462194540 362242978 330568579 263191001 4087045 563719381 296961989 244179712 739509628 846506647 44237943 926996661 449761977 329056356 224277548 124403087 463349179 508139642 253448703 717300169 724655332 765387463 871681163 132355035 181094889 618219267 922073611 687976623 529318503 296133440 912274789 369661145 707589417 407920239 90310462 243093215 611411975 905664031 872106069 973982334 849723805 803336769 171540716 747673376 16477390 160575735 189326717 77995711 416066668 460552981 704301742 951049697 431392380 376976757 899657226 906036132 795666891 14449208 921488262 422046336 738219768 425826549 80437003 633016251 974778092 306671570 296898709 562235142 488058959 999947447 518463835 590735415 9077492 261583940 435049979 753396133 470921128 458739004 72283517 293379411 441290414 511642841 169832419 198457584 321008871 578811898 111166992 400467870 143116853 138515737 727180762 828481977 860815184 349450434 890485474 657010662 666863882 900818989 995875462 407163675 877907249 702139008 41223323 943150606 335030605 648384009 738771684 425811629 221882208 41875895 181472012 357475977 509236195 768736180 19698016 160268442 584481830 225349243 108648002 889406578 321719550 142578562 682976860 966010039 632766423 323824018 50459623 344315359 615106034 635612251 449766399 243840381 518146863 423493320 594136258 33034110 718936051 192996598 893560477 773644805 403670094 405549525 210418458 719776835 11850072 203563071 337634282 977678763 100427990 285319595 710819246 124348827 340121876 947067631 937251953 857882603 769099344 353301534 594797839 683321102 720474201 17588476 680436138 494951243 419534685 36279667 479424767 636773238 121999978 688266659 854898487 28355853 194775280 715179134 807261928 217530305 514686308 326728440 665930566 154138751 767456911 341527038 241268602 357077408 302288184 523436702 169390597 971182354 467268544 25284592 735534400 255010225 659282489 777724596 199930803 718838231 816067219 566842698 971653232 74744079 368688874 147412220 671053022 136386338 952245858 38436593 361540019 485139287 121781838 411312463 9200813 660111629 671310582 744210359 633207842 887638876 104336418 462786462 523860065 160511554 504599517 904172393 685328140 734510414 77412473 956094448 608266823 111594610 474603380 612131224 499743851 215358479 322033783 96207375 471560419 680809302 322973937 388675986 979010168 9166798 508537292 88607059 753621556 407995589 255542905 392748135 588997737 441973115 121824913 180786013 101367287 340678851 685919807 413449302 840441137 826227446 489780614 640991609 490178469 18229847 336057341 774606077 530964793 599103737 189139906 468400770 387878736 475160889 193999898 233198721 913803332 90853767 774940535 599221293 790455764 887152942 387073798 49790628 560015719 60530541 698762776 882397204 179013634 246767505 996434563 814011761 198356686 180570702 469906535 814504175 427626803 176160514 262591738 664500336 462633199 120117284 890324194 617347077 602439494 309424442 52190588 343752902 46038343 2710086 146665933 739670133 398927951 928693058 481196323 970600710 114006728 692585290 240758950 674520080 793276323 18777492 634637546 377019996 241135966 61623611 871852734 275709909 574074927 203553102 955582278 495949240 436677565 744815704 285438117 354480183 240892212 88124354 275634795 931547489 833581243 595948803 151221773 550598684 880495790 294829163 55479868 623499592 942455872 877929829 321472184 715241118 218316023 523671738 676837607 145992875 767756162 973556605 485291670 955981174 611563529 663369165 813254329 157773033 817072175 778297677 211675087 70936477 47905196 663903298 742616391 248456728 951784838 42357022 816708064 249858332 553071769 425014167 407445815 880734177 144972703 884095646 946291613 483074176 47068391 912964800 91422572 777426287 67779690 743017708 432659911 847286388 739706287 412884762 761054411 543047741 114842869 578769851 125064956 149730577 602333945 224007852 988812984 160056306 968927867 59621258 612209809 943553062 767403649 495479186 132107839 283185031 107601548 121488730 151818711 631213251 360168601 603226304 527821505 929637041 716877858 163741024 515293727 289538378 490162294 917030543 303120148 264804412 732512198 575106426 713348663 304062235 753488037 644826125 517098620 226318975 316833147 44165062 94337861 29748902 297397329 644408981 467865817 276906077 667452934 746109066 62173718 381209208 655130289 91822450 91234687 739439763 598587500 19724188 297420413 433397030 5492434 482784885 863851098 77424358 368596380 985478170 183292288 698727934 126160520 915639425 867149307 541661416 589276039 850046075 630938556 388108278 656570920 888877358 61986330 335229444 603770576 387397361 124536107 856713723 324201580 122394934 749035466 17609007 49783743 987086509 299929720 477262373 932367057 433690607 664164273 721852303 600828396 1268557 270114502 62886277 985607333 276024668 390292946 326839203 185052167 414825643 821641467 124690680 893788287 451156531 4236915 697646621 494082905 354853324 110017600 131381878 136664151 651611878 110154964 56886328 827003251 611574069 775885263 304840085 212073268 317194692 436767502 38060120 50669479 749863237 864988683 742495386 987188710 971387814 706809774 470274814 274604124 897724446 511881608 485718414 282512491 445428098 357063994 53891307 947117223 592327064 26730360 866469468 71321274 125993297 172575152 62744956 510521389 487189640 24048805 45058447 240281738 263237316 910545072 593576365 100729022 570390618 840849618 692873855 879674975 197436051 494294907 207094133 876428286 826452500 480457893 329780479 268903514 540557068 479088108 886719353 430994646 870221596 641168810 78184076 411553549 370378386 415876385 652916958 567126491 661507142 979867775 469648374 358835138 269875238 949409116 390539321 178577340 128875519 264723899 577713653 923106196 712204968 423998396 876686511 496151082 654316269 827709454 438151125 442526360 945973279 85551702 215656336 746129744 416860367 124267111 696547141 89457872 467746597 87858204 734586211 583665501 589211620 902702078 613176673 453085351 704925528 599566427 79506380 585060559 749413149 449529718 715065579 154527554 743716266 567078937 883195946 300289987 78031771 542418084 530804379 686688455 959770704 608628827 649916526 56116733 328276552 987501135 157530600 292554091 445445251 767720193 345458367 703069186 223799307 215203395 921782723 309485095 365595856 213954065 933517811 395552955 326179914 14494670 780250937 317048349 164886091 911540858 771322094 740914017 400998319 664443037 968602483 955765968 322761690 990862204 168513340 733880068 171172425 429323910 948857918 190484388 390313189 951401635 369280196 830392787 72251523 941698638 310782135 93623860 699125138 905368434 426299194 195995801 51160205 876839248 189868987 89214477 575494031 293679549 803799460 586801587 182893383 980685795 681265721 577905375 43348024 312483639 947636797 369286966 567923086 971645574 680277181 790111719 728594534 873366777 800939160 285524857 494560483 838333376 309200287 777245304 175576638 979832380 621045356 970637095 358288758 593197729 53100407 124059251 587986412 495615396 115933641 774094113 723150775 468727960 685940112 649337782 92666388 317388802 891920605 523473542 205398094 893861949 243021950 35921730 958953501 243857080 669808499 455656224 822694474 605462205 711513721 841373121 891490618 605504736 808287519 579465985 259759128 19519918 505359476 735116811 513344080 868259294 223654746 980812943 663979993 735094778 166628247 835190612 58476326 824225586 185047856 36079361 834233768 141479695 677393111 817033788 946803941 771054459 193500259 222898876 899657563 736337497 261311408 938631006 389105740 947328565 655143342 61124241 874994324 699067551 350666046 552912514 485212063 907886184 311798875 17092274 437029948 651823229 619506032 422710707 642692587 362812274 982691763 912867226 914164913 487999685 852276949 62948156 421118432 631322814 494287795 800827253 866673022 43114172 501552439 172790489 361597221 872755158 976929316 105685944 348003803 590838639 906948651 911354329 307440985 998853442 599558414 302793495 903674353 560326151 863830906 969711850 637745371 843378732 41404990 489903023 893848627 397418220 821979240 976550127 463042763 414949307 928073226 461267578 306141810 487342920 600830404 18340565 813389461 132064629 259661745 247125557 468178561 600618585 473202042 918943375 637881462 354567471 420937775 188312327 478751571 36571079 287940931 77246344 820213899 344897164 208417577 810427757 82189134 771390262 122731324 198831394 155069194 665811673 606976572 523654892 719894513 102076183 899326143 730001010 687110526 575740843 993647159 330991309 813641226 609026550 359314195 554852753 324274589 100841732 166625651 308208975 429758791 302318529 348963671 309294593 171347104 664570443 580796119 521123516 196075460 710596722 479924890 161647040 161023824 813155293 152332831 223973935 381837265 301400994 302184628 616472449 986638744 740202683 445278228 310772047 293757485 532384841 864423192 431658180 266025627 350608579 474894151 164399426 176257890 248905245 86277570 136419777 609926725 447254091 147605855 728476698 520664081 330881883 984865186 132684052 914819170 20191997 761091769 510734390 968567858 554153176 913060844 486764147 999098078 70285302 699860038 702058003 978871781 295783468 311398958 485554550 767838444 490420111 408322031 10055463 906407402 115041615 786674225 145769982 175521953 25257168 49752203 761298744 905351222 718002480 124478086 269047860 384965431 677855145 774742670 264764031 70478861 310438185 906536276 307407646 758544366 573945580 544300980 55983771 841335007 981091072 481841071 531712406 111628220 19405875 188956068 487777775 452338762 294362873 396685831 896688187 323330535 741146042 784572425 87205668 140287556 393816011 644900498 790390025 355147532 755739880 832855677 89626076 343334118 58357302 737635174 601305890 97429174 269833309 776949738 302945689 925879855 975233919 995883056 710334057 62068483 799410834 494335573 858818520 902936708 294229601 455209753 112970426 873034018 267036458 387845084 890614895 661586374 768236784 124546486 272931826 866264097 268353216 649380709 444270792 203895767 98164311 46824177 174824216 723494281 626216187 698867871 917113319 210852943 975603707 465735515 867247189 885383688 834288327 736464408 951089095 427957101 737112303 312002607 828336762 980714970 766175264 969711887 256235497 375621306 970268871 169931017 205152370 248161128 662868760 572051064 636595673 59784399 626496690 772625984 88378526 939002199 331023286 331390765 274111026 26981945 995281851 470531325 192891190 145660392 611410933 3655063 719261289 24100981 461995026 424246313 237598226 534592123 78035661 615684046 333248051 169949555 631292330 108488946 644850505 663256488 312881785 404806266 614554245 525614887 524948061 199222095 811335658 400292857 324907787 755036047 917114978 776004604 322323367 41650520 999463565 202227870 853910010 177375465 261749249 588427332 760610916 253021467 298768713 343621217 885005241 825661531 227579154 111312157 130364736 105663518 75358112 649472922 887968429 339995038 217869074 123038265 881418226 18711223 829111639 301609782 797283545 323312956 591610838 861086767 603264817 369651614 175833930 495221524 203277770 952828287 796433946 604762402 465333225 964832503 348929365 234059693 916128345 723870922 792830321 961211935 175719306 401987590 99416489 415019176 907105497 177350949 153664472 501532299 848111386 249649714 991453847 246003329 592638769 562705610 128930355 903109957 388139616 442412236 148762756 111486111 842092929 960452490 377571529 73606194 558661813 586233888 383868172 905834209 643160800 797506680 108283936 622305548 998808004 452994211 437541179 533687186 251284359 155061463 662899652 889599998 692704449 188414981 474171288 815948613 538354351 857115683 559744301 804383060 489854586 19071162 425408487 664728477 338296404 265542248 686993899 69931042 85899725 963959689 489420460 517454406 562595943 912835643 693861770 78462642 816046809 373672018 267717912 152040075 961091206 384975635 597135356 859370838 347865343 111513879 869715507 393441898 878974125 656777158 232450027 107984599 884288858 852997228 761920443 382381163 157021997 559174266 410377416 318456073 414239007 135330248 181224795 169581053 99996667 279831388 752376783 605855335 188763795 672965126 790428361 647443296 210193198 531760568 942363894 666904304 697272307 157520360 908925386 905832963 91920682 936705907 83259922 928180768 222034596 703448974 79196901 538423684 459199747 431833604 189665529 925757061 602078206 417895647 38754727 1139157 536486282 578722117 274499826 708362628 812043240 587333552 927604650 374831944 844765904 999265751 974059433 169155281 415444759 720903938 201658949 378910776 957824158 32363497 925120483 756195996 133455008 479356744 110969184 872479474 617589756 808501443 109780877 476952860 252245923 798489493 925321838 940348400 834345310 634764047 327135388 941868149 861161075 221115373 947771418 490646876 896107185 531395855 956222462 758866917 880511636 748687495 216690996 852815801 36049976 134469652 985263058 598456738 155596788 675463531 775297508 206709477 831313230 10280194 38291249 108906480 466598166 616558542 944579769 386116097 2427499 571842708 28874378 531423600 176530224 73468935 233974526 30932191 760806055 319739831 268473512 202800763 419452945 170638630 100176979 354528737 434502449 867416387 571605215 597838135 433673 313415810 187048136 689694665 351573741 277525974 314812938 76641662 957394728 746745481 314753136 341176476 252635223 745399163 460887593 873074217 485700280 943884024 227164079 413250646 874578629 240953796 616748541 97590033 856926621 339433748 102882097 196794821 626243755 346058476 781284584 111791491 910039833 602994334 942247686 399365424 8143564 909305791 505396846 19925738 637955051 677868186 90742162 564116941 462238082 246883575 462537519 376563730 154963756 177669401 981670832 35289941 929251442 33364325 976320329 629686085 617906947 622071460 256042054 880735213 477901934 223857740 309663339 624355081 53895742 520166634 37381077 412572803 924337180 846194747 225677082 935548477 180914493 764928282 139033930 517541868 708733747 223021596 261268694 511422052 655967798 221514876 648168527 394217716 993477279 128489080 69504578 109495332 893499420 79118992 332641761 316939216 881765972 344262823 596432463 515350130 280614380 62003969 338721319 287361883 162798878 529633296 480536912 997025058 46450602 322054598 127269304 230237895 630129476 869068593 830197526 285277184 49858139 620135475 688059088 279877155 979013434 316440755 557524680 441013172 264539558 701945144 546549754 640482538 401633376 351283064 616872279 658777218 266403735 516253923 151678353 473634241 901348532 806293575 510079446 931834021 773528664 860095951 250762415 240682981 425753355 867828893 610278686 336066825 734893904 428778803 720376442 87523765 249335038 522014307 112807120 10592919 241110296 423296873 868880503 855597545 844788952 197813578 626325777 809903424 851621270 983719640 186884223 63335197 355540957 234768121 304508016 477630336 63561379 668816832 659186408 947560774 437450772 853091739 554732111 207659026 700367134 228516335 45103199 121915959 279746690 115458883 993406666 391882295 816263441 866183176 772801177 623638104 60216543 217081384 721234721 977665632 553629499 684195310 609936269 578146987 580809152 995042516 846649666 459861328 582853752 542387692 538176525 802113033 625203938 558337972 615906832 266849370 260253393 446474737 664837333 11185753 128075564 61364427 543562722 229937622 254832006 170379351 702258117 612359149 708642511 981371171 726667682 46608658 65024090 811078742 255422496 301176102 505918629 484593500 377540589 915746410 673011813 306598817 697689497 958276019 954494998 537877235 204428120 57716865 883101682 251374294 296909513 162841943 536528436 437259348 657681128 319411277 61871823 713354304 162106166 947416852 789053849 736961332 955420834 103616206 728771814 514834556 165465433 994769107 173132650 527935226 464186757 840562828 264282480 189267003 445780873 838283874 604914836 237722577 662548703 56495907 875329770 279170916 53958569 781991161 715999193 965057542 852629566 221203586 808288330 185618172 924450976 105910418 993569925 342036559 349015907 653986733 612860607 955219874 923951935 135748967 218094862 378579635 799650551 675566887 138630825 826940629 375029114 934717596 182763332 57367296 967456358 188057390 731622925 911154991 649882190 50117711 107286214 483080554 980111128 944549057 726027237 832610018 621119788 174048900 450644237 770146485 1498425 837721009 262209288 77824928 401548043 163500725 377456815 785076425 21968026 606948236 488447906 925618889 831353822 993999580 39198400 416004813 116580419 460576233 278649928 829061859 264033118 705734221 671916316 966305263 474174174 812511642 602675510 92023457 83297406 648416947 421478953 716336523 517570862 92477862 284516962 458924593 95486685 571701543 996717189 873220569 371180842 289505232 345533007 156561894 239115988 200551431 363986547 736473428 932936461 265328853 441085108 980007849 249962894 343365903 146394119 35200499 340357651 673889239 685583524 674472299 556514692 228142806 923022222 589407169 950659453 840043476 23889072 533130198 993883814 668508873 657602162 438536961 273402541 919154550 775408406 969374074 325775777 429714287 286968279 303650454 178287591 564932400 504625632 979236589 137989841 316221919 273361267 791902411 955869492 575327176 456713190 108991716 247207112 662739588 175087780 62611443 829265591 319818641 865683712 715464404 417867559 704653398 270732908 832239514 43974411 394176959 984280895 828905497 83051287 311702187 196898596 382142211 639492235 892617040 24616665 323898390 518705659 556140041 281387308 356104505 160317434 747229610 910011063 472851615 786998184 631414806 251760421 752299790 270698660 620610612 813235084 33972122 14956693 122427849 403835527 807287493 328477064 351815635 646650216 161628932 447765682 24101709 912789760 185121550 426189326 546023080 20546051 662502913 317688615 292185677 577452752 190033663 839203798 248368008 772684764 974323850 613353055 51783908 459089820 133010581 610423050 265728579 626794849 362690354 71371510 448928968 125565168 989624470 160969890 227484848 574248584 735595870 396751188 742617107 818227878 595916629 946251112 885643704 681526635 856334375 784770620 833330502 691787190 671606234 346438057 947137828 622257197 590219551 460915364 880896154 728343180 842864076 585216759 626884363 838277574 353881145 837194044 927155163 517788292 179972426 188319015 540211631 260784327 40152667 811768542 37468715 806722581 206274209 692269013 777013871 394885972 645005438 174612682 628142702 744359251 980930470 387453636 580887137 310082646 372336163 927136301 87483472 809626738 962142816 442009606 970160147 516499550 730214567 179318588 77466711 842330660 525900259 889658808 988658937 80699692 126317248 293407901 918727408 724955104 180099981 917384395 526114734 889670653 492091947 491359955 771145421 49075078 881288367 446375224 239514750 958196550 564034389 958956732 830920213 240657211 890876222 240343111 990113603 287030556 609774716 870249037 52363245 878045154 957363122 598028575 308306358 123775458 843892124 118284330 955489666 377792678 1860876 564377554 956717883 522937258 632344071 773115971 182259871 27148169 872648813 982298388 175955496 641887584 699311050 989272158 544366971 384239385 97151141 800438233 7206643 871439573 857455849 5746833 916940849 893726415 423062208 544619651 533378254 979620174 686947408 255629956 419017784 681675644 377139857 988074001 258196637 838428411 51066279 219158106 790691481 815952586 903675233 321955699 999465784 21702793 148088567 157055698 274500813 678040653 883801463 124956523 55482239 774913219 741750134 644029002 966403509 630546633 302710434 465691935 784598689 986994922 426131893 951238512 797564581 558736866 123641355 722759809 404413098 166026555 241467509 271268991 921295597 136268860 700453173 704083762 734952239 979895749 417979077 945712933 137910056 510394962 298392304 794399331 632661712 683349919 447817419 955953808 813590005 998650005 648498535 135621634 135018343 580280562 337168066 163460548 861229939 757955515 486917790 144471587 259230680 571848314 409582655 82494770 147133453 20890066 155574075 494561629 241798787 183909051 538351848 541576671 89988600 198835316 24345397 679633089 193232236 652868214 531130155 638225682 309480980 653726266 53550085 715213403 194626627 631078533 198007831 326537386 854313230 925394074 215447322 939692969 589990485 937641041 176189336 782548831 869219658 317926238 569721313 391999882 531799692 989833216 504700526 721105151 16937641 851481940 640872383 815424972 355185061 898770819 960813019 626462055 280776724 855278778 468906411 271235457 916965437 702402058 520627517 340168027 366788069 774849644 198832668 278392342 209838296 265057615 510035769 130642385 500859922 880282701 570572240 408028066 519316821 761277141 792224455 490379914 403074501 981633285 403656801 233624206 379138809 339684946 208894763 798259259 727176006 217960916 602251460 663859460 146475220 648881354 166526342 424667566 678567326 743370810 630923560 582341368 470240562 474049904 604971959 122431004 107514852 524702256 243489257 381363679 574515243 943810091 458653115 511883315 851546866 618449150 385034535 905671914 42844362 243923249 575102523 879641144 512378344 943095113 730693553 199940873 263435106 625891223 592034040 631042912 330904274 696861705 200232509 998226312 178221455 219246057 513103972 439702365 14715715 784124677 152007367 691088897 849490877 452806364 317187806 664809576 839686320 450908377 374428652 571127696 249822070 630569440 764462737 881114270 746338320 229369598 250951277 557273304 736866862 229335592 90558371 235730515 623924935 257992096 355094368 644554591 765503409 471208761 543337098 522821593 263855912 852764695 547260478 807534024 425643830 406796054 559834896 131654238 529131991 934288813 46034850 62739894 208171569 754617169 396167766 672334764 816455910 844997089 750288058 557170137 266230401 993575757 812351237 163078970 592536749 701008266 982431163 6934033 897264259 770382948 479358389 112695054 869706055 384143846 655028093 166776270 654221821 183527962 575715479 446874294 74755775 323230038 684493445 383363951 135208421 185583367 618442876 422818247 913337083 68681380 363316262 748530815 532844024 802456963 969490140 817657150 131161543 611424849 603485876 346201475 203707371 403394942 370049706 853033974 774315561 514903701 92987362 477362758 142019887 10717227 929030646 905498344 365811795 962737231 527337665 437346522 727489659 140282951 547987069 319209817 467394815 312131299 478990292 668771553 208286266 548910294 187877635 774199103 163025993 181563483 679787914 79286235 565894916 103880054 323440644 58311320 762984932 17469721 876756680 681950846 538803688 911213281 99087481 110348432 329755303 579396717 126724156 563181599 7601962 271581182 912796644 600583286 932310934 549827958 217163539 938639379 447211734 960699398 241589493 130421001 87366880 133080391 204536526 635121764 414430482 76417559 250997650 712126643 12756666 296359505 380506802 375377680 413017393 279783267 661407170 333623123 457160093 797921354 917874378 292399618 545795419 618156379 684987820 238896701 531020203 250018609 195246212 265893182 923709531 983702192 497601762 676457228 68925985 805130866 212160682 208760061 955176056 144689748 947658173 608413909 308461137 955566786 905434036 950372849 527104494 409328518 865625775 27756440 552417291 649049716 386971734 34587757 219178583 259958614 202659905 937477123 56916122 569632924 714449732 397063051 812468165 473460778 221426400 800797437 37823893 860213219 535155877 621034902 408269900 42427618 927492657 723508875 101955269 854534407 193491477 462056227 404284197 265732676 632981601 150638066 793153941 468651887 12853921 20802941 289845946 180379307 987241820 626952240 749348916 331400775 236583571 410992296 484042759 942856215 238070399 769714461 827142295 842514992 147287465 511149831 989231503 990282461 499987123 656527369 175499880 90710050 769869101 949316646 650899321 248929147 548936129 786012514 177078445 202937404 767143407 762147460 63842230 663557089 229748328 943226343 122336322 614869733 850851178 454816322 57759012 364553397 381177694 564678756 766935524 3509764 179483450 265767159 373972557 318553297 775785107 471162803 263427941 281060730 839285416 935368251 780442365 594498272 486958845 63740216 83289030 468783101 954354259 629692068 102131936 400707840 432460557 580357233 793937665 985138 912320440 400994554 967918078 922878987 724824171 788535348 121886467 256404584 902876086 593253222 873735274 223899460 277471420 445447530 480219355 88439174 803681989 721172595 899844886 277789481 744202876 333316824 903643080 453078781 992574140 971960387 409381915 76637374 858367755 680939070 706834517 273550997 840501362 251507555 414663444 401546144 903597266 129215755 574423134 89781479 104404819 38498795 862837316 318015703 844180164 687557260 988293146 737949296 6150936 756932674 359192296 281773234 776184789 982548789 903687626 139411621 152888796 76960835 272131539 162457070 569852191 55685628 427434920 438268534 416273738 357318540 631466949 686689093 644916150 901973445 141414170 106873156 770235871 193222882 538889961 209581922 16385397 659579318 103609947 949174846 73866590 580882993 22841513 592987631 640940140 555639261 522246932 156604996 786943930 497496780 728578366 465282092 669853594 94321946 173072268 986175085 742590034 850075488 897973663 182544433 175349714 550361795 169387932 639582495 940404782 385555974 166470723 287789250 903694687 567775543 488655920 544820920 551118016 439626968 660531347 525275324 277062349 765697038 121458010 959278949 798907389 395307306 208683615 727565234 253412493 371959338 387881281 129366293 600616214 465471439 867152631 88492605 887133578 879086484 1933062 228545093 830709574 894998569 694286803 373263973 984359916 489797750 207689967 266913147 302356988 410999314 182588844 70362154 911946943 373288574 650751266 408926725 836216579 157141502 252349609 780242345 243423986 952308508 534694324 806282171 267831500 181869192 255669472 943349951 413157888 937995454 53201218 107183273 165941330 352143456 846935126 4386667 369623642 465328605 997559740 732116491 642889057 301175204 182500686 447135583 532760631 460879503 926704296 821181589 766195391 881502360 776725880 87084354 282064765 578882830 601491609 502709139 731566071 827429552 512128341 962978061 716610791 374684153 42420157 949682512 652178034 538462509 672640017 331924974 722531184 282657444 300126766 399395447 474459226 933437620 798868582 23962370 584998113 736319423 651654548 532929153 871456341 754735575 52087856 141551568 773921046 227054828 520498144 607466784 91929098 659071296 484622437 989986527 807159238 179662131 99528003 654667461 485229593 675133994 368002524 875534469 34379472 131299152 104821502 55151121 526837989 639424257 475115875 402468203 333007765 295180919 634339974 511552201 164843861 105337530 794380121 292600369 35568428 129806064 310692445 39576527 706372249 323779862 111346474 540578147 844105071 915425674 502027795 825264508 744648013 596983472 567585266 824253696 506263099 393224717 132529482 242205263 423981235 488230142 498067487 901833376 374024538 836651224 130080823 525941806 631411954 982283774 389938451 220272747 574002387 462625694 860393391 221839547 145737836 506993093 107245887 243052331 603722472 562306736 144563241 419484139 316892569 561368342 256254879 617339029 150308736 871450494 75150736 809228626 68670989 59109208 343387955 499969292 879394376 767414035 297174427 659291130 64327871 467489816 360832457 576527525 115562109 112010693 738438759 468019972 744233013 465648973 225916767 723428260 559591959 194877044 962610440 806705466 390473912 892300468 814606427 862650865 36065828 931669445 37187190 759128066 639701123 10764978 250975840 829465073 57348684 306194626 154516581 746665685 259822673 19288637 299726639 202677061 627111321 78909735 55055745 615331572 970198065 302868841 531083337 449358964 994854237 380917150 715216461 938115816 98116140 171891137 723480088 447758334 886183119 283508942 493847416 254212668 634975288 333994910 943652717 459403699 150068303 173373102 295697579 90939960 448135812 839873299 689855045 545128537 455405520 150320826 890027502 333788885 782698823 561121434 875633101 187041961 677133511 41441267 486974726 196272669 818519122 331353569 393605102 116331117 843759729 518714808 203267332 502298468 988897069 989955272 207212313 107992250 302320238 626555304 344733713 25255034 428800956 58003967 568188709 950652742 605974042 21732091 20721571 131493274 154207547 658128158 449414500 799460987 661859845 643195321 337469933 699288498 846477148 123902550 141358509 395623418 663062586 12613554 791364002 388172043 299991818 554223794 5210719 477498161 876311010 122229492 98424258 116401120 503480451 870005859 405075027 413907111 855433884 143933842 935084703 816348220 169042502 526151061 193529200 698190312 87396913 67567854 452852747 744078847 822800416 335058213 714104148 62422383 301211486 203240435 193423028 290269464 786623173 938482703 916412405 29309054 43551626 738129005 208076073 479334974 122902067 262055578 564713952 490595679 573279259 6681419 679424144 602479308 984070847 868057112 412872606 761840917 720211533 194506382 725858954 116105070 358761331 334280918 842824946 738298741 274801486 571988506 520407029 887805900 832404263 375221009 327864087 560264586 473413464 702046859 695111534 376663662 704567155 22116742 364638350 330170182 535476552 202190887 521453346 249477229 14741328 861349044 70673291 856839001 892152957 472257846 27588586 790323666 51747426 870554883 573176971 360209953 108984850 194430302 809474517 990967182 518787773 637076084 383540092 79301780 35436631 219157513 816865451 905961339 763409922 162604294 490066272 534008189 359010552 178532024 507309119 943276253 955451905 819640312 387069319 161282840 83340026 348920808 953430046 88564835 49139767 111920559 62733749 614528803 191751979 531760091 731766 260446286 764163314 892925207 182522535 462522122 607638710 964017012 955895543 890017154 448502485 692786229 629351691 962572696 890998206 211299561 507609333 545389036 380302589 546285247 377808117 174521956 200531695 658113583 781224823 427057330 838424358 764433713 349610731 642949108 936932135 295229949 125322115 231468268 944040605 562834074 428024658 744105459 27666479 9470246 439655421 956021912 88434306 469708855 574722366 81487749 238275744 364380330 580636712 985887602 832888845 609062268 512939105 962278734 154456283 529566040 507504183 312133378 59913913 157370149 20647287 324150134 72265030 569373769 98105505 627464475 7776338 473770373 629774162 651624232 454224775 184905860 844073627 213363684 262518431 671428079 738429311 331127624 234796104 170860366 160999655 116085350 251839996 711999561 324487767 235653360 576655569 558555687 497173971 428844752 384452383 514097385 593239419 744399752 345760630 395440246 878242788 559311912 79658676 636268626 822462320 122950479 520919467 74137716 629154306 936713255 991538898 482029700 838764500 869245253 203302178 156673225 280664486 474768987 530342769 615426273 489177897 494659940 590647422 342796942 17409843 420435645 280012800 613701338 777659496 954478708 841275734 470135691 657524900 327808118 760158013 26441232 436345552 173351823 420914559 401616370 217014723 584910944 665902279 66750564 397111647 92473983 921285936 760589398 909077289 233156576 315382238 240335901 136483643 176657212 343794408 951499240 817916298 930383225 631248972 411807101 688809023 670508209 625660627 38440086 353642088 290677197 344451049 851895555 610283857 227874571 287219845 306630718 516590965 101491644 148791963 810570568 41855077 604497529 769453428 249734512 95912487 564576673 350581730 215186531 917839134 762618614 478844396 785180169 632690351 640023344 478588337 66598704 720843462 961448420 395214267 693483822 590687343 365422665 653941413 960042425 730109053 877996310 691616570 337649591 554795577 979695574 257439814 380475352 33387080 281813962 153421678 782633451 306991536 783259739 196708534 657791933 770428289 446523390 588418667 385363228 202929118 757922549 918786746 701791432 901979711 890261317 487675577 757712831 30751978 154937888 355917658 214456618 548281417 209354274 347417386 634698940 826008828 221902082 995342775 862767 148162136 518225837 182905117 384393283 276267360 372926053 579620119 381030583 203078079 490470021 395336795 930449472 174894712 997387483 152952804 921903819 544030982 860317967 49187435 193660299 507244825 307304230 956295942 719113047 358768025 973118097 622807788 739179526 803483492 556553002 609504915 534904272 812285969 801803534 871650709 180278901 526266941 858114839 55336444 965049320 991525724 23129654 653984647 630695115 993759495 263901598 193269297 727142556 43191001 957390936 976410624 643569000 614189054 562666250 589459747 526528988 120450964 434678555 302819219 827050953 284181381 729819786 605970401 403964625 400289921 798604903 595709428 790299020 183261298 404511220 422277463 387001971 984369170 233637473 769564408 482236012 759973596 88823898 915672258 572033563 345496572 733180398 375155107 829415235 622857732 698761278 974188095 677476371 249896832 88379402 476373036 615100373 619175035 252345133 74527841 190826835 520632597 763282056 205778251 659684400 354653364 44907372 594161174 637063677 752210366 206409019 956260672 67475943 468884306 469189824 181744120 22605646 384121863 160514796 801212850 711832450 541252384 337809136 585604107 93647914 233565604 658570283 459475673 179857942 265858411 856363517 100344470 102470932 711027031 19353818 840103661 301109679 962795089 882976680 7134811 195805341 652210153 424414629 124404348 166056386 871758325 255286061 15376987 681276334 447486799 403364335 672865172 161828807 3233542 214965586 998798132 622024142 244914125 818993290 331861920 826599490 285359297 878952901 936757905 692600190 32422244 669434540 470162716 496560859 882841411 430581437 538796834 885510514 638453587 548562355 739016717 970416539 761073508 741156492 378891644 977780766 934792308 71212081 567148948 101966845 668638950 529022706 157227317 438738860 733782890 377908205 422619668 797818577 710677680 912537052 725841818 288508591 792286995 268888328 773682863 36764088 550122687 322294771 321190369 195637261 141529349 418179376 70914825 936296983 7207120 6504647 493207103 319599052 286106717 237910817 397512991 739607474 679526613 560359857 702374537 540777636 393900214 813406740 220084144 621720357 850716362 994303894 265335437 224354817 110634744 70559054 527958843 665351912 831439531 805072514 254414522 718963313 962313227 490206851 216929182 85441249 479334525 806821683 599543848 330216625 927107811 972825909 631800586 906605915 673049666 796554133 353042936 933159648 304937568 43817620 926436851 267121938 704091695 418381454 936583382 10328467 81329416 753857981 570465622 592298954 120784319 5895238 141638533 998008323 479097944 244640430 705189591 82544171 741026213 99361155 883492159 699929562 231300780 617393397 409337987 11552607 758659821 103451442 207058281 705916009 674472224 377289398 372254530 4048746 479847820 123320917 517589080 694986365 997019137 443952245 556116793 760560450 426868083 319854627 511644573 670866457 314931967 849266633 561918352 818504952 427787412 601485237 799144933 354679173 377167152 998473496 492357817 973606885 927083445 140637935 402018179 36747718 763358954 614428874 124228226 834955067 205100764 75560039 148220666 969675919 344537018 910131058 199332173 668891013 621206179 442944530 454671457 649410412 300588885 529192047 994999764 206372423 937548815 984857741 20219440 81315805 273568275 622393689 968367413 170083140 474404888 30169630 471976237 199029792 139343609 140938606 542315375 78548639 600384708 776659061 811031056 576995361 868612853 198654016 316925853 52300147 308961550 879900182 734818418 670534685 386518242 308960212 856874538 613137112 794693561 618314233 834067495 175924618 52952761 495529182 846037044 301761894 153341318 127127443 68307595 666054720 491539840 412364185 795634401 879746456 184954618 845280404 660405323 355552378 161411632 522185807 949969357 18936998 842179421 340930755 893351115 691043220 338352629 884873858 521942663 567180210 511079485 789560059 170629284 326790636 719988213 701809577 679736182 252431255 864336760 282936130 99709458 206178142 225133899 32767526 854873946 650444643 516074007 915842884 98421681 708089078 689882355 592570917 835843797 923927657 826237485 254213309 504160111 600566316 390705686 422545177 81995534 656016030 756232738 314295213 116196409 792542803 78107750 965146496 331326684 557645185 456887821 998028152 457721357 720051589 271658209 96871031 637249792 238383036 175016287 174377478 633365554 282299130 200772643 958051378 732342712 436834125 137735332 347149235 134012176 85726841 979493656 424111753 343371671 630293773 909890122 532370852 906002824 649512097 175450478 318313139 995426830 48484489 876375501 303053779 69132551 36146141 383622555 167596957 372165044 709006293 872155713 589414882 310674149 761425028 973519075 898019481 442844337 84161456 943047145 859236191 256917544 790388597 170191869 37437759 616978156 853756949 139916671 681611603 972037480 71461091 973255192 246872006 316288110 158189869 707689668 95617282 192789767 794109095 465748050 530166862 207039310 288786942 649652362 746560127 723814704 559039428 253218370 312904062 94742092 155143082 236268348 95367962 587632169 627153992 878505383 518370780 554224310 306562791 572287570 23034397 212407033 811341474 501488283 680526739 145596967 349690863 202308006 109080159 89895761 825567469 800624128 280535954 47777160 773383967 23809127 117097768 596690070 646456870 549641658 277831994 104048962 585339165 525986554 625193779 526294835 868186637 367599654 101469429 499021131 284085043 594998827 947660068 338770512 181853161 522582712 869135970 189169860 869570356 793963921 309413630 472729645 484364555 964770776 699245393 509919864 738428148 403988750 781671538 831782999 897114437 286437715 389606977 219428583 941157180 853170980 472476693 468655751 590454253 726924001 646784084 812515624 68000038 401300149 728481226 25497579 90321940 986687943 314852021 327184589 875519915 236620454 531768535 589214017 211887327 354369139 113863538 763768584 786458594 18287168 30219694 834408899 117126301 178882469 199715016 7308434 413442071 998000624 286496310 822001128 738594684 226839167 202104584 662660659 639053683 26143323 483767581 409467373 350588754 764383104 159334093 984555183 817053349 442610478 301809024 995010739 461440721 916799848 351573495 57275162 960399332 484814735 828405019 31041846 974492654 657089143 851615768 678775708 51291776 755906509 443814047 25520794 17490272 276480384 73319000 754359980 30358157 50637140 146169028 414441206 690833930 885694876 669007080 823962591 683166484 436086716 112572301 674450953 710906507 671267312 744217488 316553286 829273787 806343754 191105484 59822111 361887592 690637636 758811626 907375422 949029174 591731320 183312977 141751585 171817500 584551575 898312264 524900333 906413669 583513963 536915933 969406730 272389045 940577316 774187347 319372407 115588425 467933692 448493563 522318299 193735786 192397846 18454815 821133442 749317203 568338741 801208418 472954479 76573103 659116134 522239004 577271046 74155332 311872867 827264366 660712899 219261000 951735023 196816115 256205306 658252321 389614268 94485170 148878315 490186994 419515253 107461670 57195679 734724994 218061109 730483988 879950659 431665092 936579015 315222006 458699948 5576095 191756798 272657781 208670455 243303261 236415216 120439922 89391692 745537190 921134973 584585760 358360800 85146807 933827036 881878158 855998892 42576169 792617969 663622343 852113476 750178262 750062623 588936944 503188414 994757161 421515152 916377643 108396252 717317100 500016246 148413387 925537629 648539480 817463463 247836366 749815934 966733213 726768279 61804272 842582029 833708591 691423730 316169755 275938017 628282201 481783448 127501180 817695162 184625065 167470448 933695254 514700720 951088453 641649019 450654914 276558967 537541064 527412785 279652922 655236823 707033039 654759616 420138090 806505996 386894959 421112872 140555841 10533547 191893789 492856292 349199885 428854494 571291292 866234224 448133900 657163281 270934219 554048440 866599591 300732265 940542941 479623973 199759557 529623145 810723350 592751332 531529331 860982577 282557426 352558050 37384451 484689026 359211173 947851682 867749691 116125561 673454902 522349184 984595591 218078579 877560881 360822422 341450659 423470708 430823726 6118551 613165273 79042331 29324242 545050898 243918588 496775954 504596015 67776283 911807200 69741266 660889268 912776427 191317295 408527028 365639837 998077622 977503518 236252071 218659299 681920874 926739053 586377765 348617577 345359089 88648052 993334677 238838885 357308278 515275380 451131359 59166188 79964292 204060228 195675470 498238521 247482345 897306967 829354859 955159824 154703850 873402481 20055949 672112610 298206985 273774650 751192370 898045578 886049093 911535541 752163293 769653375 634082184 26302956 484111465 459282625 883608408 37221720 795059355 939177199 404781094 46214328 284989105 694908920 414361309 904625585 726465446 231923448 128880715 792745129 790245735 889894003 626248896 228952491 943245941 833535697 186717514 24830479 189969217 310143009 712951002 738979340 590226223 176479364 271833120 497909290 220863579 906515347 820409133 760306644 985983922 821754316 717478753 164254263 170539708 581816912 527178971 823815310 900302983 503154575 952817059 649124168 922425111 501999170 495577138 463826900 477429617 278318668 263442831 779873902 593971601 999587424 356777214 527245224 335034116 719458445 973844275 529774459 576579418 712245208 980447777 414524562 175925061 801420721 952926312 163919136 657624223 414194560 251244232 151067476 37912397 6152589 110461129 823629149 882447633 62575959 884856057 147919518 140028877 351580022 254019231 157797170 38485839 574326084 245658669 696238708 746856538 747489567 831586706 301421671 207847815 136208702 886862501 236110774 325150805 577887456 465277910 814876884 44072990 796002826 213286832 958659195 821274282 113762452 924430299 989988100 229564345 66759262 213644050 939971238 795408249 594255715 476073741 407642824 308610904 592598537 320411171 871853918 312396781 878772095 671606229 164151452 46384319 71710176 447622456 753846035 787418504 988541264 507188552 768582951 613118506 566471029 280992821 313232910 968247155 50099528 436092910 977731367 935432494 393153386 562225954 893109607 503959549 996015179 512512426 860799613 164056352 524486984 264333759 65902577 743627563 465450873 958736303 802653336 107339930 255743889 899396659 227318269 924991727 938316798 980814560 226588324 114305462 748014662 404988089 925787171 211226000 595060180 304006502 994251258 546484762 214663735 44977673 824016409 764199476 499629228 620406523 586129560 184325485 676892066 226674180 797521286 975879902 964418811 583069757 420582698 670649077 488185666 65672378 168785960 133482700 669093605 571162742 614645349 101585960 23759781 605471214 996643793 870630008 515120719 29243166 436556401 771471156 720813138 569802927 359862834 998364359 741783578 768222237 376665079 28858548 846151751 195030388 5638209 63231613 567866907 924845319 96005817 790167908 289698002 885903873 39141112 516533935 35794049 892740486 583249102 355016402 40092837 54182464 394805316 345212022 50712802 521594430 938116955 72992341 180034533 77752639 491549379 222317122 28531636 607136452 197813449 687174995 961562443 336255595 879164646 917540202 463643452 498364630 205607437 428898341 853910996 4960943 51227313 316071347 715663992 659719385 192490964 476553951 824520334 917530364 456798246 279684020 679255713 223762686 83716367 236394428 173638218 509835847 224991378 324219453 333357689 553938886 431755176 785592197 176019862 350664236 692532787 357098677 742124230 330041601 320166732 161508143 824628736 464402889 510719092 601401669 764922218 543175935 139044679 855564078 157192857 895201620 466104112 82983146 113731093 179907536 428791598 136516735 179516510 102072489 783958215 213478366 180805229 919394880 984557249 192451308 431256497 103249581 8235082 365725680 896557191 658204407 361302575 618486468 833290083 563169110 877592814 463711421 547941192 639974030 723884711 942144733 509725122 7854295 603463717 667184651 734385061 795895735 711943414 154222402 694312854 223241992 117852571 726167431 842604847 792631270 470906773 558783798 331798852 226281486 180580246 399574130 512797447 199798283 376745063 755324846 165731663 866642435 798526126 78866861 813953713 431139579 107228872 618044573 822130687 960513305 307006916 846015076 232219332 174858242 998712382 883481435 822684380 126125404 225205660 769770178 341055410 870328738 233631101 403931664 936197996 764939776 406771606 789276048 889856386 565009462 121561982 310636935 157045530 768620859 107800957 865098492 340604017 919864407 396461136 318074548 616404851 8998817 46890858 437706677 312386968 904945169 645245808 123871690 869201164 296904900 131186618 790127750 143262081 631420238 81551580 766657362 732120734 185322681 414283853 83114087 199818386 113874366 188062356 817186677 263301258 264626733 44678456 960069573 231964623 77778372 116854725 331600349 502217320 825211642 787466849 456136440 351647700 441458336 741695752 601626132 489586779 726914728 109512227 363513771 509388479 129017310 174806871 842980976 874460039 185533615 222080415 938418599 154062282 61520477 264550619 949564654 452200458 601923209 682562931 554226647 317926984 126007967 599568526 246877865 87352280 566252873 249816079 873040871 337066233 207769048 808423673 104736933 214094948 455422499 97978310 27975066 496277751 391101594 684874611 822265624 501969027 957611100 675626036 132505824 379861713 436812619 891527630 309223147 984486303 342684396 980471816 888376866 963417676 248459150 848471403 160269596 552375253 883215561 189844185 246273838 228076884 705305446 727747518 420686356 962240000 860478828 547118497 953238610 6082722 291186387 191545655 529709370 896636145 353247562 613966408 923805106 156032356 749571823 421274401 799657498 725862807 608601138 18817834 518064314 196095420 186490353 983572004 106615904 944085165 468892393 393806255 496437145 296361232 200201702 657281584 33980453 202232034 256680433 660521179 832168548 466963095 565996164 379308629 68597255 385598994 500802864 293845783 330710956 549546813 691068789 442271363 508795335 892041472 370495839 677628012 969604530 428425731 744821143 513253758 305265896 491576801 946814503 886524029 299835812 409629098 40207967 638759733 363050384 115758274 213073199 870237335 172739292 416668365 543525005 291721043 223259318 841610743 813976016 266474050 676782579 423327034 290043410 112033037 69762153 332703979 636591682 876528985 313843911 211223819 957492704 386286378 858362547 337714865 917069273 6097735 911232572 62564702 143274866 644668914 854338913 812400043 156473173 441038965 977491819 491714932 386257638 442513991 857162178 999674102 5371504 912539313 348635564 881339124 935218941 503243645 349888764 705261372 733692976 953795572 176826250 477141208 520175749 802737021 203344579 440476287 177120899 302740215 478519498 969539140 144383499 634855417 928889171 121163164 347826816 835383525 229340124 688496725 824334179 130079577 541408569 81943502 712610586 788705111 493505568 470219133 453489439 350860349 203346751 542133114 628748023 173798382 875530144 331023108 126662529 704003777 687247411 507115532 859001086 226697010 565850474 975352095 823562051 58896158 564780228 759222591 826623231 585134653 165165268 444738352 827032117 732647941 745906341 211261668 968086964 798681516 551146913 453836336 367284918 90220529 809755235 922164813 122436344 91636600 475111040 117729010 758120037 252396661 964223209 702125118 231629688 824389233 482277014 989487117 511320198 350275357 828995708 694288695 719036164 29325980 798436292 126147247 307974481 667691070 379823285 883697623 166169301 249409794 103760436 406337335 378169474 723446305 874147789 178648707 834718459 517226526 836593944 494396321 890519687 20645919 122058792 724004058 381816073 905373262 486639785 924358341 732897774 604421826 561444865 921933593 735456353 89430845 50201129 933103964 23056507 715507992 978552984 598766893 625232936 353915256 992720365 546825642 430824652 640868179 190669143 879221305 218130539 580312332 973737484 354754669 913404434 919266055 725515258 190746081 223050764 236142165 729412672 486511050 134659561 496463686 76911139 653194583 630546118 619882765 69016286 267109878 123289625 268489564 856926304 106428001 600534750 94110131 247237399 599868076 652836917 769335815 68986778 22684518 811248064 247674719 179461859 832866921 249273739 54282380 191689236 923982240 725847169 693572773 853695513 898184775 460125710 470916584 278237345 399928796 917455342 114370963 80483074 494874367 826735037 995343309 724438191 672909600 671482025 842947698 394467376 429344791 847393550 143895151 188300181 709971821 560008808 982279422 714043089 738191260 735536227 280892513 501119181 389902529 764859589 693578077 900243709 716470429 817006175 171089326 763233324 517500242 742596210 33538752 638203086 531446142 902373507 243173948 728467360 553700059 846783352 697858465 111402593 664104694 962436816 945655799 650049910 829318457 320471435 34944336 263322707 605897706 610600994 171636318 904928385 10903487 925195329 445688238 397261608 117302988 976606583 642284712 288261824 770077223 480106326 49503642 270623191 640663307 231595542 433794367 778738941 844654456 743891745 347064749 212959762 336470201 883433462 143345501 878502363 543155273 922437236 781015739 779717762 86257843 807785559 607775029 493779725 707643750 151468010 672467120 407583666 193206672 349646952 231386898 41502702 918540153 389939834 844640610 441678447 959071544 434674319 355814337 512260513 221994874 648483200 895597267 898009071 332678222 594048976 935685057 626883330 337220423 298054614 923990711 114741786 883163213 757334851 161729756 678574000 487914982 770793314 172573206 950701163 265244190 544271966 679618841 151759574 953997223 585581478 213047503 358859146 493987293 68314365 933750852 622439486 779904773 288037542 114621707 847905523 59341496 203316485 144551001 440392347 175671437 140481720 878768862 463462002 296782365 611354964 715514030 49717237 499445193 948008924 503361675 677143982 826129902 977928205 551947926 704474345 92006051 425127008 600723903 173387628 965656892 173840826 893367804 957764367 226718632 937892497 797273606 58249435 446106537 691590868 653147374 331006072 817207649 857276500 117877880 35189488 829845918 156275541 70068565 692365642 66101140 934663365 350563526 270957071 331218682 199620278 136461636 581864034 180400632 261862037 161364177 475122500 54163116 142966398 42888819 841584498 201555937 443216320 680886070 268747956 290545837 343579912 47108601 46207695 72219337 67837275 707089425 598167157 988004857 811790430 305089395 801080868 432211725 561501995 551527299 922294122 275364312 917411370 605859304 695618944 35055782 872608488 15533251 437302052 89220155 376423982 490553899 853001941 950002015 804101478 392279473 440343536 541367324 572582094 878359990 748445048 943244151 930043747 393040269 154914652 398218097 137909377 899561981 631133491 106798725 269869052 197887484 946126075 481566890 62074954 710356768 841003676 114724806 204100291 693251415 242474286 827350005 776482663 834007791 551610329 276348944 654629785 347167101 655257171 698288383 316703269 458133201 395206560 573184757 936868017 724579618 197506925 581154205 912633936 811037826 569347623 802185145 305474780 843330143 531154990 836740001 999119247 565475602 284187324 252905161 583743049 448603481 125654825 284732139 230365930 617842106 494140887 26346195 169986794 742020355 630479761 418620764 825828404 410687721 938536603 833548301 91554584 923706629 819586392 769956932 666062573 287237102 997811253 459984981 556415686 472064503 796544540 953609080 997849605 36016275 178774078 181215108 19561431 223283992 459165715 698000653 499772041 937252262 986706281 665739007 402472233 268498915 844260031 207005579 758667829 208625087 668296982 212096174 413467233 117361115 124457250 752072719 615463446 982139730 107019618 636591462 202227860 365948933 872615638 975904354 291480385 390553726 83707633 758466349 890450029 896011930 54397748 279261849 708043804 964553792 925780624 776531639 46011268 690595796 413537373 593285686 564318279 901824791 439638856 461199778 34985356 434354166 479700774 955026935 204034259 550904362 468821409 994665625 958221072 838111559 289358687 170833435 675259673 311707990 112791090 554156977 70454734 795416286 241542948 370724746 119245556 42091528 504770981 368966618 127248542 605643019 823425390 472291573 320704747 191886248 661180630 785112316 818245826 928227358 35713006 357677160 694883808 540417959 328601745 158806269 235731431 523654271 471849354 476121435 354128836 726305788 383617166 344554833 195445562 935035004 784113562 194160771 621129796 728813142 870925054 930456533 520764498 384946576 579554800 705743360 964680512 220729427 329098085 630927679 414773270 835405427 363332059 243756093 567188712 578352507 257415202 570980039 96142931 34989683 377604187 678214978 891699528 902792697 235610705 28423794 497085474 46709345 346369461 969622965 844853795 68392751 426040414 299541282 792533586 792188981 292640584 5395756 544737553 566753163 411403497 742558589 255924469 420223407 335865717 339117923 326407013 784674971 839818434 46569339 38340735 994843889 775312754 710027386 283454755 645787810 757694139 929273760 124485008 747060225 75603791 5545317 12339300 788168637 372477227 784245647 300420433 214828364 352743816 203609889 594161297 425305664 683971059 126458327 754670189 195813253 195431257 814576185 347314792 177387658 551996283 611606886 956484287 350050618 591880700 594291706 154569241 93422303 748628741 503712772 323945243 40612717 42065380 204253725 986563375 866437297 830246739 31381802 147629870 949816116 263585325 435668704 748134091 392842112 879965022 511461150 121728291 58991958 531885654 394741967 952133636 678175902 127122124 339826723 439563103 893354657 398987636 639720384 648586597 663502305 428300830 777442249 912976595 122330910 784429920 175790568 377070927 137253420 451546614 43321385 846535843 850167710 533491162 521243761 466387471 366392075 553370115 97820382 553381372 820982826 565849025 135320258 870555253 555414464 976843047 784036500 102420841 130326113 962369867 463093540 630345995 648156221 909713952 878394663 842150621 32654999 293081451 770479089 544141614 599571118 658053867 126033251 266573536 491379062 612701885 888557813 931760321 405549190 389641739 265440613 429267134 811582154 155139833 832021756 912458266 844083796 741615666 786115078 110852606 58865095 935752438 171454437 611022227 952171855 514625437 730881601 590835153 718188964 823497420 367962399 381830089 869679724 61626829 661243508 146155714 591101108 1453234 172083651 146553660 807604590 737454632 567979403 307717392 373066047 344809049 571414531 621766185 701634888 209398285 9518730 623523984 934982048 815994133 51964424 799139786 471411680 346220934 616236452 577133518 345646444 736475454 580750962 990351148 864047562 222558468 561441282 13511417 264052440 34921249 257362703 655422800 38510772 725971277 90227205 422718896 667499927 410841398 103021380 681250329 874029466 179601105 48449190 681009840 669742004 479972442 694885257 588042509 775716571 535776770 438701504 622593861 261404493 813408302 266038265 233126874 845895484 853594726 913428011 619415477 879264302 890169017 790207587 512669803 862996858 907033961 912390811 978422780 179531413 626873147 206099168 202897894 834469628 238723677 914687509 168222163 41924815 108048580 973295016 76637809 902041217 41327579 345735369 376112564 374423647 488832070 897918115 542917031 209626137 195627418 437074783 780195140 646323400 30000567 351034613 249747660 492667659 713524401 237248824 10498449 21358377 17129220 98550643 496656361 415794581 6865538 170035760 560845741 427202730 609605908 4848375 423572660 516849047 995462593 219441594 396083154 332033723 519881603 173789633 502139867 25056054 604272996 880931428 446518093 321155893 393979946 392778871 197184787 29281761 875562708 914099847 726766962 334387896 717730301 881987441 61179535 4643688 383545389 725862147 72289897 466538393 874065373 145456720 353562043 649131341 402859340 228353474 325456360 433575333 698781495 505875829 316769168 775720983 257347193 56502656 877729263 501506065 699681981 608156941 963740113 635672686 284729278 962470752 502300153 792269005 716117323 641710409 260295917 463714175 273251336 381404971 279919734 44205786 722067230 692895586 115915299 617499585 441956009 429306053 1394017 284773705 872250575 24181394 175796466 603485952 211625516 616417573 75031905 231586381 228300670 905299591 117586147 458066574 184270659 151046674 380824489 500210194 530147952 726319222 406030785 141851853 647187753 268685711 981695314 288421559 980820473 875830040 469904191 128049227 987270712 682710840 151289512 444369487 155882792 400244608 913826964 641439924 386638076 116662396 706981050 758428427 932066592 474940893 494932560 678153654 604608911 295837781 434213257 166230410 965716615 718178804 504500335 750184907 881582194 607045054 384832480 69874786 251212228 396200073 407986686 509480374 643611553 849468714 212109129 419583791 811400167 453090755 914352389 558127882 575306143 397745590 463929341 993478262 888073529 581527024 33573406 324059374 129969436 456548835 121287302 986512351 989684340 570425821 370613739 754775030 754689385 28303107 506252697 269369006 504117580 630246697 344317851 774147071 642098426 88805051 127546419 455352118 833833042 42409804 938703476 705921579 856449506 11775230 790590279 398009679 525900316 594042488 684957914 474328461 1657007 912273674 273604681 978327099 482844049 959995519 816672189 920969454 831673657 598757723 923221875 452017991 473806433 493369619 317013249 586618868 353412697 137697629 771262338 345717081 971827731 743935608 314500884 218371747 490296728 861325385 959029392 905591821 34861959 265468001 823708094 663936947 193615093 910533317 892283391 523844616 117505145 474983482 158940840 544378454 55750668 992432130 948258692 876283384 397308033 618331263 679001291 992045195 672168077 304858395 771544598 47847897 139612350 599117291 635545348 6214681 759253450 105553093 460136250 107124459 859093776 486834955 321363153 230879347 649447110 458898127 73674718 118230110 336000311 97186376 378291279 631737473 842757275 779632383 646784136 99196266 790378255 187474946 19283537 578550276 336778512 524168271 718315765 479468915 612518893 491328006 816974949 417605611 144867317 845640257 588266566 260898744 533515039 843455056 550034857 800464354 289001561 37211447 824833079 540203575 624822892 688634145 4707333 988829918 962605821 38668572 219403987 497497303 804303703 784281645 227038003 528521386 687080022 620804129 646249811 653839491 97857835 47900494 191256476 712713312 601483794 615738885 993936257 684555067 865298716 101512496 769314755 258651060 848388914 794622452 339590052 848527937 391999776 713664656 596168493 27646752 366843288 639757545 812635781 770369644 416589147 966983756 103947969 80174206 873755191 723932175 813519253 564775642 879633376 684102505 1364695 613510090 866956315 294406083 1452832 328024968 797791691 211625060 185814517 125901257 832036494 635060731 587579547 50678717 46943829 371275454 175824259 219153947 641393061 344641600 379779313 456827491 45914454 848428237 391490824 214899595 210092738 191743695 129478317 708421681 580938125 869113841 929661213 110599730 552229785 853702133 534408838 13124839 29554918 53137537 270647396 608347747 988312303 736741433 807447048 168306379 882933086 574448074 337626619 51913074 156134785 833241554 257244207 318696149 116072972 310431804 955005927 777737723 976001338 420701241 495839663 572170647 262544416 797202403 305444094 450126314 119817397 118261303 502739006 10700983 80974899 253158926 722065960 926425863 159994405 472186463 59060309 81120422 277167620 151925570 720770432 899568909 744542390 281863463 38933039 239657845 772062389 145622064 944277102 390717933 608547121 383331049 690546889 13381232 198811618 920711958 311354442 111585264 978038866 855932736 364272219 875264211 858322013 632136988 543409660 222535500 525495341 471088696 499583402 753573779 853348677 422577726 520285008 671441691 479109831 500746655 221543096 88174552 817725652 834222304 604349553 347339791 298593337 603374182 832935449 923964240 267041580 552263978 121500239 24956596 45228669 342566309 810959108 722512869 134630564 911548898 517393493 230763862 347294427 830645738 194291809 442688399 203147506 916784230 40209741 388799011 208385992 245259749 747619325 243282861 781790931 574997651 786513049 456938742 356552294 518364524 775024753 760560508 169814244 88813923 324998138 898916654 143144732 204261744 611878676 386439741 118863435 279680235 426658686 908227310 577555239 150919135 346522537 477859773 652683275 905579114 503807710 660685222 770422428 776575135 350782485 936556409 717140750 500061856 7962189 754643261 748908703 164918939 101180266 467280198 377914792 470798380 985362059 410014776 81685476 715143756 239349603 5334978 5766322 831853341 731204192 381114284 339095618 602565020 532067260 146210214 937416395 841030844 329517965 900934741 501851676 95484491 251146277 151151704 617704218 111234138 473978943 520954948 302749567 190463003 122852812 379583255 979418307 959763039 773732425 425124557 195804784 855391623 43718619 266937707 729104704 983842138 544325343 309016445 259311523 579181314 357834950 868494606 710473606 469763441 38974888 89631111 331582149 668526660 307163695 337021515 106379607 794467993 594233836 932040948 16294429 805983452 514299185 183381577 667837685 528084057 696483005 107653939 286722770 517641464 276024601 961855828 696041982 769948949 61201987 710767157 43423080 802304420 521482169 679043002 296276543 6777440 518544704 722658021 548029281 652465510 503218417 273146225 289948581 449589821 410379170 64898265 572808333 622991056 136789934 593377960 71602654 115635652 76537556 61712812 301895441 583211343 571266865 989183728 586500381 228462735 581412656 236948162 623422956 240767143 759936682 890015446 79113966 41596850 742820933 190597928 570338114 417726565 55798806 220769211 967959157 295491874 213484142 151996546 424687388 108162955 729763370 717578946 359195684 761810218 686387353 834424325 27833693 247804818 492029644 767318961 852688106 201625795 503732029 391829292 630640059 810284697 61391910 631460887 7475381 803914568 304074776 226393213 258973528 662431478 191401864 559635113 524454398 116858891 101141966 844143644 302717006 655608089 108284303 3096069 614303353 931160107 922789612 442652897 787816919 176922867 29945920 847258494 859099878 947536677 791293656 875300911 784221808 352928929 871983380 423295955 978420117 503078421 826367507 353219002 807147269 286235334 782073923 848949166 698833390 829827144 907616235 746131487 379344284 101174258 545266560 932440457 635237205 18668700 230549167 935431847 337854835 480715172 499722587 420769554 828923977 280756515 344321288 260551392 943843193 465325075 712742275 669239947 590302728 128237770 656674479 884812848 46753433 775603188 151722752 670989629 979921380 641569520 143960036 924213683 182443758 850146959 47215379 922748561 189880683 122272076 935674087 270640509 559746363 441131095 593724396 739852515 12450937 253186145 806382819 815490757 83920473 432453638 317749270 404008034 960932735 382418869 896437104 442773339 966544557 944353701 462363317 655252667 538504388 145321276 301413274 985110455 90823132 230334384 142312192 921394419 105422542 290428828 20009615 315453856 57419428 860021917 565860103 463689690 489974306 816084408 582038016 798319309 848661698 599206206 688658504 22097237 194218806 643893521 212439724 634417484 31579707 503911155 884822950 810865428 35667924 351354372 219782733 883559846 441822389 730209649 275909882 152851217 12104435 395775658 350043434 487717052 781015643 993214394 922676508 396349169 713450286 348129509 177593646 176914189 171196795 548799370 532473427 472311088 96742980 697563183 536579823 491344084 56484181 576952845 906251864 94089995 163913289 58323396 36207374 364812571 643807526 660927285 814849610 13473991 805753707 281111689 341096205 42476298 904233201 346396038 938574776 344481382 273035617 428332301 896730503 413198671 602635002 796802827 173016079 939970098 396013075 604051590 494184486 331815015 741581227 420025248 284144696 459733383 280281857 478829227 253916377 113274436 67537614 707628289 807349140 814609619 239618383 891658472 749008001 680770264 282506593 401362935 6264834 768332964 687138999 926527226 954813852 284114213 641333977 342804248 458884662 447298682 738040001 712091948 592581265 573021129 20508431 712101488 654376207 350367816 772256943 145266138 907678066 117169111 15603826 688359211 443509015 229596479 792762234 710905267 918705539 269500006 957098553 545198675 755428901 694425133 846486680 476211992 253255697 545785321 163091150 391942384 679577549 319403574 426098975 237758576 842344851 399178598 721236805 502287440 69147932 660147606 78131417 516738351 342245394 853543435 378945522 49943805 727607754 714402160 561070207 118862153 949591140 118438645 935752052 949337918 808586556 836297704 62326710 487206441 341461063 441328779 262063762 215503421 929640204 534914237 906655919 460474845 974276091 136224397 203548140 968560914 347774216 721687974 149812171 544267500 709586628 256828968 209736471 935833610 256397407 540354540 498894441 242625463 718116869 930325718 259211836 977784940 485489705 438664853 432210873 328179655 7117937 655331068 376655273 826330159 748017429 948252401 398136855 487220295 465607763 146357323 411923985 830976582 29349010 634274985 196415963 544719895 258530168 438348486 235297817 825034299 122074755 251142387 411645205 669262905 269166593 732554295 597352528 480445769 300383250 475991210 30802052 407831450 979990725 102660687 466900075 811913366 528775800 202702059 846584451 305483874 351572918 197175589 351800945 612746612 676956398 65768904 815292134 162566788 173538037 889728518 186823856 216944264 598300832 142877897 980753285 900729365 106092409 347774146 721562417 828547359 49412040 998989078 667526053 920300643 337686292 791121116 237252488 889596522 598026322 302628122 862907327 722233910 445444011 57047392 589339537 648034912 425378292 618080168 44549943 248014785 836394128 912544856 220567374 777248983 457892271 305925561 350850232 439099815 494052001 459324091 695009298 825409300 966338745 241370064 243283939 363916959 131615339 605156823 498043799 776933215 523061360 176145719 526624013 947592781 324864099 574387537 575766901 757306336 215879182 34934999 742924642 413807011 125849943 660061458 390071712 567021824 963145764 709315075 233014416 638489506 713230601 897311268 634885249 207361809 165034410 288814598 397660460 249343257 902750258 196462800 144110804 645306378 553670365 473331947 613876393 118183576 367813658 415179541 971931222 504415864 380728295 792441326 711279012 286152892 683967582 276563408 398686280 469621510 616416912 278933078 371746841 942199454 818819268 792088186 728812771 687811104 228535406 369795876 206276028 812612382 427790939 297508856 949591930 239129051 935479955 976982588 815442233 549474597 858243055 442325863 336585930 549485527 643133363 334810965 865095267 268903491 450616459 870121617 519130081 73567216 998532095 714473780 865352394 33807076 626774567 772287292 655095177 642681284 310442766 423415449 454744193 676693879 377525755 713734648 385333720 145391296 231968362 889172935 780224724 148682622 230316685 415903967 888966113 490821853 167261591 56795429 162594807 965464387 294209360 932928871 267723565 602229060 957389314 711136975 646879871 637192852 952836452 606647101 152242864 357622537 562305498 459201369 267501008 896312602 837455851 798296030 680697675 810823871 10604888 762523315 435302096 956978384 523542979 672138572 358294774 402316685 912805452 73909302 846204321 223522517 25238774 295869010 926947774 769198205 114136725 790091292 135381819 685374905 570782943 218426020 863704893 795968020 323064628 5190918 367346723 223414213 44439785 577553746 553373609 29031934 736603404 151152986 75089512 650434547 728604044 819454567 405268022 795117499 343912428 946713211 679607020 552755917 22358210 470117732 386484323 776951548 826231974 40681017 155328140 545016859 553033524 395751094 325895156 868764146 951847203 30158340 201933692 810892568 17761218 525893380 285150684 910631639 952093789 537290926 128268564 593430525 721976859 854568092 918441210 593050206 931432065 685888187 626779164 855946148 439300319 210293462 794385292 683421165 518406284 969536454 666601168 949959861 749412625 326992217 426583793 714829969 201482642 510998844 116166521 31175330 922522594 114792090 857593038 416959334 478355350 364338559 938469255 703541941 173289343 389260890 168703407 941925303 673146837 504475216 969288439 349029493 647337471 330414861 794214425 340994265 535280403 888148723 710511109 198225433 616102092 790150494 871962972 39761665 595558985 825589642 377104473 225623711 410400271 564816464 792056671 744928317 378756209 738390622 798661780 330182597 844786202 613655637 824660453 157455681 240484020 869073531 662858179 550362223 837849515 442717708 370050383 537541123 80458810 798343011 417014468 795234946 680892057 398371469 253168412 778100757 4178910 914311694 88208783 214638176 315271547 841569139 931184636 551806543 778426296 972045647 219736022 31900806 249841628 11790950 765566623 456279110 913918295 680341108 237982131 246895712 920973700 906906060 636748067 110177887 691211795 102777241 683267188 742636924 943420880 342002031 103251574 598695141 426878239 193419551 347990302 618797230 463248344 241781691 85090556 524597272 135676653 774727480 319976927 436374246 863928859 269914908 419631550 456544591 52607478 296687961 995266615 708983225 386776843 992547177 564737432 100258710 417555139 85004631 19621020 301730953 672207766 408110537 678071540 916816422 890854259 270134799 30511574 985951127 202850853 195879467 964766408 208263987 942371150 455856132 508815721 13051561 198756196 636524872 968821783 766783295 264194535 465933279 173055993 306605922 862362454 939669232 300554660 926803288 964698859 674954188 472337119 33451637 929328489 423373282 207100558 657673766 280008145 491622834 792121895 665480774 348786456 125768102 824062879 193002198 326675959 718164915 142864428 763067278 722923998 900538361 73959447 365838894 335315569 736242050 276971663 106740067 346745429 738144231 181953542 629533690 918250819 21269296 529247137 884264783 579448720 181318579 162213431 853811085 892082068 245366158 847304653 170694009 347730298 542337461 618638678 734638620 241780354 824508405 712460125 760755811 248771942 271390107 503553429 795637293 383657881 769891036 164119362 157349701 435725842 423588296 809141704 627130178 882462323 768439145 310380689 368754481 72652578 714681707 600769100 35369940 862290930 217828599 431601732 154218427 554337552 46302858 283999398 633423060 359861903 967149967 511663650 166941830 360455608 615807336 34112469 242398087 782910070 717842517 423435006 112710418 782756737 515653358 742554184 218420859 447278895 767057522 910745293 448596714 808107985 268772919 605383127 578643364 208808549 58770087 563496660 406456167 55481182 688093163 691303996 407547721 789722377 775209363 893326478 576620909 966698713 521979140 705725387 534667768 753293660 413305823 201739169 194929756 508341816 834436245 292635001 829438164 90831733 485151056 439492816 553472798 995178867 357148766 96739428 649007299 145956007 750805849 806961032 973579865 633101393 337711638 234786729 849015216 137109492 34802536 49984402 603085770 963720669 15371368 998694363 902510479 406266063 875373406 155821965 330470316 688408235 754698062 558701948 57967571 612890461 556764379 712196942 285280131 432262252 131081319 88838858 881707757 115723629 582201096 112072899 561849707 164865352 818630948 423170564 528939624 499124583 214233180 633317475 770320753 520526528 734242558 287179855 339934275 624913188 111164062 370322000 927597831 473391726 280426102 458262048 123295337 548553919 658335597 465685641 581648766 519813052 629514435 202640497 951541311 852115976 986611945 434056912 143958455 918346811 696605478 706623015 275582431 551597757 516365853 622185233 469927436 253937048 215843132 998089935 621331561 482354930 886469726 28808151 344686036 917249038 450965818 411244338 77113774 850094704 53529883 446871426 79060934 573230767 995717234 73222823 511343496 744455573 552694566 76695742 768759190 997809768 36535637 344941306 264481854 548601883 597650907 610304883 185300855 388991277 492237552 280505668 194626777 158952244 984088033 285986171 598238973 157110949 590345586 175481953 709458317 232127345 939345096 755742988 152383428 818140320 174571825 499031933 734164305 54092075 237097058 251253920 237036103 749283053 586929823 492209461 667020297 331092507 845587554 978591473 494679058 205670249 800081556 12657865 625977781 987461686 288083513 606095556 836302168 509305422 170501183 305403394 722346763 719707607 331585004 151330665 65534825 182318367 829604764 172418163 689778582 862534271 600061699 341154016 178242959 760012533 6950435 420067064 496393230 815222493 609399707 436305979 281355119 550151841 729112846 812895269 391338040 374445634 613407640 861560818 801872898 842392398 571348314 895238575 589592410 453921336 899765574 759091144 319949361 138609971 454994917 643908835 849595478 472683136 161019931 899825628 311553738 70153911 664084102 879138112 334460311 364923430 915972621 893773465 783302209 751264610 517659755 483780128 432052977 177660171 112632296 814443065 255504543 470495700 612225335 940807493 744859075 286559286 101431552 422093696 514931599 419022826 721317454 98868802 279096523 592266409 892347453 444296679 75721215 891221837 68110273 95855096 454486017 234096340 934928141 915938035 102556054 578622528 67386706 355289731 236734721 622810569 373032128 702988768 992288544 120927148 391152596 875803696 501138955 106214769 685280990 183314946 124832828 566879788 158839187 612537333 474526836 572946427 326115835 406918480 92818858 665418539 74633708 161844433 335538472 750437855 67812292 189670307 51697170 721508410 151209746 217261052 305660 95659320 786503546 866136037 176414040 661613498 769248080 75734491 726705149 133336450 977394428 705799305 815143500 623408108 614157531 68840206 297180369 189247175 623817997 17453310 669037079 917828173 226777033 929616621 734874816 715738324 989592496 875736870 244733425 405917425 874921883 183101092 176054912 422723111 484973433 104521881 99997013 423352562 846045260 242743407 180212828 840915323 232446820 349091465 36048884 25666098 107807114 388373169 36084216 586897992 549826168 936106940 926643376 592517208 354814444 880991279 778310413 875789220 857146431 514129739 814068364 804014749 111101721 346362931 450609562 446697220 692122631 14224343 278557601 701698644 702513137 766495696 352105144 466221130 966060657 382474257 38447907 610921736 665052854 73963083 968581327 909396439 462382122 444096124 14466030 203899228 84220815 91761504 742291665 979590025 462105809 339221358 685456088 204750775 439778409 814084422 973067263 302949344 498024163 647843360 80335335 609036933 101915623 629509606 371001872 51242198 692809633 185385336 937690531 99859184 178151303 769981564 861488381 357246985 945963920 123708219 170880055 150013230 204629384 482679327 337647005 507408459 871658 599362624 645821859 197325669 808333373 350303210 283843535 220485505 951810731 474540368 784952000 161748785 228176842 141744419 956000287 97024982 576812733 917295961 195095394 137771860 978087735 918801087 766077912 114145903 963949772 730176139 625359390 771612380 951887775 434170956 256808730 29157817 485610927 79863628 488703067 592509641 98914307 929904237 433360990 646079713 809259527 658558744 742996717 284198708 192907148 559850493 276939880 682849140 722858020 911509468 45628694 520067702 20212936 356923098 694450618 696532503 739828147 222138650 813375450 955754877 953437639 714398370 167251432 518188625 7755336 731523176 718128345 781773508 341457029 82061143 768293497 640280765 210739574 780181098 346644097 670358124 649784235 84536682 26456093 663926150 918821172 363235580 334505422 523323224 764911788 459783199 378154595 178944481 324130207 564541143 61717266 84449311 523883298 541306022 549026392 691018864 664823880 40793776 551455420 252746710 96123994 163983855 445905040 522050722 686497792 141303127 235814842 497479798 352385995 825594512 644186524 878619093 433757290 590095230 631253830 103283782 873987821 618577977 589022469 327337103 545065688 251676336 872364229 831627324 416989606 95510698 185858551 666448183 482830456 179723134 576674716 478617726 934240020 795732861 824644261 965149682 798243449 555816687 452866211 167517164 330098061 163207090 983413970 940279006 327431928 125605544 978723557 557699383 981339980 84996584 759870419 746154887 349913814 945083237 612460961 204064995 789468830 693243198 242214804 278234703 288124549 518722262 686724588 410318417 585879816 64992594 425363183 605959786 443604673 217613228 316970860 647999378 796798926 735795366 834894661 241773413 344863914 523495327 906016161 530943166 246292479 19335041 623576268 522850131 506364241 221677781 194291279 836014046 146360295 8925631 505557610 452754562 274715266 854790627 109594297 388746536 876089903 459995849 897430568 701848004 207400350 232362460 491214196 982774632 851959206 787814415 367508213 203512028 958845668 686041025 99209583 50098164 78147640 395795704 870141391 232351477 86962675 460495159 484249976 99097432 152904684 957800544 279340961 424776118 134264840 150277364 411613447 517648789 532288072 640506493 773028052 283252374 611114812 965006985 354631751 706542320 297050726 5687118 214515438 987662721 365619947 262971522 556440227 911684626 915508838 423400941 25754275 996302584 92168153 512988375 42933085 171399022 755138115 263830763 947736286 940356645 60983085 484334669 155207155 45573489 862332482 868854003 986383615 332553594 666409408 124661071 401539870 590898916 46333222 984901726 563807612 774133798 582833561 786422330 10687217 188380076 849247832 792383823 796238031 925101103 538245862 381944824 990299018 340740976 447504201 702038681 186417792 34594542 928196407 667694809 21035195 572848656 156058853 817730648 402074633 212481440 783957557 411727322 599157314 966594094 330506757 324098352 741822830 363443426 21184500 327541618 374715460 537011407 314234593 565283520 499234069 910126646 66811799 108468485 667023581 248987860 430714178 767991609 578095220 441900195 878070527 147548012 240205652 830087462 179277243 512425368 813300952 790004543 880076432 81835053 842369335 699801036 678785891 87963399 898384591 564048456 923466875 710179652 348383800 193624007 601861241 648877517 140638897 932034518 447445749 110256855 896213912 978640394 865846344 578598249 869423106 314083454 534993964 92501207 564501465 815740555 22189124 365065628 737650230 417405348 257605435 71996573 634273153 528336759 822930078 758261344 797992315 988595635 825774650 761632561 457725816 286580170 860703354 952739297 505244998 553361659 486406383 335142278 225812016 449052151 718140202 966075257 296220981 952645202 10472481 754096832 71845048 906383266 169354539 604748800 779764085 733697602 371446666 832459443 978512449 600362000 338678192 765703352 887220348 689642211 475134612 710855672 805312686 711423787 815966496 667788771 666516702 328405889 967266224 152940576 871616166 310093107 39052476 585666289 236483857 753309515 627711914 703232583 772583343 579999360 371382850 404060054 578564441 429469258 451742143 120629408 967546796 58993328 604760744 961939462 933644312 108722895 296268008 729519837 123298176 375004553 489144438 313954996 326526013 857809851 753460125 587276040 291917771 899892762 353861915 982103570 65872271 836729721 562571127 219636808 736973142 940536814 963743251 996040913 838589504 582349572 306228737 72456564 923829517 986865296 716028029 114161150 941327519 610033381 926211502 449977627 477657578 770720644 125291426 949752407 449712672 498062279 640875519 45756424 374683226 945121899 777820332 471785422 469631554 11216096 5715257 81408374 370135973 183038734 618251080 123179441 631852127 108689187 21247474 240970316 89662620 36866473 973183776 455828759 720773124 111707927 284526017 533824658 53770406 817232232 695545190 321077453 455082361 937042333 64299683 976279138 178095751 81165295 588281308 89484978 818590683 7340703 167961742 368760619 28344081 713240041 570053872 864066238 304740009 684307078 866135556 285105119 528840763 560773926 956232199 914263343 472628789 527678422 744427799 646506703 21881384 249180270 649636357 863862255 48934628 216683688 692308737 34776649 785955483 672156342 801271918 820025239 370638159 486789015 391626713 447846178 846192266 861090159 92797491 782762596 798521186 560112118 565523133 12438598 97057700 751640173 328277621 960092963 730438207 942311031 958385213 200643883 613447287 598954704 100170509 502470551 158456689 110002595 45218620 294191217 209443370 160618230 209120243 467155696 789775564 253691092 174066560 382179466 832375056 120102559 918542392 562074714 643385764 898021761 779244129 736687109 980060338 956951558 470949537 872110580 110702304 139858396 379650500 998856021 433026224 338569895 967007482 34460190 220640693 360897175 556376069 80890121 334797303 458786041 174162309 240310999 729702273 835212257 53482808 962585432 513237813 119481871 13003349 797838258 791053916 443077319 937514181 52981562 447371553 571720269 440114824 329019101 794758521 69860423 608365388 539516409 14567256 77664888 746823262 229052686 291091957 416259082 945497562 884018368 543621338 335062399 725582741 47065615 486614247 549829566 392929786 953168656 359432497 226963313 571436111 38054827 709499967 550882736 61481103 20148558 260930346 199730121 154874503 88557841 389285395 320711497 530984004 760711101 948324197 881044844 348557803 640156654 558939332 245466579 629909398 680262999 951325966 137572897 417864571 969449099 481654825 991019896 62976666 752242484 613992669 608532940 890328141 636841253 902849137 970614840 174373217 374008199 74634219 58731080 306248860 376556314 205490590 18400355 818291075 539826038 548040197 816630415 476185176 677332372 934683049 82285418 904956446 290085675 916993941 913159457 709084566 394727115 286964466 971552221 968013892 292523989 102001257 334060109 949016695 281915141 65766363 558847707 210094513 598760250 27051641 408244176 864866746 464926774 280837543 148616297 405464481 358771099 604610602 47006083 975360719 865695098 611229013 636231812 128797542 278908953 211943200 618833248 26285613 22438149 315054127 370665606 111024054 665700222 297747876 524159278 446832960 305185091 911832954 39289253 92139651 850420980 620004048 950101293 418363224 991292227 147034138 555719818 18050035 250898694 173020391 732453137 727842110 101403525 80449178 18545625 32328140 663297975 958756800 951358652 503482209 580002802 711561346 180398572 369183258 778011145 779764572 409698537 818059207 564868269 609390072 951908161 628224926 760295444 749300297 482694760 484783922 48629898 542376291 597533735 25726572 830169296 321352297 546527618 371387475 381293253 371291973 792331294 502796365 881120940 854827644 175694182 148166767 317657990 924870762 209260804 79140813 891849308 851103256 631025573 338498703 613025917 573100939 39419514 340811474 690647662 472875270 517749198 767467694 689423146 28275613 780372339 824774441 284193961 724342464 731005896 788765778 450235123 103608718 124072536 852228279 599767878 770748784 369296601 49496830 204460592 423655769 280926684 38162111 604266651 496261332 112952309 84547895 762204823 69874255 781691583 840775866 519977366 580200502 127952890 362690484 766009976 10082907 754020579 277120441 693712426 15835768 261061921 200905874 738594427 795238249 175316067 882498611 109437580 84301543 541325973 568075048 713082639 883938613 827463613 822849186 300529474 172442233 64358838 989411054 815402426 840346457 90711361 284682351 727255500 190342832 75380549 889660642 831287764 685397584 154588956 277781806 62450090 566865380 536722897 545011933 593965948 182844042 511887566 180809441 970585899 651645185 258607040 225895429 872308665 574850291 935661370 204100577 925702659 540487944 341978722 567321474 454728988 151685024 29515253 909675505 887791571 284560569 475052373 62555854 311295104 355203715 415420393 312760828 756348969 759824416 215813196 669297997 94648969 114730273 7226305 977838349 937030947 473989949 973111608 310843472 499613945 780993213 714718916 913614935 32342364 947208053 804634946 711603297 681511721 686081447 935867147 951624739 877222001 55067207 263996452 175150477 82541076 851670650 632767211 949108341 224944767 770748656 246049667 126275133 521367791 687155045 813579128 922708282 188681250 179534487 693592262 812766343 216847380 510221804 641744206 118515615 358698475 308676442 994814595 791692074 283240622 409933798 786105489 783915721 173092536 179926336 588487647 884853189 377576388 600445700 229016742 461340964 993266369 387750435 169070449 329768372 912142331 616186050 956855164 198385373 19789968 556845242 759944640 530314462 889732319 216078780 976016493 316465018 470996608 417345902 437922989 741960736 596144890 193974242 913410681 323492394 916695059 157851162 370012584 453173870 662396239 1427663 841641974 326159318 111519287 249490702 41183718 680437188 326634479 904283658 151224304 808751319 988264890 285637247 574957454 873718033 477644476 491611548 647845216 428631933 714439929 147817119 148643930 467671645 796924324 572911374 799913102 188747083 20816623 302096326 562994632 248758169 430664915 464909260 696114599 517535090 345049851 446477698 414924212 391462264 903811737 608257794 98581233 698655922 590410032 506967962 654994943 145939892 206102038 224695976 120163770 952055543 40466645 63575308 294135323 477161634 398315026 811986035 735747356 718319176 867634788 70602690 283640065 794021011 781948211 556596507 775858758 185049987 555054464 557299349 835772365 166282938 761900498 436876834 137690506 266530989 880417365 895109300 906009129 97060265 601067488 868274769 166493419 887159378 173983871 364606373 262819005 513787161 692733397 417770285 195988565 967311606 199783015 382361443 809058630 927541523 810527336 521648647 453316911 871150729 376892862 1078577 100482589 545244352 134333351 587798677 515694007 636807044 315188350 697471608 341537354 676062919 591560348 747593821 105788016 5241630 412668544 383690150 216681395 888487317 104787123 739675987 503909768 320678844 624864220 297959579 480568189 389372706 556430711 287997573 738187247 46433291 111996718 331406945 76274701 726389596 297658946 276205440 825706887 337980608 425084090 263116618 520839754 431952583 162301748 30818565 207598544 29459022 864078641 497202104 515146929 42754791 105552488 346556964 360733962 863145915 764217422 289820072 707470024 191262100 496284960 796102804 111180803 511421799 43144577 331098722 479671010 294667281 563983005 272112512 227066599 851802680 713728682 783059409 875026904 625702844 248501427 262263429 299717211 109691279 239847785 943878859 396441029 369547958 52982855 1920111 305748673 176668709 868326256 65350471 496650948 607372147 65182597 334052660 707967593 959357773 131633927 416567910 700794058 881050053 624501497 97221493 837256494 443710181 291493317 583478787 379596700 239955260 678814858 148484279 21429403 31029999 254018516 495634418 954132074 794908944 37211774 321530654 260022196 640927222 643113342 630260501 304897597 926609687 166180135 61152615 19188488 22895415 379131648 391491098 641416855 44106325 486056683 387014812 136227161 656129458 720769411 847823719 328345044 380376654 98086825 266722312 467972240 163451410 477353205 157024423 182887444 686017271 486110497 647037748 548496165 512240541 712984627 802779159 466913037 176787188 337533745 232583073 438342837 169124194 857079421 865148682 5211017 417467873 755005553 433382799 247876644 595548657 294369090 536772761 770600165 488952633 481144444 21528019 374812333 121868023 76758546 338403823 286797244 797200990 498940152 150911193 577447038 353122408 580868988 239706270 337492032 913315137 446269687 782200868 376520494 649361542 569982470 738625428 900946017 808085203 504350097 307184409 906801366 494795421 212128503 464972513 192857259 519351795 388225651 814077338 904707468 983263692 812199599 471972983 697173767 634179664 120127503 820510440 419008246 875893646 293953828 596449154 231640159 611581498 947696014 308114729 289780625 426306982 255042121 807675592 979921566 560378766 871220151 289979326 61797040 603556468 781476230 792736099 416885071 840836174 611614303 109239009 468042873 33886808 527280910 466390027 187493429 681078601 709731596 295558998 704863732 303263521 514619650 677058358 769440326 82393158 528166154 10570382 715600084 953303312 74913029 728414672 643517234 773795616 495742715 835366628 174842954 74030732 40916466 950417447 885259324 460652531 329934741 766112781 95624330 636436252 395455502 728227624 633494997 727857371 106776117 635981393 36007249 742212028 204371183 681857456 318061757 58188758 466176121 639808387 304455362 622451115 831604298 665405298 913162539 441870682 670741758 351117575 363730607 182327543 660975413 641760697 637301372 605018939 865681859 773766594 336394952 203247691 741936176 989836293 321051719 710080704 100849969 712046121 945410088 69311391 938932412 804810247 751798248 373177565 459200421 711172576 72954608 746561200 664343022 516404976 199864571 673986580 629146529 441517374 424276230 71516644 203742971 593060050 991616013 180598384 622380457 115824389 552396201 109151874 123999519 925390499 734226130 751168945 462145974 871068669 786819989 369351216 841021055 33819086 635924322 120839775 759247742 471163431 145558586 983995446 618107437 62341851 759909508 124747441 550636659 579054574 410971431 600226997 19164401 36000362 904138981 876897318 681344839 930232909 863060182 839875367 88605939 352002910 47666089 130328117 924260790 682186501 513356549 931554958 932709646 522098993 687111458 378327629 898111350 527266670 306883144 334583434 585650898 993546173 542222323 63826137 434330324 843969790 641000172 172838345 246429191 779289284 783968409 125397803 637252659 411115551 655951138 688666793 708893013 126773593 33960856 99710436 504546171 206960856 455866749 591302478 72403164 573451455 689821954 211601536 39608420 482224861 803084906 592419884 894682147 415261236 607253839 671592875 183713002 435174625 301942838 449708232 705607976 41446961 45697276 81751632 10380613 267709614 706272166 604623969 650727006 297097418 994510708 584882081 574953594 75933485 400690796 864266732 556043470 17841692 832740963 413343811 889354330 444113159 793481386 355293892 1045927 278833957 527912132 463594435 410351450 446614860 861655479 454135325 314213140 845362051 339513437 727967174 478731091 497157826 47768451 599459163 473442086 910571714 555536458 236834691 536565963 417685657 953297504 928877745 847164361 790810201 306929403 651601089 124834061 158269462 787092042 357281934 70796944 458964864 181248960 264162065 693585306 562261696 196934256 370179557 351635113 330572604 868681078 407723604 714297481 710151933 764231984 401992863 61236489 635033816 636215125 971231085 135054252 466116323 851352698 783732962 205149417 968861952 384103165 350301171 595940645 577034870 933487912 64360118 489759735 687240121 964867269 593624665 725783870 141406431 933968925 543413393 673011716 234512055 771553346 573474161 11292033 571490894 105016814 828104578 748697298 517661879 438522811 287879047 923208504 927071538 535728764 667631647 968407182 573967872 881492362 505662115 865489949 586724747 800423885 577833075 81209557 592115486 911531483 964388979 124706254 931847238 383173906 744240783 955468922 76630941 623577703 128378588 191385372 522277265 493227405 744158087 576530585 149274659 327325663 256856928 401180034 884793074 131339716 424359393 934237224 129914431 742010413 539655657 529511977 991637745 806839885 478789570 748725929 761962232 739670049 51920724 352765055 284697740 327424807 721768552 349560620 358188212 54159532 980024603 287819326 497247154 521029451 201649686 721842724 164827916 824877491 349186776 575915021 532940901 589889793 798286745 153204655 914136588 513077499 807484815 89999002 194902933 416116452 63313152 929627648 213312054 511796385 331464428 944558239 452402067 403317803 914005228 205000576 142474172 299474342 543130810 984696047 33306778 87352130 585157338 186758027 813576464 168438431 239339195 543650045 937987107 657195908 186397051 672947692 877557273 28375148 13025314 154540841 597660560 195373392 717207625 495527583 933394187 196210755 571948423 831543494 863659737 557624394 61848745 684836138 522515666 201891783 994097731 315055041 222616562 517183116 571774472 150416392 86319614 291259953 8705849 556313676 512537123 830960770 537332285 51549069 629409633 628516861 122165453 830484957 169014201 782732260 547308905 716967042 583231289 224287302 256021054 375736757 559360914 87911146 6426819 53609787 794985174 481333187 506700005 104817026 931571083 943882860 832179269 864965112 741301001 826631818 132176641 525738363 363551912 512619231 624381281 391656159 412509904 404780702 552254437 634259172 389022178 541655904 571686595 242705796 731245070 393267140 552995290 224656417 781577285 808230313 897673963 655925915 20633614 818113736 478229253 795296730 633678731 529613523 280381013 251716963 164894882 831165837 908056895 495472700 779633405 306654206 266997851 913968706 829926826 226398144 509471850 963363857 643435277 6798988 356062162 290349545 897894980 778177406 259845311 635334396 339619958 463442108 978610821 830909839 926054239 359150975 613725279 467743677 453778809 359304187 295298183 889418061 950174508 129934055 587247653 813211559 7959205 314594566 534814823 14181018 723351930 578875975 860035041 467018483 392681258 110086581 240373385 284097146 793486987 597809891 474529100 881928894 130056144 258395230 806530653 600462018 680799062 256544764 820337171 946858091 111364575 232367261 196497906 951497166 425365089 403242419 314362207 220499518 598513328 545226030 268332603 495378488 60990998 121103409 104078686 499506694 783286208 120048251 717491290 607797660 865153726 518509976 836607057 699939912 351306046 194417059 475752239 546902608 301484213 635561200 917851972 839295877 550531778 436910822 92523092 378405860 279439248 896613601 755016515 678935282 121356177 98145665 730264676 53692311 862509870 468240606 587501817 822604618 33091097 470892278 834547455 385752278 843594762 708910498 942411758 57763482 797214862 759716234 318297550 317153354 885095714 326142770 348983462 770929759 592085980 947317294 351977156 82330151 338510199 216796525 442356412 920747369 519741344 873143223 301440593 639758325 72510117 869030219 692079433 317078765 720200849 863513381 765484302 387683969 547757989 692157887 129477224 79946798 781337120 818541387 130396229 232919856 321574737 507968417 263151781 535797655 370560880 87109236 539444278 31937514 892256747 308759919 611722202 354185348 260724674 85988977 504950858 907557273 711467949 877790938 462932835 597521217 458965030 219002701 627102560 961451988 985151597 18085618 315738299 233914180 278596091 214442177 952350086 356851465 610541541 903739102 853521264 577524262 295257141 247939990 209046419 756710524 705619026 533608080 740557645 732945233 379801151 857610620 748625418 677007563 827945128 478608921 37723562 180036863 962482241 802477621 291145447 661701338 529324837 258495050 926563039 543083178 928303364 304344423 649669594 877182029 449444963 626477542 108998293 557672497 39477662 925710419 688450988 625075685 12990176 322198978 650536847 416644309 331440354 702376102 187504909 387460263 644421561 163193601 181847679 963333361 27512304 342496707 624375754 205850956 310492548 725452805 393312445 663147149 23002505 179250715 116516422 925046429 650968687 105351486 409421976 325965738 119909147 286743804 812311551 270453398 244282430 175227949 886251195 611985584 531833475 679700115 955119819 966154132 145564733 50414386 459928468 806953546 141242886 12737987 74666925 941069533 398122242 756432589 642350865 100297674 138689270 507247044 262702198 461462785 621188934 527562765 281765147 944377027 636562441 873023997 439264784 12441500 788894353 279579749 84346949 185901158 817558886 89249519 514310795 843688611 472905653 853261488 272900591 601820209 659131884 121798210 275473209 459172473 637986920 331478643 40485601 281949243 916281095 929417841 940810857 993063486 265781387 243661756 949652688 44594649 299033974 974536939 696570522 24260817 127187620 324339924 421637969 188171339 780954988 37721549 95881979 587176294 739101389 192215993 559772636 341500511 471790364 72049029 530335239 13242461 51435793 934769534 543337674 1406342 783661759 538459544 840469785 127295631 928147978 467589263 905038639 465319583 793646728 421650366 469603719 989692847 161115178 228041840 809028862 751709568 118342395 613088857 947835815 340197122 878800360 221119472 987075452 239326259 196789148 727867145 666193536 561238949 46149640 143825019 129130506 239065 889515057 754086832 747705505 316108647 876672331 137728748 471688714 153090152 795747479 363317597 356633515 362349772 221713824 368495045 882986779 882643821 98690433 856788401 622113781 810582863 891165815 313794998 741997567 918959600 38923532 41353978 637646954 136043202 999483834 241774900 89663806 384993627 470737438 50489541 15185204 424667348 607239617 792162648 847039139 541878223 843364196 193202461 323317003 109753693 67499032 698178787 605778419 1342963 483578379 362447685 556064545 977382027 515978280 316665802 302882048 633098806 991357525 269104814 818288178 985970390 136990367 489228091 427287793 720767312 730386700 75899362 65732870 355286689 537414582 973986833 512863413 89520796 704586885 88349204 81959494 1014800 730735486 144150313 975487142 649080002 286174516 109250277 667213023 125219855 798631322 387288888 513816592 343600574 898579810 496794549 871972880 636334719 817042021 160571085 266081515 747992592 30331772 587420915 996316054 275053609 133746964 981679575 102819880 86028733 394279685 289487852 667724624 27986729 216661449 676862889 948270687 490382271 317946418 411062735 626248620 518680101 296052265 505578091 423652995 714192717 735831652 389996433 219369649 246193572 150749978 220796133 349961003 996972466 617288825 50089631 602070809 327806489 693994235 491099642 808463757 991953644 817781897 539021767 813239880 540580572 298500881 853580369 522532398 475884037 656875875 229291317 258412511 478106041 604883501 274620066 973805493 393287711 552310003 626943369 61593321 757957354 406340849 758352496 269333684 720445049 736735812 912342484 510558319 750410446 451153347 776036987 283157579 781197803 994994244 914001558 718188497 64473024 636542456 196126708 803782061 807410640 411304379 716146647 470711741 104789094 890327067 911840122 519480858 499727381 640152011 759790040 597459966 502525401 795430834 224404219 226668835 840352247 562091408 536857616 846079677 760402802 959130678 514283162 937639847 694101190 708734628 628054116 704918082 524465107 881631574 277208039 798042997 234576332 3624152 6991610 197117159 499824538 902223454 118792403 604618286 297917912 366743154 264813788 254494378 132212206 300980780 648997753 28301008 147866635 64017525 882338915 428675378 497053944 529007114 874888350 176168806 216309915 249333208 468706892 11757744 950843763 904692783 324606842 882575159 264480450 12407299 381045605 786649783 544281944 541162235 463744031 994770408 79224168 979760266 851008208 501225964 779455026 131788598 474457457 117011200 770668949 354769979 953961292 286075925 705869964 503813025 508304100 286228824 6626113 805286905 552289843 908595830 877955008 43728073 459868200 530308029 140064296 714249653 297892888 63648673 440533183 542779113 261254507 973003574 463853756 467436247 523796641 344755365 616037570 200495205 642942483 609954210 285381831 13238772 776370975 198475460 735538493 109513496 841014527 932375427 364677031 203199736 102802507 200336066 350639134 231302208 75597711 808068718 916062076 658437641 922579889 462387387 119623487 260098600 82919018 861127941 485394175 851500589 700243985 475283682 836583178 812927921 222468113 644854209 599567467 742913165 626995576 201596303 226634494 748430411 923075918 313855540 670415840 966204003 676997677 798664645 220766776 6690040 38236442 957960156 884689234 370465766 484144265 92448161 796112075 426566305 559567346 596600845 837263482 338208219 332434915 275330020 393444518 666615223 825792816 242266084 175056316 531468567 13699116 568581419 717147793 347886229 326195135 529390209 118801436 607472314 30390023 760007556 877805516 320889546 807206011 670047673 858515984 216564444 837978263 181366698 172751962 426740693 518304632 636317314 404127323 436065597 340926650 779285230 352996143 641715652 527203724 804586760 176955452 966737230 968659987 488724966 745457437 427632977 650178008 305630728 491081013 29278412 665263639 649923501 673966685 134049001 969013710 152086272 716360080 545239489 616983609 790057243 73614246 593826558 83880733 538168166 333135168 502960777 249778100 328449017 667338647 288333221 32560332 341806446 240787949 161895737 817748643 390004408 912500157 338052627 153997013 62770913 548378638 401789059 553625952 954312188 313680758 77425307 835888791 660360039 91571025 482825749 936537991 205102104 777830243 683058038 74335397 694299005 446036062 122493901 57121463 875906238 682955390 580180274 139439044 311611183 584686757 979611236 18667802 65142526 791362940 60123798 202123363 7396309 144520625 419521728 321273793 577552473 265231533 235335066 510157436 818252768 37675707 457135430 910043014 810320657 744991808 616563545 844214790 156828769 494035594 664168318 949378195 696997396 349987075 724365191 838654258 536654177 864127219 214478590 123711925 620888571 721537613 595986305 292147481 317397725 950954290 544077979 915313910 152125155 67264945 466021687 763430556 423407557 523280817 265156945 242995715 18638176 91496599 827234875 380594643 514163429 837825532 540419786 954695392 436042122 809623712 486794291 820075261 238040129 187218350 467217509 65238869 999729918 69365686 266566396 841750731 557292739 680016709 559771598 212258642 237580670 717149587 976232295 589779420 596217498 525979435 988573114 458223958 876192556 76414504 879607952 371838301 522881165 918672838 688523933 242441618 498568710 49807487 702337519 887310140 694443750 697741730 415154410 693948180 395575189 229215524 521092791 327220868 508958795 68457889 526500994 787131955 961492060 433674869 890928201 647353040 346548207 748563634 14884507 190787500 31017596 868597035 126894755 635853204 251508365 196602124 94636175 108876619 269020692 930646734 439008291 772905748 607375839 396609412 542913258 226026373 97486620 446356771 912701210 992140105 678779162 736316461 805559059 903673942 568823358 631142972 823207077 460701530 423509655 542851124 580128277 744543568 194546608 354564466 82313 299292325 306994120 289702927 123786589 838173576 56106499 992482965 521641801 230107741 756098645 785019130 357915615 744610770 752999012 864261450 649345998 570728831 256986779 787882419 910468484 974966950 851333418 759899080 457977626 360503615 836054766 957228029 98481400 244444798 473785607 435433513 383961537 599061610 194718261 695628522 933024858 873064296 263478948 370409863 724031442 456190667 924418374 962683966 545101095 19734147 69700553 209106601 574510971 462484075 390410811 601598628 118523047 263327529 594907216 506416439 75757823 123911988 337906599 812388121 239480708 73351958 838374798 715503183 449585284 130495603 204326227 622423284 838681180 933562717 299173594 376347236 970134823 746647581 814204957 823204510 283561341 259083509 778929753 606850955 819254965 925253371 851507932 329889641 104939300 262197313 64393072 251266169 320421909 319239920 985874580 638883789 60013008 742877208 78607673 476710163 141643748 759759863 497591889 797163061 397729472 846518877 939670003 8600888 594732809 259611358 147398992 590772114 373755481 448453558 677544318 516129347 672027710 56491424 494729620 347520398 549743121 581010445 460723181 251006786 359508725 508736199 587515627 462101129 804311768 455084178 162049099 172929733 867416238 475473791 45059256 251110174 106378446 5885219 349321920 948205147 236607206 739018506 223996330 125984433 425081779 886273406 694106753 352399183 24244377 884748487 405496220 263075965 744416404 455695206 418811869 146509282 720491317 884035885 844730238 693686987 746086266 364749535 81562597 999472046 200830195 517796677 54996532 796120460 550860587 805266188 504986428 349485832 785585395 357314134 831124810 738868864 785028393 371695877 524339400 549445604 805859205 904047135 771284383 487524674 184819416 863765874 543411368 94491383 635609176 726184915 225453239 953790092 762525172 546473741 542807033 834262918 207923074 27359275 840612038 151341072 562664158 223071871 49549148 440753141 902015482 645989937 174279798 209068439 975588391 448360087 38401254 234334791 643392350 842898347 679748856 544868309 887524922 722113097 82224509 704103576 325469301 931099040 314624023 639564222 296178563 423299165 186418005 761216182 703118313 828575715 276964845 626540108 142425922 416289668 628508693 466325629 56538558 246464697 486327324 244233247 9202257 620888899 723412799 49385236 871925475 101775705 939906246 668661817 544718552 38458649 728771207 468085390 495339443 483552639 17659062 291220005 261194836 903900790 426965546 25378678 54178402 41760614 755773835 894172391 454844251 752517806 43123891 568677765 957287812 678948639 397213186 504409477 867065508 971902452 242193828 601127948 303120414 946161080 423615883 895528291 901100814 95181601 807152076 778086671 57222750 147639458 114113398 713648196 990786939 691451461 398815332 772534659 33521762 949407566 734152785 511487036 913793903 357613070 117719673 554797901 142329315 475884348 229351685 973289290 298793716 276478535 207570043 236153791 324807883 833123854 94137743 362508231 521092547 278752359 521794793 654542723 178819548 651352026 553429191 218035701 305142926 490238367 154796534 958678423 396731129 673049108 334787403 738265591 402329067 530284752 418592057 889682376 656156092 715960140 615726519 586047071 567740848 826991866 778376917 905245429 286897309 927290487 149548620 774277062 963045686 784067653 336051085 43901832 314081893 644053104 13251946 900084369 527866385 360200642 104643443 365938903 222219504 813090535 226452182 580341567 386206297 276229753 260137402 646765806 287045296 267994374 150814689 996690518 43741702 142163770 249242384 901958613 605620275 31322515 456710726 409278673 510085829 28712839 986640528 446914909 17324373 235687129 135062751 337816354 305043623 960811890 333867753 382989984 633244834 481205054 620740220 592922797 317959883 104835370 483873707 210651053 934620789 569109273 31509482 73054809 671658481 625544918 125630325 984906952 881526471 465376028 344738756 384703268 758139990 657370499 719644403 745229704 93983100 641088839 879803255 464382224 418992848 481136588 876295221 477164427 478215596 880051282 576158112 233042461 123675730 927255890 721819525 288107402 147283926 99291244 292872648 912093905 568777966 399452357 96635254 185317400 723175631 592168981 305979205 823842960 762402478 992897203 562650755 249986667 778667993 263005360 653064508 7713498 948422573 981066787 631758602 159388090 186450709 561209917 202229945 68743709 652739083 922541147 296171286 688632609 894735237 730852165 2629080 404300480 834449313 894026469 717704335 975890538 860478751 102302928 162728386 494320566 979994671 224804426 344516194 550783680 332350070 732506062 231999412 211418166 611999073 791108658 316162016 893864269 51932335 23548350 410923639 568649520 815110875 228338955 288848843 907190128 77900213 608400399 17427804 862205478 543582444 736601402 135040286 663184325 60214480 576144817 994204843 35561519 747761067 454924634 405081363 361580655 4181690 835409135 97885735 343407417 93958181 217560681 24541864 961873988 642185900 427346688 397075124 620530389 897330220 88026758 519456454 480741548 182149704 314229754 868405164 676622507 782278936 686536158 929545457 413419679 746789934 519853765 847078013 767102605 100944872 480481512 283150989 826305194 983767438 119803944 662660576 283045926 771136316 776846808 199326727 504754003 782862448 796561139 472781260 970473509 726844178 366199624 766740923 460088847 970846460 480828206 393461618 203300215 908792709 980322796 555143504 9708880 502585354 503684820 44549493 966870709 38983333 14518904 209977297 179781710 385806446 941778893 311170819 89894893 959847043 476213443 198053013 443130486 537454563 520497739 45482552 533624709 656680067 133823893 511701590 697884214 700995097 707423496 576249424 548229019 132519988 713748978 690143057 513016500 642590991 834074259 146176640 126823016 431776447 810513843 561485927 523970392 253170135 898180913 138906952 669145982 752903912 495394080 856214176 137788186 53958507 137124260 572108931 534638765 480931874 672074252 467979971 988238965 476149008 504273609 492063833 998104118 74582020 35093581 325158707 466719266 434200252 442648394 745302905 959080559 879620033 264914331 997578893 755907041 628686077 111877225 736552264 976422883 165814672 282782376 534015969 345267003 968619759 452183517 924405800 509038279 142660800 790025082 98976646 833772976 949957824 794492222 653798779 137413992 540648394 637732643 413645116 59908445 795830773 766134628 612953761 144600394 343154265 329751652 121734672 380756493 858289336 309882816 153709761 563010808 918370718 94493665 283124451 546949390 183169375 391479467 20607523 687824430 253280458 202190068 996328315 401602866 379903876 642107130 436877695 684314099 666799609 768811066 932764592 534640969 834506946 565944480 859660107 270334971 68039607 686917201 191147062 813003418 49598086 103515879 793443182 227989515 78499836 790916013 796518646 729894074 886460695 322681765 932159070 944305618 731483223 818256977 20302 580252402 957598711 601069950 75260086 695308490 129469236 537776240 708684046 8150583 254620010 107706659 945608952 624028227 233100868 254912533 57779930 881025821 218469454 840983776 740396973 978182956 322895277 2069191 672141139 628330330 557247216 147597351 331768755 813863573 750886376 950095731 628573619 866214907 350868623 121293831 657659822 756207111 904966313 772685593 72031887 737495858 715669594 533970225 376968007 896072393 501752194 252682803 367306735 994540609 134818466 892644792 291395819 519070239 894482901 445567705 95288446 467225659 474168372 753037320 512085184 698934822 793678604 108461205 747143098 278712125 692959952 768600841 708831558 527447067 677482196 448944638 867267301 411501482 968878596 269279165 255164117 324704785 536395883 955210175 283030066 791780219 178409746 244538106 951331288 818182485 157989348 759746430 572443334 217744264 672855067 162301659 520587168 525286893 87066805 311586810 204627029 978794339 465715839 685741487 664828641 718817866 496575876 909556013 596937798 945676127 399458631 52235916 738356864 457980912 504175025 130598212 671308542 81396663 443280881 443457492 738671418 476260930 197699054 374743758 374131294 138575049 271391544 171021599 427104027 490358857 652267855 499326860 267365904 999123745 673305420 503862192 763221020 358010921 757371466 215122291 311295634 400451206 412068271 713375322 332564167 556672518 922702498 251854640 503004062 305114258 187671848 88895773 544837272 148050660 295190325 940216557 517144641 44451141 915770007 627706676 716406756 249355804 735849089 707553343 762768476 310857620 374999894 176775773 168404042 599439835 203366062 263412669 429631497 698266660 60671619 548770943 177921460 960139470 55370210 994092038 485337009 410659473 238070406 805171949 895901875 959131062 812270416 454124554 760970694 138242026 985599624 866444248 298478658 184549776 453760978 930081335 89432466 147569432 996821932 675745281 875328989 569211859 952751167 502855691 427199666 513853140 304934225 346300808 63487112 853169287 66009590 123386732 860337872 614035689 646515689 370337320 939167386 756629616 982326020 22678637 331863041 537625892 569831002 992101294 231985108 379373522 595928561 352730494 627781342 993848341 736162573 187695968 788687935 703314874 63198552 88920393 670515900 862255466 506336422 395312235 579756359 562874834 432396360 432001492 925807481 143390717 675240531 429698205 347015585 170968751 198669020 477474320 743603705 553610076 363082131 96791875 2458061 772595127 979519975 777228477 851318946 241002070 877182211 815105442 999895242 819033530 69832610 644184543 888050547 307355766 574125850 845120908 170281196 869344508 778438736 696218604 478685030 203531236 209814617 545986832 677639163 313459512 483414701 310202888 770869357 697146174 941436451 941180156 683336228 233545696 903588783 122734734 783841785 32601701 158613029 538461489 355073068 765847467 808620623 474380510 949189878 461852230 889691746 488231034 975704399 643179567 587304224 215461359 838801343 789667662 748441539 319197888 167545644 529568509 181689751 294891181 454517376 109563073 73488947 405798844 324592972 744250559 884902928 467183504 589733274 588854374 831910316 382102618 833166799 36426774 336002363 406747166 455585213 643565291 844838927 418456441 299647979 13541195 51803358 848410790 485628689 499564412 418549145 735929864 613249072 847668220 14887169 984590746 742718729 531916026 580972497 52599356 856075247 626569541 517997740 774800703 215699919 5572562 581271856 879017346 150745012 560584917 844556415 872330524 451140059 10571727 636648176 745618116 572951648 706517391 589451795 602482411 3298804 277859007 321170198 924828535 118101583 243503281 337755442 656089906 468739033 58343542 97135417 613536303 143898148 359935104 100561495 130828707 607363032 625122296 503505588 545164648 144769642 670454635 408318497 721513545 491947267 277627157 40601210 985751433 26935439 18885081 425843332 840926067 975957115 118220523 635125855 534336462 282013420 987806871 81210042 843868962 430093426 856573110 480487932 671418926 110919065 583402683 424062656 750046340 282020718 198882336 9853468 256680116 119694700 360391261 238635844 25313691 425701947 307941064 496205207 591731368 998277811 530179547 537972957 309873081 167631740 507595086 693944029 114433941 280517844 422417915 77945231 782019220 246123199 114659870 798721238 250081098 691095151 834653577 154974972 889021355 623974832 705523856 783037038 466495167 45260957 625399574 489601839 558679395 793420382 128769739 170430328 716730684 565915378 459016952 408141389 4344883 172975692 861353604 241955455 212933831 188236379 114064106 821173239 293281793 377485929 738670248 147864652 311160434 503529165 703957883 985114881 596929179 180521206 34430011 166978782 5121229 595114756 319857763 444936197 841773084 844155500 509227108 319654421 191725024 629927931 66232277 511088778 177104630 947988142 653922870 801976199 596452029 292794713 464574145 311196446 521279195 601171696 239304328 526212875 242231208 539364658 389105067 639615654 64924236 192127586 577530938 990554046 652352555 842712812 970752565 811768682 876737571 775042157 801114814 444925015 358376871 889077804 720889298 925296118 844955675 718457863 840420671 83316304 604855125 602360262 924777066 744720797 243583750 707520932 392765015 542136575 824216769 429969545 591214062 266347114 455693926 819449669 434135294 418184651 901235942 483561768 295312002 861395356 787799724 824296273 848514804 553221667 189143765 463957119 520102141 109979934 263091998 22335431 245439712 395134649 16695695 491791400 567900011 168046194 714392579 896956967 385533237 956679480 502838824 254035730 991380188 605563415 911738723 258788882 891870286 377038014 312638336 582381423 295695192 949055391 392131892 179929934 118480393 833226767 617820803 731472465 170521364 963725156 279484097 770089249 103984012 589851952 570468092 246989496 644107206 719500029 857843157 955591915 184924550 313085304 540102178 801107947 256928635 794494488 103923064 259420990 479149041 592144663 694839867 974733688 283141522 249276637 393527274 256822850 698673557 575045086 318557637 625519844 875617810 638294259 468138191 356051940 256871039 826003146 64443128 895120462 896196482 106961564 32404630 911015210 365623382 179321233 355169793 46901627 112650703 227159173 267260454 285177798 336118819 861684763 475845389 106461851 359452199 39898294 643878266 830978973 561801226 818921163 728372647 342407025 802448532 675543808 930361982 880901594 696774414 442676191 873269141 417185022 215272168 403867161 48978948 285731567 93447888 497053335 615731215 107900253 909486873 585852918 334744195 773622927 976364253 916439626 371778189 776410765 783133813 428981991 875979582 639521824 124779008 155205990 617892607 908539210 47224312 489451843 400518876 953173501 431392715 35978857 347880285 942633346 730900115 595708860 529881493 536265892 882910001 695107724 417655578 255800961 239122108 515985436 577031272 104251735 284604600 492838561 952573309 708403812 44566046 500462663 869007163 528915315 771771897 662935383 266231029 374642040 350918949 627470186 74798737 170345813 540691527 895455540 400620201 901818999 5908314 896548416 249414498 293088622 188658811 452714543 339545569 448533863 548792869 620753936 887734098 640531887 684259248 616439998 84378148 561425385 375199932 791764696 161771023 261881655 123045425 405943308 755407656 632290628 709753170 252523652 565059516 819217354 897920699 463114455 827318237 321747497 38497216 5654897 907567836 172520007 283245071 974642756 774303024 685347289 751679258 436054386 410043359 777290090 56409731 259355032 786461519 833379612 827380302 181751555 541569617 458248009 954107596 43889828 970012362 423608660 750164283 823765422 405125717 466985080 747365198 945058897 652427632 490632773 559077443 967377799 581487395 694634745 567561475 805250981 431014347 837449134 804445984 599466017 678965054 157515513 216296721 219221019 161060157 530181609 115325794 953621780 614839551 840337977 59149350 112593961 379973728 752386745 39668060 951827197 672396691 574480355 199369276 659619461 838345080 488045119 792394622 432439371 125473349 532736669 688141052 707069481 587780869 768241120 502158415 60916731 957179204 534771058 712529186 214195537 646840575 714432612 100361995 885549859 700517483 537308166 110070193 648122661 763902764 13534379 56417712 167167705 365534358 27130100 287126938 981218631 413865276 550297218 266018024 563931663 848441627 868833805 474346506 921730877 819597363 103843832 429074490 983753732 478862394 963394925 3959357 480475314 78259479 308708042 415669390 438017999 659294242 49084988 359148186 379530553 374421897 242976234 20122994 351293243 670987902 743989911 278085358 619077231 377333844 342439258 862777959 736630850 803478781 214852110 857152321 896639552 877931450 528545413 168280922 361271189 832121997 992242064 378644748 484729760 850980918 869774153 126279354 973067751 529275470 938847730 861555472 662331987 624242657 883162641 982265198 919826323 123997860 572195116 407811487 344395383 958395548 130263169 149763219 101903046 524968194 786306058 235498213 329670310 45351163 338642970 754826571 743018026 239181594 398244820 10970259 812384042 460727884 248821394 547203897 716541831 907904295 335189926 938494379 140970912 173662578 585634411 2338813 470409847 811281114 877798366 356848855 435415506 682369263 646435487 804461007 111352627 751484033 369636308 906270581 996520131 388355305 922415171 889561792 689200362 629883714 205843107 894574400 419180352 871390721 213768473 719810912 636244529 969730802 316122524 459829255 87703617 915813331 571122642 965921320 832030527 784601738 785994821 998999955 597533477 554164115 465192832 947957532 824478374 370291612 931182857 255441513 800513138 263913598 645745399 807895122 880001298 304887249 866973350 254103412 316318155 251943422 662615837 3509241 702902397 867433398 784937787 196779179 299919591 575808548 920914194 346646272 814508557 217783638 80439654 661499415 201439045 2450013 25973436 746292376 607084641 536342567 756216333 45447129 14672504 93257434 926232097 267187955 81634287 119613583 677051456 777759516 900750696 547694866 324033387 473840266 847511476 163856859 669236974 223851069 656159469 700646687 365212443 346293799 31827929 912557439 678775805 776393791 410601161 119007182 882773699 485957837 747417420 640048884 734987273 633831581 801255567 518019339 261866618 936020034 366106310 290047137 1085694 485244381 603059197 695793151 523382514 929334703 710647063 763303547 529783540 668085193 451006308 935434990 136480767 122714088 729909786 699733574 614918043 343405992 529851783 326124934 797205475 630991063 772466668 928619531 548332936 550937943 679818827 787231963 236169373 115024985 934216538 171270805 726022549 94052609 337953811 667110131 298475531 547305435 60231615 878072638 561466108 9854353 218114249 590165883 804378805 201611508 384401203 497717711 421853117 880937094 653380008 768315371 375095974 400814854 805949539 150910616 161100739 184051040 272746164 415357426 477893494 688133828 330664779 805565265 851704236 744360505 474620109 737179154 709408366 1147708 366081666 719765868 695183664 711904961 208154498 878223320 714385791 685820983 500491967 257946075 708964711 686239515 428487616 583610942 486643890 316130449 382271260 501685889 758460126 152397077 473691807 951846732 988181681 658435025 567123748 147372699 316013939 591312650 176325055 29517887 622086661 406896100 42461294 125187126 594153795 50426068 889371690 538592576 522663213 999325446 943692652 479590223 351451799 874011954 362491977 354491293 511149408 306576610 306849816 934685142 456461221 880391499 975973344 971402442 809957313 800699117 37273902 81577841 295520769 820223235 260771684 234349101 400618881 633906497 451341569 201524260 377864017 918853301 337936749 535690427 492075031 303454802 481498560 887078488 914837864 903583283 97680930 499836839 951003706 864752515 211923999 751801111 611146068 207941180 985728501 829122310 56362432 12714890 340705275 999323966 763614274 800840641 437667996 59647449 424283280 698292945 822030148 671245580 383529032 991171228 480350427 874505153 506541511 886271362 3272831 23987576 595997464 258248910 479133387 868007160 713233423 389179411 905227174 377020141 713631181 171066448 943238359 526777770 363013643 479013345 432803285 727797636 237577710 688280198 902070912 212244415 69330406 124416472 291696765 692044519 466012441 234953151 455839580 568340589 772470137 353227289 730580208 40555830 800029620 659291852 815258425 133449305 276158704 268897733 511526751 918094083 925211884 805585068 682964018 403214708 616366484 414073744 918380720 742554801 858134520 991557342 599911750 577181471 378314242 411922689 884667565 132761942 740636888 521994940 75895917 398071156 353618254 642847493 137448118 661277352 99028336 592954920 130139787 49588124 713236419 908639377 751872183 608699206 515803930 480854373 593343381 212632666 107252470 908258212 428008221 765523782 647720939 538461854 728612565 277098675 203568341 259310397 902899691 356516345 583935326 768103863 486294310 935319303 845018978 802666935 123434396 220807042 897000697 929872481 470650496 522059130 486467251 25425533 900610538 144114996 77027138 781738917 928288831 833632725 526705761 749301439 464314811 36996094 382658312 491874059 620502782 902394684 525684699 666576122 869364315 303244370 887660507 833593405 653684952 887441970 852862026 954558256 759125517 161824591 351822915 309439524 996672131 972042213 810878560 217549621 134060265 791601317 333446383 542730581 520104134 15263372 104632831 18950340 930230964 52001229 722363382 56034662 395348122 68273886 224190519 647131802 862184675 654939848 958402322 930985974 663670181 557826868 229946049 47395414 961545766 255463412 108681052 524392432 639061706 207254834 475888049 509566902 639439366 542004883 973094804 126469020 464233070 289211223 620054932 491327309 832686004 693925686 496240747 414125699 659694921 828978737 345220243 22420991 661161934 913991165 209167703 446772472 885375934 237454445 823473340 122003345 22971845 716162625 374842815 328756089 249535685 808559409 624506780 534937236 811626561 740645234 473130586 743491418 901602111 881751852 618512996 694165520 345352375 796124896 879468662 555196394 785696521 345731862 111726210 220526516 414146554 79619637 169892938 459558398 623709004 439201078 148072573 635109065 889789251 846125619 385635974 251137177 631887812 543863990 980113519 582904580 186875030 151328077 210911679 412511972 823121903 810012827 693552142 768496027 92939969 731280023 517766285 386506965 89948780 664909882 817899733 983645125 285002449 477373528 183226722 903366221 279725352 482782818 654102330 258792514 940601811 620805335 8586862 153827923 590739189 308301350 432275965 6681254 846947754 200439511 114889720 96099337 510487151 102856041 390963765 354668631 52718341 434333728 76882005 827465197 969713343 22044030 263411373 180659348 143703605 799959482 304599083 71817279 542015093 116301913 27874462 260322645 407691196 706162200 689341563 419350347 391017067 174188179 834812576 169645098 956278442 994383862 74855201 928418399 714380631 638987920 453455569 235355348 612817944 111148249 856161352 654959525 306843081 951775724 528079164 952182568 241803234 162278051 247299376 983673831 58270153 377962322 864916718 992225194 422137165 80963877 83309406 906112810 262894269 31130564 176893638 101463940 751838310 181569061 694416895 682237889 943360485 91521565 572981071 355316516 119120320 718082087 996492517 306983058 517315405 480962222 285904445 149879911 257162412 547665832 327765975 716941007 719396883 853223159 533077273 530271590 850900385 985069002 194965943 770561193 972162943 641089496 261350239 334752515 642275020 508972229 517174703 854069045 540478727 42407145 326478144 920593603 730868085 320247401 688463583 437654103 632233833 718123382 635625057 707054851 329129385 563760533 531320287 387617114 353454209 135334863 955779172 587576348 769300468 127006781 562616563 344551780 131792209 52493252 69157121 933544735 13255549 932968411 898500364 559885749 778335173 512273892 614584119 708587876 571002324 428031994 606301142 665406781 15127959 567507705 843012129 779251229 572998355 860786533 991506053 446077966 595497686 746931139 691808484 97604160 640093170 636915469 549612050 962157182 112489974 609178980 958702042 735812864 575900077 171241426 522474435 255870121 521427379 185303880 888138461 950569583 577117837 245364892 701307372 510571984 618621047 986305760 701241548 118591424 733079948 431230610 512012706 444729620 586172379 659778261 18642353 837503151 642893730 868259698 40763129 104501500 834203345 788534690 993454168 133548009 922829907 974383087 794175812 500839001 459124775 902711144 614402871 711182392 320470364 526295558 17907496 148222719 821482850 21640097 342616522 251644429 88578303 590557082 9651789 882378341 974850568 465210389 80759771 352203189 797369088 558594697 696741562 876165569 344898688 615851518 94657918 258942742 19656058 296598357 688400463 400217780 293661913 186785894 696945754 323621109 303360134 270590936 473574243 446888988 532933036 49131560 68669191 554141989 208247047 207457757 745516176 114486460 959315856 138490899 249741379 490607595 210597809 22701932 401651319 933338490 91101657 78887695 5511462 32837037 797841661 86910226 800859728 331652425 871527091 918445961 462822702 110227348 879724587 861317756 573741372 62945937 214217909 90892292 816560638 612918997 662433016 39650677 270297941 741804575 819170729 112345099 249306581 269123566 250165989 825004246 955000102 186215966 902087939 334395055 5838560 470202178 282249046 800956094 916347545 34351283 647775773 931158365 372773524 402947094 50632050 488745947 407508612 432753224 955408839 616973214 565152883 716252943 54503990 93192397 660102320 336103501 383781612 538980112 267021563 984275848 206698908 32366221 367357922 132562526 781383661 601722616 378608513 829720618 474314707 483408353 497057575 25765617 942306579 692242330 676169392 867825149 739054905 485995646 515370933 208134390 851610994 489202915 944012021 537373443 308862805 469476062 148602750 137286386 570341159 589159099 419976054 753764869 471611662 426088651 105448740 933360805 821981948 923366376 317989802 472841586 548570588 421470743 98837846 22713168 776974069 196864462 568992911 68821780 147792845 471485936 921737946 728007421 314612760 504933889 252688459 408569631 527160645 973387053 44613875 996255879 561500751 765479575 221123353 232527613 259305554 150810115 737758158 152236033 656300529 20855259 483463158 764066007 569914070 389424147 643275828 362713421 261378633 866025391 580871393 493136719 776544796 869557339 956087672 932903729 772018352 788212883 14286660 599289008 165867763 417393571 327432127 246789086 150051003 35091080 944274754 573198821 923290513 110573764 723435703 162435499 335035405 92115385 254100913 662991391 183612836 698224163 271071905 871991050 5498091 25383219 83457616 64218958 406129638 702068277 120032544 988962879 951392215 402049743 621494432 963495787 551395561 790777130 200467237 441030584 732030364 474755246 463238943 861168766 56315345 991431441 348666668 513002079 380565665 598833394 811595192 661411222 640603184 886475201 103376691 314767757 657841741 900142761 696110209 397315189 46583936 952873651 295264938 533781751 509514293 703224887 143622577 171645810 251049087 287402957 142772167 438051004 517660378 284262198 275725199 480455140 336308435 104390331 192650523 709456230 684454260 754437646 925258689 52435972 501910670 628328088 984269536 537585904 659173182 71056899 577139194 916378377 506662511 409776565 730827604 853529387 146896070 516536150 46291296 763455580 689734623 775475670 619270123 618379655 722970570 2326507 232039406 511946367 704791653 813427780 985237513 846980243 279398148 440975454 905990543 518094969 304689853 377427084 121891393 863166954 20198264 662697614 360207815 238678520 83783336 296017613 813037206 723837044 554373634 189984236 717466744 393841371 461247454 690661283 712881424 567604008 425650109 128585289 490013051 94618753 291556300 373783205 741576889 344976296 126285677 724599277 911334343 411518444 16898412 730996825 983287499 239389828 65950265 108388833 357533369 448306736 179652048 117784503 112419485 328308637 481951364 838445339 560398383 765935408 414258023 17493807 240612775 22988440 351262001 500716213 796367778 164871026 389934181 585966008 288423338 796934347 799005183 168545173 20100010 151157613 234058325 323535861 687148463 753353796 632880894 126025158 901699716 231942650 723196126 543641541 831612087 324952309 205903805 34463522 441371883 618872149 328444347 832548148 551137533 875314681 461632468 552494108 962604775 370861599 59001260 597233029 646725419 907681432 685319361 625390750 910221193 360815188 914933082 521782202 400091237 102377536 417144257 64053234 374095259 567078634 854712010 445872620 625855044 88066321 666593553 79879922 459722600 434811362 318267543 677716588 212624022 912809301 114316087 4071804 616551056 691638677 587197815 117574455 866863469 919219942 497362589 987604034 34962641 373405682 255364989 553709413 702346792 6928101 775135067 937406783 35074533 558165169 141876707 111692462 350967214 631164341 613552416 751606944 225508539 284121291 347430614 66115644 805661069 850489158 720410947 912662569 626990424 923216571 744582978 723532741 6278947 36777584 679889470 173634785 664719092 883088430 374354 526416031 684419060 488238196 671044827 335014401 881864665 120631931 29043921 247775147 764083906 42694700 180418136 296937281 463618862 569216195 480741387 832088882 845937302 286089603 991616912 31490768 832839244 136483746 112709659 88152707 130165730 80187172 440829377 970287833 3106339 979297744 667945892 1549956 423216001 949001799 361822167 525611949 146945196 295621192 941909105 965923832 643981100 206274431 427019928 405311215 654936758 86423143 887371955 260083069 849311894 199591651 625104199 887527735 103384340 199642025 110885992 690211153 786757991 11070514 91012378 401374798 602462647 14656406 128590200 354740681 419799774 751065051 101020155 180274865 261715035 833326549 530334590 897591090 211713153 775084681 378910850 544265270 341729088 331797559 940357443 715202504 636602701 558749502 177772271 481533636 565117321 881934194 764072245 555817873 570451082 188568563 79378526 648822676 392346693 224737256 796998626 811444353 29393868 521663397 795800051 713533118 28225011 765427576 53566147 668349293 490470909 247639932 302894214 737817727 298175951 599804485 109412061 504622871 413072779 284116520 50740433 246492069 892648474 762874953 512458636 750961635 615284951 439884383 23320703 964684636 689176718 347133317 233975235 534682375 788689878 463650174 567723920 794354388 103353635 89562485 986999609 491902143 582713119 568480884 69028245 791973893 559440144 169832839 253809661 6255697 302991376 817758293 252711755 203389703 74217257 275862218 352613206 381264034 720494608 772202640 380404004 564743598 639448624 245874121 712245796 499664420 997767233 141224945 912551421 340581716 699906351 568207453 873347812 492190881 330098161 784540609 849730523 340122320 753418784 524177965 469075852 852634495 715201676 632089267 873264329 242123152 698403046 244608699 273808672 720132395 480052050 733545130 893428736 429628065 225171962 475062437 730345044 60566641 84214430 131253314 938108551 616099707 182137840 795258112 735573865 629187574 996026145 171480736 804706516 653819934 240707744 87676010 481454062 925833981 642830805 392723537 94606970 913788717 535563294 511581470 689482863 121372082 771706641 972777684 280345329 120583620 490404407 875334020 771807446 650391831 664539959 771729212 823706458 842711751 425760064 939475490 881934159 952027131 340290773 92748863 669159047 421177534 694745056 450341199 706598378 297195772 23751262 440258069 70732740 379355922 639568805 815524769 656881941 930655775 523037123 572960694 766910466 944530244 647821668 700375503 856772095 301172119 355173412 998070191 643290037 172418875 671165806 709933576 848729901 644553450 140399398 268517855 895357758 769645635 255739543 19407092 588606209 678436952 390691617 611580686 985298578 745767912 694390916 899390759 723692566 927954047 112898873 974845925 44064282 479069665 678502915 692423754 811469650 390404645 271446822 791506106 935300134 391573012 413706569 546345131 749612369 476516128 860362622 482830674 848978688 315642025 318639963 403637491 391248832 554757548 586781538 569740702 524916551 28579185 318979595 97549770 428236632 289811486 298246393 568831448 113749325 825587400 895141620 530804487 309079472 294547915 147978849 568494531 351059284 77679747 431678979 801192897 568283546 199517301 112801195 907973070 595590139 192443914 626495765 322617368 823085280 465869159 157509662 934188398 407666810 262062892 293646184 314207161 413565722 980970434 579217676 433934557 923815461 5197770 2251656 765280069 701646154 518017889 306934680 2360393 620735140 948919567 681708990 893240935 387596939 486557428 91981480 115471767 659421838 768485315 980594140 93100854 731790293 539830208 227490680 80375800 302817124 457645419 90934602 76563948 80020021 491105582 301171130 17339823 734799217 838143409 51248030 752937207 184469257 867644726 520708968 680173678 500896650 637938605 584439531 83803570 669197177 641596533 810380836 940046487 417980917 162695110 655841490 478185861 102519164 856589557 657120641 422360331 373300038 381780350 433785838 245771368 357779958 719028127 180540424 997807787 929139978 879319600 76623365 291461156 209519945 387835505 26309662 919734335 810354844 562330282 693921624 708991981 652700767 363433977 439898614 158374780 948865787 664075573 166785457 12440011 618490454 954768345 546544666 405787368 582675746 224070491 558946858 802629228 733127658 594745644 688326085 273702919 802892088 537207681 613458212 257304541 455997357 424587585 489626453 854710931 547798952 30207810 841150484 352084348 736469617 91779798 377438444 44564151 239406633 453963012 553934070 192166488 383030648 19989166 595003507 219206420 472460222 993032994 420503083 15181381 99282245 949702038 769332121 610170265 434605781 424119536 927735275 938887955 713475380 933902273 687581265 759045141 567927033 304519194 586321418 679671233 545461623 430043258 305116145 832233259 766468577 122508887 89209878 795423650 673538664 935016987 811723841 685468188 137757926 50024562 128501729 703453699 105133583 945004051 451650721 802377839 365692737 479785722 160598769 384456222 687005640 214016422 845647658 339012994 220494069 883382589 191834419 650388614 970912963 559926789 472525633 233169571 309990953 156089478 378648362 3768258 594556316 694532996 355207601 231193564 810304987 164818517 778781749 213216171 462266927 554869467 77549808 769121567 327607039 644072260 112240347 108529958 202736560 692855727 440205754 947185968 343780382 642684962 466419942 853856295 800166690 752710842 900001537 936225038 412586035 679328506 44578402 127685789 112735910 376540278 814958164 36323523 986466071 928873985 716834318 95892611 551849487 234387511 400855222 57610488 220929603 658096466 357750296 25493254 860652186 139757499 144191756 805518035 175784943 858716210 374202006 143440561 65286525 810901244 863124778 909290106 640409774 380528804 146110067 281002190 682405713 644279222 700820577 8242852 711107125 202782838 215720192 750541008 422723592 744058276 772165929 333172906 764265468 510950648 174058163 160248393 991799461 310320844 339140318 919684742 214400125 829807426 67579213 684428447 502353921 321361215 442210904 589709488 521800128 930771070 645083032 595114850 515388526 884441312 402235445 106092894 14072160 590106785 398387392 762220415 264999597 927996514 93633084 478630916 648994243 531582078 158576996 839504784 822226391 226652056 420092632 749050129 934320070 640812187 486950199 227531817 978365517 839257487 955557245 84670669 34140909 167949938 33476945 879440163 68195370 132662568 893811219 918794066 212251522 837797217 519487336 612241 435654047 321787432 934297884 572355628 464035997 28446891 229293137 30085875 803460278 532353811 128249396 779914592 398823662 559203309 767297183 590400721 38123328 883039485 421789692 398434139 63008913 722795323 163752921 554641401 31292547 985744257 478346026 648718954 949957454 333757535 998587501 354939936 862696802 557891116 471809589 688019670 509962063 8590685 916311613 345242626 182308145 578937196 7791488 398624633 488333812 403001336 593299394 843534342 579975573 228828838 62084060 849405531 64252201 110632447 595260813 382050473 714258232 29487773 224937668 136143139 989793026 903364226 277957942 795324229 149504448 475388193 589116266 909918458 760575391 107614979 367052248 797680559 178970802 343240488 498547459 400077854 981930580 512841679 988477040 49495598 407361584 195711126 933044382 228391657 758439796 754407566 92347365 982175649 938598524 552850656 158885330 478976798 860706240 334534180 468089038 374713531 965023226 295159831 55265125 159776114 156060963 395899361 167161751 22556856 423098034 140590235 706880187 556527781 292878466 166478612 338522970 831834100 604930610 60329823 332021672 431904700 336299033 932941711 335156557 462989391 478337439 413803471 566505920 928604791 557034495 778144552 422613225 991520318 562822582 411392446 152814695 678017131 421963030 336524524 225956961 362740763 486986263 504953987 880463215 292445397 905223138 375186401 816505168 584030886 11803076 378540929 402487235 35589978 494256484 389236263 781679240 818231645 95436083 665441108 751696701 826956056 108275027 309914543 895473661 460074137 701116378 834219994 125645880 753669694 652648078 693079917 307475964 381671653 884063328 497142270 953174306 36188757 956954548 275441215 940699597 453141531 275217087 985286763 313809907 922423824 792239467 693898430 46771725 348775080 934258710 878480602 912039096 972977004 642070866 441268650 882856674 761607070 369642186 354931209 783100461 71892111 282194655 551878067 164313118 929972318 785706886 842662570 752861062 415824915 59164081 464449994 276112864 871664761 876458230 132629853 206817420 861247655 412445219 710392111 483202333 710076115 497327164 836346618 858546863 112369450 221443568 119240447 144301913 562489782 220881844 900115610 634629336 448530873 303914854 722342640 598488442 497536562 868268179 981768480 297391126 311629083 390858601 198450573 776083034 365519537 507429946 534847509 369822078 572536279 236139313 976658911 735432827 43679182 698695726 714614571 666228379 792413092 934832589 315619491 549289536 261622572 172053392 605497860 300549235 112904210 628035888 396184429 517902144 275487762 117483564 129481599 39232257 982029215 587091780 313520402 344978907 533245132 331434321 165826061 400414170 491004281 196562562 184333203 537800175 882064629 991618140 633492989 135230406 183936770 222580257 998898531 225550979 743973988 86078153 934781206 683053839 327685434 251317892 445752341 138903967 300440710 398274944 67036275 230476733 881705758 806273156 731905003 56268225 840465604 977182033 414598824 869836724 509353611 637635690 344131091 567468436 12239103 196380935 634575379 921343150 152372998 897545371 889776955 204375007 999710920 769673892 495329014 644884374 731351228 789046771 332052740 573017581 92882141 633315405 206556233 983349104 400292898 770212053 346915381 13935823 759860338 412781388 445169927 111979542 694304471 942734839 167711298 99555811 606576560 812042784 163896818 959877980 568529885 277754803 78024401 270199632 550186798 552284800 383001306 313634385 501424050 156302925 186868381 426514298 856865975 837876881 682572925 155739395 993641151 850073740 630390411 694987594 560973790 695136250 453637782 375651463 141237867 215868527 256337797 381498498 533740105 733824426 325457578 158150494 121041252 792748530 552442695 568652108 186824548 257121246 813312395 437496460 162870828 114369878 674202248 95921743 767541565 233652930 475915308 596234778 494257644 898597619 480328202 14463056 782419369 701331946 999610753 788788821 547171799 316315421 773504835 863696553 157289655 306695198 677442540 921395328 97771867 507649544 254848280 386715075 10313032 240962018 945758610 137350045 378094406 84845073 496877681 363394430 880987976 330181910 846770994 730030736 490960494 299690492 990022122 671690898 468569051 39255250 701804201 73608872 692152858 585925221 734281911 481601696 338123890 236596327 195432256 333146708 506747466 674075483 582980750 789174719 777620118 337237490 657579056 879496171 552189402 194158632 22679653 254652005 246979372 526567253 52713763 324471540 266519722 975859185 355356889 455287014 342135248 354950678 384932255 980096836 90967655 920570899 429095441 430625415 205582901 334644385 557423029 570709879 958693913 669380273 661168908 75411460 282280342 762086632 971982125 536676754 521799734 557865875 564961799 112937856 983821100 336406917 376354035 785100451 11406652 409395657 837777962 677003175 856336515 552171957 378752057 720156207 165151352 704372170 667852959 821026142 606318446 686958994 60462461 892159869 540027025 363041856 879602173 264387105 328157034 108698601 154378538 51877836 575094627 804205686 760395911 600463646 995465443 215055185 838711646 727366814 590451737 466188883 76998314 670106855 856280074 864435758 199908298 733329144 540067065 453338358 258255025 835829351 60372078 297732353 984404772 646402225 279316842 157037765 580168383 316132973 736027438 594009390 776666379 881909310 62342478 961840242 75120481 597153481 871133269 401540117 706357505 350959928 950427316 813011184 565167170 347665670 68697947 752100881 495893869 74371271 212711244 564616394 595693559 246891367 131310164 663564467 19745690 831007680 689398852 744102733 696859120 270962913 668197107 951457915 112634574 67070406 231362963 85450461 389864369 998945614 357817757 244387048 398168171 859603557 122007998 598275402 416217704 936229770 569947685 380284247 247854782 257707307 687119445 241588345 639222288 227496912 967581861 2715682 834520609 637225652 786958379 51653245 68356557 973754470 948247852 295573821 451542867 628153926 45475066 557744302 215782780 156115933 642918042 333397024 503666841 208640741 783497359 662398651 130348331 252661600 331181895 552302966 257909889 124045477 344862957 404341474 54575204 380073834 359491302 727856414 225367712 685346621 638393388 340684808 207501116 576651800 832532011 134486434 318310873 640766455 263561213 78993695 989268376 404117377 93753657 189411782 948382336 266675489 475240606 489801536 137377316 373527014 81998614 330645035 577948912 468149509 18476568 905078328 628159009 387117017 897995172 522955510 57677083 975126311 458585692 638045568 379027323 876555093 237644360 672082977 740974113 342471607 64181938 342745381 578099808 865844902 74699362 179860137 574168097 821310413 264485203 392218483 386009627 441743311 229764946 859968011 370654684 196217187 145271567 221903162 308034476 956388118 100649073 254051970 979083420 789366310 658653629 421065010 659344030 993037922 415465375 783703054 327818371 128375016 153145016 209430157 875874861 954969899 668504061 139097191 4939147 482635589 102396669 695547946 693809759 792159690 496822755 222920692 194794899 810146067 211701178 849446467 171480601 185758248 247932816 165896173 428589330 713312453 737349106 348998025 142881015 470534093 668982213 438501313 392232607 874951199 32988107 345259251 598471537 206161747 709657674 754132439 747951478 684311471 609575207 572762044 110927068 998190770 213063260 806952449 746943080 823516434 626170477 743808026 493480967 734400814 357284201 272212785 91905231 427792046 840461202 795741018 988356579 938059477 442052123 554937489 647282893 940283277 654358540 105521014 776895694 339948652 165070412 452431273 570738340 402985420 17448201 751717163 947144732 411665609 810981186 450447460 141664008 609798502 651750900 749995910 244106156 358165713 309285280 588704871 505161953 889834302 804125799 913057732 841807783 321842240 62728431 870018945 228979818 91337050 141685304 495949580 950294937 761609022 370130913 192602197 754753817 689192896 852652921 688703231 351837125 813360008 103833571 380821512 446312111 117505826 666233489 745606 783749175 942400384 204708141 560582844 358338050 849487386 497997131 398146335 421985782 228724499 363293805 569249196 313020347 112782414 20529223 576981948 188624515 957814059 648467820 242206516 960658186 372809791 86254756 608487652 788801833 496656184 310512203 651420380 693754597 691349074 34727098 864919397 134966343 378415227 591835095 995946556 283044728 666045788 960381879 27046978 634454574 697468715 441781767 496961678 837981620 75358647 63007797 323541133 829471881 728056847 226438787 783921649 730804848 589298885 167627454 263144440 21627698 323485754 117470372 885783258 117547817 888523366 807733628 834674566 566817747 52494002 113817019 539438176 497044370 935762340 607665481 196667359 857364307 601258036 706039575 191678954 578703733 704710356 529109579 319605812 809654068 816597508 405109028 425888523 801857156 918952843 349337368 91399423 804307311 140222749 122998360 686584562 727089991 999788446 8466380 26531320 355057207 487508267 242961555 550190886 661009667 427828439 701679565 955397242 733529315 855192043 598435273 50322551 855067768 249024996 726489371 14546271 871772401 55847574 700733411 411773674 316059625 405269495 453561398 14725424 618664855 224593320 668474201 269905551 832658538 355008258 547157350 253516479 583607940 762501992 494752367 156078693 76613838 583023748 816829504 236654112 768912678 822538660 994552595 672052077 799663513 230429230 855229801 325418007 785366483 381327149 602014855 200090836 720037771 773381664 441131691 656803776 802539010 826456103 490013322 90408177 109815044 512449359 872768644 889721293 5886457 453928030 240872580 454588996 473412407 389580109 533454944 179810261 337156550 730507227 762444625 460948630 692864956 178881217 65295064 109529731 724000419 864154308 978048725 973885060 127981905 872010473 238069890 857713246 586381243 840705021 324177790 627519297 782899800 116537454 869104233 136278501 279165724 410316335 420431009 691056592 55020834 329162702 268898853 861396980 821425788 196253268 400411011 858958952 603748968 844439227 836245271 532337566 855041212 154714782 461878694 658076300 215340664 320156125 488704152 414803522 963737462 287481760 130913430 669964878 693639909 189192899 82040187 144072987 318931051 84928731 634440264 247930741 28746625 460108124 556147895 274940415 268989181 784803110 167990690 353537931 868225490 156695440 513729794 963591083 486520548 381406132 812768786 170539129 891387878 871670714 976792714 951967738 755351308 414242684 643825666 525983831 375103596 42569051 620291158 611049005 358931975 895706981 557420951 970295212 876405320 335448968 529578920 688914821 229209718 844441715 391957335 421183364 208995830 377831428 744183429 446361425 914614446 589652689 470290758 296843201 178500313 929523 268197521 42173213 747108101 959287673 197015429 219817507 820234717 261907855 51310426 827088748 678337528 880851425 561698062 274888199 732491588 607112297 926376004 410346361 762306256 608447957 468249760 308633780 753262177 194894020 597051185 230149021 777879206 793013899 777772781 725100911 995619520 673717694 357549309 408967323 758341284 332110702 533056243 139945520 75864290 327965643 559757648 391072444 393874243 104441403 723594483 226779014 208115346 570693261 674314025 801223557 535496616 66845338 329189420 898119538 382458739 656618730 994829702 865306016 614870080 997027542 772140954 749724757 199203204 222762492 790412422 602128350 734104018 503226152 109772903 258848916 786606650 553293208 511617140 513458170 570445003 726734046 360134258 339908090 436939512 543660482 810209128 351032580 795396369 73243576 408596355 387878308 100813529 745196823 92993288 764552136 748195495 665489795 199542244 435337328 909594574 966707394 157585725 341774476 891759292 401654590 944581453 536633960 539576039 373331421 649480086 14796609 188029896 249014210 302698401 183581940 60789754 267526546 150217292 794753208 542445591 73534620 219450082 36750151 684249949 349461621 125207075 647797815 417654525 370595928 240894726 767860129 156324071 205848790 369631597 134349914 29483564 293549744 473936390 81130579 583045613 199724743 94684821 577504037 141410095 30321578 27865882 726372244 220158856 133689216 337798702 622964533 991205149 830173819 125623748 628009373 878417048 546794593 409550518 803586451 227172286 877111526 835990421 214524776 116885587 771232710 482958594 717867820 972930479 330693710 486166938 546861421 945622518 849393406 293755678 25380163 875738542 463326403 410560639 989186314 396761760 442998804 213942712 697499455 26238125 819094178 892040032 578804241 301512610 645285852 894560101 815372203 692205975 709546600 307911616 321841710 429804869 523184573 863455467 525983830 675908759 989691815 293635499 954049070 168871089 167622489 688309933 875003143 611805332 118257226 218834047 237253591 883531123 258348431 777990668 167412662 183366496 820693874 271881390 629530364 512799505 386905009 875140285 131442164 115392786 138972653 926667603 427975561 152864209 20158762 17680143 515799402 307787355 592962827 490359482 806582010 43927519 756756134 827853195 652513463 313390167 217495491 954605062 111784145 51201973 912633183 728392391 217928776 3967046 260865538 657879889 703975463 532868354 921139052 796307462 648591031 632066086 124350898 884011677 781222665 914497227 464148260 520739605 733069276 925912387 973475338 285843396 781959524 242537545 133787805 947410323 38695111 465647856 660201984 81431971 490624992 352808459 180032901 778161022 737566970 453798461 405882550 347506739 765049298 944737016 832948767 365653698 710755807 891618378 8585177 958211804 427600867 950297216 807556216 378200296 439626829 410196541 539548620 672794277 756981615 155256618 629134445 854327709 591621729 374242512 732214009 892305957 633882794 184406241 400959345 200284241 145824353 208323053 888403799 705461471 573342937 874985512 355488933 223345448 148428238 98814315 749711169 862118579 449079893 766514428 7085488 769444104 936744381 804205842 510876486 203150744 967875628 600771260 604794622 870297265 486778667 95645658 304983104 498340530 610789518 470617751 902182346 548589793 414481038 804523134 2590743 907901082 579673145 753764286 887316982 681787929 134686391 77714103 74041805 691703832 699258565 74527334 485693824 551730314 697213271 475742141 633379039 68205303 367767929 5190447 726373642 58798349 612056938 257230806 140513110 724070093 91144691 156786554 808614139 240422747 213976055 635910183 539495252 487941205 794536622 645878245 734479883 169179158 906817719 308331766 167777167 186083885 562103982 786121665 685653833 894011355 773984014 812561910 945044796 312655395 275159604 760966291 890025975 605143748 810668311 425141972 168581552 680967646 366318798 448296890 228584539 986746888 100165805 624398451 635748351 549615408 579068887 858882422 56435334 595923372 972299739 18063546 779343056 969135576 872152634 344966048 323585585 185953858 936449538 848005966 85371768 960849629 432227694 420149605 334161470 343543620 441638071 781785140 450586480 824868557 684506190 68328625 521363040 444247751 402547152 833205289 45615325 423819752 7530512 785816941 23310382 24629744 793608637 748164452 676149895 574216945 373627557 219098014 109421564 118634282 157820570 648689930 153034040 783507370 721823505 122284789 137675260 846387348 355257821 267703677 240084223 261574404 442260001 354122103 91015683 829506333 918435463 448107820 773452418 748978433 828797521 559426618 429137689 671681156 210883581 703781062 437999828 363310976 465425018 596341120 899402164 967262507 295219537 124206273 964967582 313521585 272349359 13658498 662984148 822696737 375294585 916969 214098527 209687422 44936780 76711095 372924066 419189535 210829717 689062135 194300914 587860598 759873429 37499037 813202852 310673778 89920857 610289052 356494160 178495328 499009611 19845653 968612346 560982484 434001245 386406617 867912902 50700423 916604076 228314633 400030641 967873962 426356191 234723517 109628690 869095513 227745311 892271250 567525900 768122657 726620159 252332222 952902982 374049172 972571366 42364008 994545428 900283312 970379698 920722875 827261101 320750802 675765111 88160497 463599166 519471903 950407197 177898102 402911543 301904041 798549593 334356438 736869768 241950342 684770204 486727014 401838578 215136866 404088742 249446175 216796781 245842728 836752166 393092268 112252328 623798574 304059540 812182037 188199941 959747992 751042462 151152901 286629256 487512305 95594628 381086389 153948039 858801355 464016387 792852114 6405344 275794380 257089231 34409975 904807038 272454400 290777579 293496606 290965450 313964855 636664298 236797104 421656919 241158379 138506214 583787633 15795585 900699070 550161576 700412875 701822128 677129179 332914158 419896853 478968020 811142038 493049409 173260400 437568804 2492479 725636771 993849726 522368767 392702131 279566983 690209882 817959449 678784564 660633650 984960957 546413945 734603813 548234994 430464247 331311355 334761686 48330290 173159116 744462867 656596813 786345369 189985162 646067669 122217569 973152442 640293822 232139007 856596776 996068013 650773339 655153156 958213024 509639747 656370247 170870449 89063958 529052059 516094835 424255711 281695445 153129427 517803742 760675617 721259225 886415506 96248475 378852222 844427683 173997211 435570662 333952756 380782100 582739763 449710275 197879361 198649864 522304873 55260970 416356536 461384774 267064209 537161103 343852492 453722338 994883610 699600869 212569700 984686340 876573420 485702151 590669610 275306370 851422736 226132470 230688967 766595567 776438266 714800392 834890249 951953860 141836437 709976391 909290582 804399319 919712724 859651306 39172224 972392862 4232017 425412819 627363026 802658822 109753574 102196336 597859277 265479021 629543047 472772380 492796864 492897837 242977262 286380933 860082486 229213493 999335086 678147646 248573439 434097385 704890815 146887542 997484665 736708751 849138535 172928127 413312737 381868536 784996853 393225636 804192986 309794144 954930207 577130562 214263667 75951094 181980437 161582313 138012562 197990918 41850859 745633541 668479396 34840039 422377269 497580294 880327253 214825979 801378338 897444890 208079396 239827043 573965618 586844438 183345128 961028629 886427885 695184598 450912405 237594198 919187618 160317877 136096352 464670582 679079188 176412786 432883549 534309629 178063277 735343908 814982479 149643385 743705403 214991238 692557492 119349972 453830369 360738606 543159725 991550437 960637082 338533806 71439703 428661875 238769116 235259358 954576085 109323989 710680328 874226527 45480453 324011271 25625537 655637198 327686281 38831307 101418967 788144134 192599237 720153299 136662571 807987585 568432367 41242440 414663264 688566649 869927076 45148534 693178771 382152923 828474353 22232123 17923040 242336917 79266908 335543124 736334400 754314247 50213969 251308323 671946234 222196012 644373211 354781323 838366704 601903870 184158887 402809667 870481713 507342894 467397147 140466798 37394756 267895460 777839094 255545562 200136015 987636609 955063670 428505956 148362837 162081372 182809451 138830580 295068136 879170825 23119878 322935150 827584990 198624344 377669006 140769331 319861800 488272597 312923780 410170120 147992644 520678895 973226782 707644623 518900088 916844158 292000065 420371960 30416418 40736242 383328822 141323652 852328190 905348257 931645200 269371715 597387051 76347823 367766088 645905536 957758713 770048324 34587804 685885019 189533045 664411447 276044164 871875113 107799834 925347887 30222374 505850648 947412924 211157471 61417304 688173125 857903290 925921581 504255695 899587495 333111862 337790789 558969618 204500040 530775493 81855410 524444443 598341277 687878742 773662523 262994510 4036492 709985236 54546919 83398352 298717575 846799757 100139103 595621660 456984991 367599299 395717991 118430191 603691389 347683196 832649549 850684242 572774420 689842348 216771192 207213573 823266354 560359640 28896937 722712247 952852095 515021829 8305560 836348704 602902320 807113855 189008515 954146925 979432571 50258306 11281386 794006664 147747239 211449384 665373318 831668014 731799062 589686477 297118501 155999328 471323480 857101467 503577736 396510528 347986271 51225150 119496037 856836173 910498896 298747835 462062536 214789090 400764633 778712836 501248473 814128333 910911567 964440465 741340257 97841928 332458394 804836307 292478626 169696605 645288157 602102777 693781909 143804244 200631314 757514667 483441446 337560884 33568633 688896022 83884245 855267728 714373193 455060013 611710115 295363283 172350868 285379584 274432271 933952417 443749802 509342702 550027681 5660843 287676903 670642192 171755603 277079590 215635725 830821291 808391712 233955338 273260978 860193374 932242361 191092055 872133406 530331178 753199861 802316607 595947784 551521039 32181630 835759602 438284215 686559254 608694743 244885385 728758364 764953146 953747870 979058831 155826329 548602469 892323015 462818265 527564322 368798923 400554780 98743579 719566224 669591067 957220014 330544950 639501755 241880096 245236773 883490162 837557068 140498194 650943465 127220644 307455558 942831897 561862265 975643911 727575764 221148770 801328862 695340050 787787853 359635934 86885336 248944653 16809719 455485923 857338942 93280570 41088232 308995490 318836859 166907411 570555109 645996313 956403129 695902827 222051063 743990795 227662239 83195236 691757729 654091847 549409379 586397006 692097252 922185249 788110058 237091008 638351243 180942087 697402039 905053314 384699056 357621971 714392575 562598416 389080921 983903936 323455934 928267684 170096437 661393021 890170760 23289497 40023824 862432293 298534095 961904539 112751659 632445231 577444050 490295053 60198500 347714267 234705764 994721997 319037465 915362101 446439514 603410085 740996472 444270029 685537871 291077548 535967837 628678271 122385704 526498526 666592859 855477800 285098627 749769921 540009464 971082969 780969668 32966261 573611082 736509548 372965888 147667276 599863970 449505985 113756748 684749075 481729220 490053051 467953724 754789378 822937740 925141457 445118140 747958708 227748816 164584349 136171715 56481875 107411393 792949437 45174079 199047992 65253497 462695089 340205462 566105744 895514347 741791772 194248171 417554807 105996216 441553922 253506387 650661814 496943595 671715346 218611529 975227136 824243884 713587002 786702992 304843169 905886948 939670601 758919936 979612428 444535821 736481119 396499895 52733456 332152640 615995232 775397573 855875013 794754471 775448230 819526433 907822034 310200832 738370717 145816227 319863863 95410906 48176023 112650700 768785796 633632338 458993391 122539592 109308271 927925792 644232998 923970717 95865450 984487974 801947519 857112022 957798257 902093321 310401204 241858124 2028810 960200072 960459969 932860929 543824299 319135864 615929407 850063111 159745547 123389095 658093722 966254548 749934907 653938633 909789441 732504385 866238556 727894783 782305021 899299654 371162761 555857750 434725378 498762172 708178995 458798821 212780499 131709331 305730927 231833685 934319673 994654897 681695806 462797741 407554757 31311976 644018000 270462014 255786072 825006032 220824687 933533886 723459757 37529247 78405634 660761642 997110408 924122076 784699435 93492957 841427861 230600917 706471110 336437663 389156493 651793179 446426221 986168339 941361774 657242987 132516171 265938133 449651942 759517864 962452666 135881191 899795402 809705568 153250237 303524034 253897014 956426961 588240754 834222694 593024525 751156572 678246146 224242157 993815045 600408711 531066146 821154400 91033791 700432609 87568384 244258588 892908887 782586322 353683168 73101203 846422650 305852165 356074422 661443218 670660817 703449281 638177936 571889730 555414857 79533299 864939184 710796741 426327231 804429428 970222627 697892456 986786016 406491185 772754438 412157342 985671042 674497778 724544395 965086429 801059977 218695723 108093341 906014232 788352487 990908420 802686876 952540839 888742457 156651793 72428337 648551382 981192192 498346547 39688289 822887091 201560889 659986236 55932293 765038685 932947375 875964923 398114593 679741587 771779038 671232351 883910804 917374929 390289929 718383965 657637198 56377553 299925601 288027563 795464221 257045019 751656670 671263631 883200305 885421845 539547008 804206194 441507674 788462684 402283947 130975922 943243747 992578141 77361983 368339337 377145815 34627050 261804395 338958908 461708742 823015826 679736810 179638615 293581574 750370554 559117217 307729706 255337008 390194084 875542539 537876877 758196415 754967556 811542153 655160473 587377461 876730864 871301205 49351454 452538026 744507439 669296019 520707510 41270768 362163504 993874054 107026767 609795796 786273989 38517644 477620733 618925918 600637886 784555384 564773040 108861515 808452370 964434335 800702275 393816280 922193542 497571703 208012030 118582702 653660274 868696178 768338881 372342747 718906177 905991192 525458454 561002335 215192377 188624313 292674501 436598907 945541805 696506703 563713763 928836973 470893049 877355870 655413010 279235517 796813479 731154575 969576341 161299569 297036344 700666422 415769615 315808937 297568442 239845687 498523822 834773770 212238158 7601822 756353603 138181919 417586016 839662201 16004276 343586238 733289862 708516931 671828340 821968187 357463033 6322825 759244202 285942817 974402917 522415065 323933225 988900677 402841411 323837351 419300179 86205449 104134338 486860367 604223586 502421064 69931996 251016895 909827375 89647788 171729649 148795259 91096193 145605041 861757207 985290017 131642076 268433239 423218033 617782471 749581545 44143100 133428239 947613886 687596165 973018036 236887499 726200468 515249810 122979765 757775590 128401728 591184709 880784153 881441344 80399477 460209136 959450044 39293381 821896573 957058014 714928025 245506041 923576239 237018057 376046282 254158209 181842726 502885149 36927225 952494200 741042018 170037117 25267171 242759293 589125911 279001233 820203135 991748750 511008849 445373068 337582285 637165328 866666786 362106302 692678428 580045621 505023027 909175224 301195969 636396830 416670840 768677568 984559944 558692340 847225724 789434196 970287257 924482468 340147806 305715784 709031246 832925630 521407988 106318813 519907152 855830034 596115970 878226412 976522130 21376836 157502319 182257262 413782953 20466398 917450633 854123697 79384416 189973129 299087542 753510924 539122241 399520274 417315846 329785366 896677272 521157078 515285512 335787140 828090717 123271359 281117972 71708911 795775085 155379317 161961827 154626292 286154104 548656126 385192566 580944385 448526754 80375294 388258536 621619334 779303373 512014674 969249261 10533879 823847538 239986364 416487509 773403224 971833610 934784818 265257195 150601886 898004906 811185408 496675939 146167670 733661071 406856593 254113281 825946054 486179539 748369649 582439760 494637712 911190218 843681531 500254523 380685259 203416454 547332411 24562759 634883758 979175169 849832774 327381136 972748408 281471258 688138217 612385287 744968131 333446924 714974086 970934116 380717434 602943812 104962635 524869179 177633443 392848492 722017296 115355036 989866586 449431445 497656436 666922547 543579400 332790575 649670922 404293055 214442682 648469453 173283514 353578797 491881145 12897754 626225725 202724569 619534829 527946315 302269532 331070774 619392131 923554655 252296002 6615526 172819272 587399711 539738504 598381121 115581977 37649042 333829905 791757650 523836418 66462681 99421903 482905394 218665531 291639021 954860327 62253231 22032460 834845091 286150913 159295166 685869230 334919746 45882555 654920822 432693664 511974537 154461749 939327156 11245019 127943433 694510881 746990014 783879255 343170538 996430845 522345354 722940263 247628317 924741039 611255143 949300542 439499359 785730983 575111644 346555778 460960040 842368351 926217836 690564751 785102297 175264690 978801079 112522601 441091669 249919155 793518347 104822435 987317595 259235709 923222061 571003148 775002253 960427160 273937188 187272748 877941761 92608135 160917630 273407622 433765548 149166430 370080209 445679354 604993718 418347944 493494171 409461145 774850435 40743688 818342436 76988211 784595060 724515169 612272206 23564433 306717782 331681119 619590389 244222180 79789397 496716825 706301579 542336446 725866780 972539594 831533438 860803437 665019107 271711370 587431548 191409467 222306831 253072607 921243540 98514303 234693403 315782194 745957854 259358139 36499234 911871358 910932929 652940172 31914769 137964934 563770564 906585773 175700045 278677768 369933929 646196809 490998464 126398116 703778294 466865006 644644545 607549497 805586142 458486969 257288084 602203249 318155903 217426283 975875277 540982701 564736757 958646594 959016753 88952081 911640818 983395886 822941340 660428985 162500731 121428521 155375623 438804477 956640969 14196074 279593028 748851094 911807407 965376485 172003961 549083327 726456731 312733579 331309591 620523033 510421181 234634284 190822777 512158023 900020787 504588305 508654413 673085836 418876533 180822593 187874931 670921943 155614914 664234225 402660503 579494282 228866127 204736580 311240005 656288060 905336717 456294788 862050444 145803442 920773113 107221421 692511464 290380101 628607549 934756129 920188610 167150504 403719713 416464807 856998191 805094320 550237197 737880584 128458725 809770650 331467909 404893249 167036509 383241921 84465720 485436303 980079451 707332804 9656851 602647788 63693804 624311383 99034290 788886619 810286932 252463329 990256845 913857886 614906967 975095403 486351470 691790981 816302789 386361845 6599336 116087276 852978930 168571892 85114360 87682953 84454759 558333992 951977967 917241585 950862179 610601413 813661549 947544438 410923193 815304170 743935340 553905899 709064890 181860064 905996747 290877014 978695036 260189200 117870216 196323418 287482259 370393417 595934157 920849581 530364045 508317339 132415067 353163832 300711427 46969739 398005712 766997090 24403399 260569149 457723669 756113512 274145436 618325522 385563039 315015510 673153827 911834071 404333139 872723335 45355029 589026898 593246931 916828918 507595739 342318934 671915608 853741912 868519831 314067045 269549725 867634469 241414342 828441414 613458720 211051285 603274881 399377795 697057704 219837466 962438196 404521778 704780778 867939011 299305784 277835348 44166333 490754030 595394881 46248176 428736673 54503610 585563405 764726371 394116405 850078426 630126393 130605058 790566921 596185773 280740301 255354346 377426277 469127940 544228793 833608894 557264879 550985306 832847682 291371957 799083464 632334477 658475558 940034707 203015048 341725276 156447649 971737571 519367422 818131124 503080553 932948579 151687698 579360399 143146204 601126413 534085293 746255688 129363040 560457890 919662012 953859182 852375329 252635802 871504205 427636312 722093997 729750496 644597750 720890226 638970937 458620834 164168774 485518461 65484281 202154787 165405646 551865272 579658623 102601107 633487086 651664247 311273121 340075965 668911144 727527401 556539477 629623870 796441334 198355854 804568695 107846848 492886534 78243912 286030813 615384696 936103416 71210661 696450816 729261135 874557791 462945010 493911774 272363303 318608059 448531667 712647311 862284635 888938607 175847244 189367126 246890054 719280474 439587685 847888312 667562136 743975428 394528332 247565315 981095809 861282550 330660661 471674750 786456184 999384644 147383816 622232102 431682641 967790991 349407424 981883339 98662644 576487338 60866640 932708622 36004542 853147470 148095905 927541326 77582577 135260417 921891554 492582135 69151035 134186002 322488836 688811466 497465815 50754159 459255333 751669756 46768674 253736721 701831375 600060773 518331533 954706986 886027548 392359506 984628448 877960991 67411677 534627727 391481854 464008728 366777362 374053319 954796744 568697539 582684902 739807316 995234509 843804827 192479740 515199958 964746796 148516664 755006464 24481974 356097479 567983956 677874194 912839062 23749450 539909350 599208354 225894364 840723083 447461005 818548874 186092290 948071898 501414645 770451181 555197010 509425922 882232484 893054669 900367297 699897439 382751806 854725905 813017611 223874554 327922520 502608289 927131310 420923430 316654223 238212209 762471746 964733153 246207342 825909669 597909941 811197380 597575420 651139854 247368156 944950373 123771556 218253513 421783778 577029512 986533293 121425938 447333324 119332734 658652605 493875996 410013858 668362772 945281194 580568886 777058981 910047553 697695367 991856688 351684217 212212518 508295222 388188725 283626245 481230424 863202822 154128709 296896506 615519847 587037431 379885994 836149791 346430996 900287763 456750461 476334914 203040348 387930877 674427275 782306344 562885232 723605711 107119603 120602603 321212725 33501710 406004521 468479575 57265551 673505684 561186516 651913150 600727881 620736402 525356486 802344205 534058605 146665545 420633965 538130060 966296963 497685752 809292832 653883678 697552305 363363773 422988969 976078187 756363529 43114278 929895105 718737780 867699544 975130528 250933781 777086690 890755854 499550588 1061655 226057561 965960196 727847387 223335868 291260352 996614945 268577912 107444990 307694154 417790828 625434232 217233110 419160272 400212687 399859754 800561120 291597555 462354843 191301482 394041838 511479457 888083084 409296253 103482272 12572157 914740559 360299287 74569225 813524450 566290345 356322490 843439160 347831697 516627923 696204001 581612829 190740857 923496510 312387982 249845375 475911083 583323545 378920881 172063867 879291841 388934705 955045278 393361245 237360882 660429855 862749 817632308 892110582 464800474 163284008 420745721 630734683 380887447 827670345 94933723 893409987 878956462 601161456 176037354 612663060 97679847 80081867 396070363 379896386 937074955 962674708 185635032 100313627 8583056 712671682 377548842 658746625 774653770 944055938 565180021 384665591 403230932 166064917 818975863 907023589 602694741 706961966 328659382 493639729 228821524 445434043 523744705 149718455 546797958 983456156 965604297 511272528 483176269 809800747 656889103 670359619 940527105 115168934 62701989 704630294 398432458 904045150 818562062 626633695 955664822 458989647 811969522 226077584 449216286 544488592 439948048 648245912 430128894 912096733 504224111 453241767 736733316 791435743 105217856 425163055 821896900 726746329 169198697 624747805 378116140 418464698 229287490 15592368 112444079 500919969 980191485 262777617 633661828 536230235 901969313 537420216 358720799 108937625 59858046 430140098 177730813 623172001 965633707 120145146 757316994 12611618 849748534 196314325 311134289 675220467 415714670 738684985 971945177 80085988 277664475 630039382 890760895 114135751 848169316 97308317 540467125 449839422 568495139 595502761 210429065 100869761 78628051 773621650 210345191 986399403 194992109 999113890 235972825 148467766 638303074 566675848 792806612 690934411 211146420 398166936 889814875 283895484 392951150 594684629 719655360 321152949 914327012 715282028 838390016 252523654 94815614 657706186 38332486 538907035 366788755 168896913 7491038 936428890 303050381 894898471 571163847 214083056 680308289 965181890 642841595 267282528 85546525 560235483 661233326 384992039 778176634 851465614 54278222 558400822 639848518 633583835 747154298 173866797 309041932 695734146 269980126 658454488 396638525 942837764 92670061 56092497 348039672 707721512 941876477 184998999 199665197 210214848 374228244 422067972 476793525 312886820 799394000 958869012 914497807 71209982 18217673 106644474 651279497 886960513 363272447 629684405 705350129 618584811 425706534 765374487 417851745 507834503 661517168 471811360 703799575 652280666 367337031 86131695 130639593 546138611 395477468 210157347 748474268 183880658 625252270 774547855 435167034 353315136 440327892 373678780 522077625 814530938 6141637 228622167 868565787 267907000 852467714 960121584 406016137 819221688 831758828 48774629 719506915 992908245 461949153 399577253 747116368 18564875 382302642 495408909 88240214 320223920 64104146 388317558 602775376 422881896 13126117 156680931 474390271 830606969 691014259 426827932 495835092 250246957 357394684 832778224 101263848 352188914 349792956 678104770 162725386 730657121 70801305 975883551 791311849 156372652 970257396 156816611 55772094 309965616 465313296 874678365 114506172 207802198 526679309 659431361 517568741 488333374 399562467 16809061 978455156 355804789 687198834 427713990 133878754 514909135 345495509 335352206 731515430 844136505 937846914 387681211 571113429 775023232 35710732 597938876 690925819 923938155 886063984 672142672 726873141 356809777 688930157 740630061 770216716 436436397 984301284 871910777 809431701 214139305 835472644 802151299 560173887 495619404 765327908 898571541 30241937 17183305 31392781 545361328 78092651 698496868 665787648 56262743 364571896 407961539 693797203 150772462 790361778 68580746 527794239 565513528 954809517 911214087 554280369 73200634 84381534 666317756 169626621 526711643 43077962 809210143 539413457 68033720 420701128 717026383 160533613 757209237 663787974 710326732 80841654 810373070 183429699 245502842 500092664 8787463 694825532 783149444 522223542 463993889 24042040 266816610 369319993 810340380 560375415 897071350 763092860 964019071 452950654 871505896 704275698 232699196 496338597 812181678 14645708 812900642 487026351 914054046 769150360 919333390 282745990 673384580 70369236 38081902 804488815 113490552 105874191 851792368 25505785 29371668 67197202 115589169 478636654 970241138 903490019 828723177 286181816 677964169 361870230 854095542 130998773 980971744 717451265 487997634 588116880 387013662 926898680 458030534 153604857 735391887 716734632 213822679 15028097 577499974 751982560 90925269 319996426 376790388 64650025 135793270 514313358 113111449 392902283 532172749 244566284 590414291 984939947 862794736 131492094 112866233 896033403 398950751 167798035 26848343 28129623 47310993 486423990 369533369 437660692 703056060 208300988 801795499 240785869 505560553 305433729 903168987 110290695 632445877 789831753 800816840 93229220 390703993 500729528 571811323 991543695 355586933 536110434 711942430 140954155 443658913 818166154 377627737 75505477 646640041 61127591 140557375 257162744 947884745 57294241 462351866 823790771 478626566 629000963 374786210 738257451 394477883 62781288 466215420 760506377 379304551 161884958 722948766 971621956 676869729 745575573 593147946 125615541 667589658 35942323 129682418 236747976 85207010 144594720 25331403 94309766 897776424 235705439 640943660 737324231 346556811 140587444 884403201 101573339 617404217 514210819 841518306 528073138 144552001 797490460 91686724 125772545 491001601 262923142 763118038 52237784 99977424 914520944 80074636 309684337 370418118 627993779 282682053 767682472 282874223 791831539 507704297 803121662 238638288 766472181 362635015 62981856 426417888 241202887 206602098 807100361 22958545 87043414 139318222 921911727 945278945 667579936 356060827 208414939 785526793 433257865 870143199 592754603 661711172 74892357 564191228 698781315 438981535 885044814 803938252 626132149 55543459 231099369 314209092 688227026 793062319 281504057 402633957 544405765 477571328 578888603 435173813 763380732 737315377 294034614 475402740 184788186 508890731 201529577 67308688 605594997 912397084 679284767 78893609 533230774 548669492 331546135 427382115 219784955 748304663 722853273 45258781 315416075 455952709 566285062 530270346 693221796 946619712 196044472 370393897 75230377 43327356 774800620 21623096 962307932 796688559 790934762 576203752 946929536 96525040 307012093 883568518 557334203 129833020 534144197 445728148 602981001 914046529 992347121 312844644 480773689 666811779 229287222 166599772 278643595 453238502 414392139 520176422 811178619 939600310 685294380 895328524 710746786 416586271 136614788 47649551 935216623 778068499 412010960 720700856 915512617 55777767 809682883 179548503 727316017 939571891 564441271 128131638 945324282 424702162 272563635 941768063 547324822 838097844 788184737 952143158 2202056 710805574 544893039 982964304 902143305 823726533 807548832 903941420 328893662 485507466 151252665 175451879 598035828 83666420 815198900 445935474 51237410 620879603 277839398 554757636 508611459 287622158 130224147 334569327 976067997 660282787 718499223 477334816 174791104 147011861 733271848 893624720 529126428 266179074 363628899 745764912 164645441 354759534 38965378 556047976 212301213 276468144 806807806 164424981 502092678 869611741 532002079 100852251 317330854 478205158 818912233 640243707 187041461 498247062 158714810 882711347 920211164 788902167 622026627 272876881 201587660 275434940 550757585 822790789 695880681 345688690 999944838 206931253 852512504 806610002 392497457 955244085 949267573 385012194 385345253 111325191 831178179 146324003 8744851 21994897 385938433 621431374 203746505 740117790 906262814 535286938 848853944 218712968 970502124 814801202 29047802 199062601 26080587 977746727 215010960 893592361 931357051 329950507 932741285 889849836 225420081 38707179 915396751 882436803 997607225 555171783 189786934 151942855 329878665 997974399 20864711 101311790 119665702 304289970 322001729 53463971 498897176 645378676 680334274 307220819 247719833 281533783 610217243 691223465 142928587 327671977 708945384 495193310 701483165 799227140 630729382 291479505 113341817 946168176 108220182 962050815 834019172 443101151 447154538 673310979 655725173 539351411 266833878 652920322 52428359 319755468 320397398 720822935 668300654 140238437 39410209 950275159 715071105 40135371 476020208 694432101 974152003 956480943 691928991 59401656 672162794 470953008 667282965 726475419 52075114 458192787 80789472 644854035 859026588 684295700 736736052 706446328 270258844 941940557 837884980 27036433 96535289 980302645 118229161 862480947 382122402 265422622 265197225 902857613 143126629 892644120 485518039 92937894 419890233 820796335 669768362 715524948 167395595 28410849 544766293 507509635 409217500 269235906 280129619 632316900 837109120 873457839 127728036 406020363 583806137 436913959 650710584 29859083 143743067 728876303 950573512 398508771 16808149 84196095 648732452 219750031 79651610 378464981 927229577 471172664 431317939 781884929 86196892 461743011 475272566 865326783 763262096 835519019 598427577 187351450 485206408 766710348 501568935 374466408 77583891 79158852 95839175 50897524 281130367 417295342 430796209 796676441 128415990 690949433 304730504 235849763 179200457 605933204 192024075 758982058 265898468 718400713 450507488 442890304 636364794 119585363 259971858 812509731 322427011 901742170 634113910 303838340 654617744 833850558 188496391 894380258 827808960 609679416 797452200 881105732 452224040 854424181 389776613 357938677 927630015 308875317 515055369 611743053 769438517 12289075 186710247 366352294 819171427 720298729 707024980 533839502 205963287 427020299 775929774 836774142 80532197 215537744 497156992 400797581 727949376 370230359 109854330 67414574 265042746 311676697 95038293 369784959 854034318 238690043 626400473 643908764 67650401 536379119 69090479 911381820 997507654 580588781 736962706 647782553 992263047 558195151 491887724 869080207 156758038 301863799 518918894 656684437 187344569 448720134 777642836 374248159 708317220 640526818 719981449 33599196 257640872 220466255 535689700 731712453 636354581 262813841 756403532 83658811 817135833 469864276 53385162 174954535 704997289 759703672 176302659 560447237 770561736 753770191 228618746 769553445 777815847 920452828 896408419 814728682 27995683 81167165 584395590 20521141 491228069 463379764 541796714 870842350 428712589 692248243 638598504 574413780 560213602 258946911 831169449 54120316 320729788 332202550 502845536 828662446 291716399 329328589 693680402 251823880 498105184 398869425 742097955 908884213 860899058 871062436 842730994 929573130 776067415 622638061 855929378 398356106 795209336 705176852 768153720 948047446 455888270 423357668 48717907 610839865 191041173 84054302 251947132 361991611 119443157 173923245 761921682 802084022 319104477 59551962 528847464 777083062 941473773 396000663 514140548 321385608 165656457 541058971 589673819 795289314 964209887 747633379 11376507 799819149 193812590 377525707 337340041 443866783 397477042 119353850 405428949 750217756 433164844 535356204 486243252 389872106 693647226 362585224 772377576 872675561 767656648 780703014 601307729 438332772 612076688 320685243 399679640 441531246 506668599 634258662 148351812 850292215 539117021 309387232 856480207 329534511 358954550 167853463 833602037 949564870 489892819 984000825 583794905 280457793 118625178 590794830 659567276 435566614 71500995 288169277 849198408 779384067 36435844 743751414 756044844 230314699 613813288 601838593 33805675 1515996 960485878 881004703 66737685 78502660 391098678 838668709 303497020 847646018 655350202 255875809 640927861 572600396 164880444 42582663 622441163 760939686 283519667 870599784 847342789 337259210 643637796 152072161 945086854 644979935 583509928 842067074 880822419 681990054 75351024 610114625 765084267 761796903 653051829 11715181 619867806 119026917 902088195 27955821 429102145 576553703 651316081 650814737 797448339 488682709 506302085 156527187 265334801 453763042 499568316 61827255 524049409 38810650 47912782 4732310 555884292 315211346 519601595 524488338 682181291 813435199 477277999 151900698 468006295 569875987 634959442 954857662 867897456 65733582 848013889 497699220 904430844 901272119 257014054 814034231 449293586 580306557 322345188 507943335 8965747 465376802 596885859 596609021 615600209 316066151 136453719 709386726 620674013 366868380 497368861 750071065 820935249 442926285 384454493 87028707 448349168 759510984 337092714 976853659 136619254 254009306 518997242 653747092 439323947 897431729 838701796 157480062 709197030 509317372 514715746 406870711 786729478 297582630 32361812 417782862 441515623 250328359 846444276 67289806 666736332 295024823 826015355 956590217 365696018 614468186 620349773 754247430 914987277 973744007 893214418 926628734 226979428 259303546 155774005 79906343 604690740 431710812 89514277 924919895 515762719 770166163 976083401 236689219 265403110 813949915 124083610 873825195 435519110 604264437 508266038 440379030 313550579 133407371 544643122 959855543 522958296 710594188 77677283 58663762 732889086 495589663 295534047 199399375 932862276 969062355 452452797 474102740 682165144 915378383 992253239 381000003 381625950 545791168 207666492 486910123 27186660 210673801 949986510 783651931 405500441 437982154 858884918 848988779 675903039 397476988 255859830 820627662 380485714 262455345 478914461 795629563 540295573 822220362 860350297 778983419 467290064 640937853 619685263 584752748 431035204 220202188 966488855 854159009 543033135 410923638 106685351 966047975 672345762 268168255 240733925 737413376 641354691 107454689 585295733 138326671 978332336 46340905 37909515 191265207 232436771 542562942 863562480 291754581 709091481 202577015 946048586 879114640 657283629 781791827 260675620 45338156 771994308 40573324 480496936 331095294 228962817 897656933 7073799 903837448 890809527 87073118 495050970 198109553 32342406 37192226 208846294 186630784 36521032 766473631 600752074 505113202 801790411 927094803 81203766 428719700 318929055 921241782 349317763 169825496 61582361 523694570 840213085 568930755 697125375 21414954 129837985 232218436 151345180 580861143 149594646 380337319 422210151 998755948 665682202 290734172 252760677 575612050 158500254 380577476 899246010 919664742 548594699 885128206 832482664 272405705 874254227 26588620 302123190 103962647 714667727 299008859 211628735 677691331 555575103 566083326 644720584 189281115 138851005 52692130 695899406 441060932 63642415 999434777 113064989 619560021 859553432 258973564 317325295 740205141 291219713 629605240 966280167 241911625 761512893 739128951 234000143 821144349 79805043 798195324 749556934 798383335 934849276 805637936 323426029 96288543 736585583 104503332 63491426 467057193 632162760 59150387 735277048 701458379 493096605 9469482 269137630 295807376 650478521 710088411 960675198 289589910 794696545 215025058 224480530 721941501 791727133 83141647 963377674 140741768 583312572 718943138 659023828 866709430 943383730 323087040 746348600 266348011 311107439 522289185 658777691 22995311 975411105 409780067 874881210 711319628 91738814 234890713 919542554 645944308 668877800 929461136 851211818 284154888 615458960 94205241 918358496 959012935 397588059 942817246 617123237 928394376 322827027 741206725 817555378 850657820 165338043 833442739 803610351 298322184 126817169 493364405 952102787 991885815 304455501 413918238 809820569 211258679 888233753 717390234 860626290 757604201 992768520 848254299 491563923 194926924 882563224 902045944 76932078 930994469 902587096 492704423 506597392 230555468 933750886 970749365 111741399 250462996 217578387 875479355 752725927 463714948 232173497 724132044 98218612 819889499 437839398 163334056 312575727 313526634 73822397 357246875 256480396 673868059 364232324 740969981 174725716 943705070 690332241 186189809 230420079 356820871 775465560 125885094 540250782 473911369 780572564 72645024 234843057 994176853 986745892 794315378 64001170 649815717 87748549 645206315 661796099 31833027 23440318 459592792 300092261 975121226 504117470 107579526 198704866 931418554 27285580 639988061 699546187 901485384 863138493 845615327 457603148 271189981 500876218 555981353 294348817 172770431 887254478 912742883 237098685 794507065 241465514 175382074 574376114 40214918 104897759 868533121 19749924 350048070 750102698 271026428 111308043 383035169 256120591 873844546 320885302 692168535 423838040 134259528 954067851 416492311 37764645 518663220 162182678 916385652 892481676 776799166 130511744 29916530 494610016 23705703 730043786 876269720 438628162 195213810 23616675 670672020 125004910 717899623 994874349 614030878 711423176 309245423 274624274 367700969 139806970 292917020 699447552 880235731 731941146 567612708 77895975 471963853 570789612 754167508 93088452 354240635 829419113 790632785 169536738 975328248 856946361 545644804 22548283 697620765 681373695 553075212 56696645 270853064 796478403 437211414 714357286 894175117 220830635 426444582 94815872 290580719 250036256 416356120 716978237 820539265 197353629 685082400 229609639 767303061 741153601 781590736 346379050 671573934 712453383 425305321 989083331 8879534 402888669 950762839 477049115 935209882 497416465 881867800 879742238 69493636 910941601 223343543 736448123 6472337 949378400 30692761 447555922 987429186 985105233 503450569 230090109 772327156 667586663 983580280 934106442 347906622 127274316 88017300 528152619 499426067 228398324 836480058 405016873 465503573 509200802 808774334 493223312 293005060 105959815 315815655 953031007 8935774 637625970 480541610 702049206 883946051 695151923 381653237 771736750 93905604 248709564 418402765 9164542 678216224 559527968 67459897 107263222 239436487 141393771 395662845 425117109 75893295 893411404 803740633 490663095 410110397 306977492 54907544 827857705 842530076 993330364 200542507 283446495 965011087 928987203 161752712 622154138 349505035 451635211 978368408 648213899 140749351 841295864 520276843 896879235 374795723 904686312 207012816 408387090 662928298 388498951 400089635 88765799 447573511 633342709 754314323 708552256 161355161 754635514 866219959 992790577 287878412 995368602 163098852 753535659 137243675 791461241 483898794 243809618 860628359 370500295 306542957 270715241 137092988 552031623 382655091 151048118 582104302 795855229 150222969 817996262 641558014 744479278 825999622 142006048 103687934 640192420 473420798 285208884 607820525 568541620 828466230 561268751 627971442 919187114 66651066 473176668 388034526 727894863 937877415 457758175 171775293 752141578 143361989 439305098 71951773 29196893 679382853 755061647 988894708 36707878 266091061 953005044 390513199 258406350 340664244 711422228 361599326 270700751 450467693 945891553 262054772 245648452 470870881 612013174 574388105 777925339 960304091 270761545 692980752 529713673 837478555 87978042 673208078 363097320 479988617 902682610 501739863 65084426 622770278 175898430 956932679 173289035 803720385 861188305 864094921 843899659 277935740 623009505 733922969 635343136 290228915 801033535 572099462 629729410 543891209 7619420 932168413 840768740 693150903 39757652 682751226 944442631 536759548 465230863 81358408 564504202 748098438 996562253 267991875 674668675 98180583 227685649 39600728 811828192 713168939 866636309 763028614 61653464 818687669 970946868 802845533 870171118 966764178 717041101 413097964 606915719 263677426 635932028 732013480 839746990 573331063 667460744 383718384 569459543 753420368 442594660 3643295 500908066 124485965 949157748 311323763 25422331 392544357 414087373 713250463 161882473 922730771 949047461 634686098 879776708 922651953 519801914 844485732 606054675 884196622 755854288 256219988 400237672 331682739 799339976 435874596 25311031 871636791 322343307 303644517 966847049 21029543 88764395 10488815 961256183 481278922 989292726 278259409 174442531 900686882 543924778 398599392 547531526 459410121 700078109 124556897 133847600 522372029 960592633 215315689 318806777 462414104 835606175 107149999 439924554 944272511 363874977 903248293 800940635 937212439 631199396 932779674 856316567 924806324 993897503 81296272 894806835 483622087 846169574 740602184 519679360 28605284 994829224 551341826 554419211 928894021 444482467 338854411 19791237 745352448 700235520 326922275 33728269 474618577 921791879 670357011 368084899 47185317 913204395 606103057 317849192 930933424 551772819 405518334 308343934 494181856 695452154 251984748 429168666 534785273 409697068 650348948 384697885 789352469 61400169 775821728 107609412 138367889 601873098 644876023 33425389 334005121 278377842 345139727 652007187 840401542 420465524 882172319 986838500 709083599 450849652 641298328 22449732 964379358 720433496 899911812 195697761 244747992 777110202 715183133 95446130 901352175 382623387 310218252 170284638 79565222 201114312 855527297 33347884 728852299 453228811 356081562 361752595 526707699 382838844 506353782 563890756 336092803 595402344 448310249 18836217 602007812 780172250 507489218 246404986 239075249 163583593 410219900 35722807 229727244 215880212 947715448 155210327 755682521 568064364 192505823 699675753 860627993 957550720 631912842 897384161 719283338 437912292 813004926 670593373 597502674 317248855 830146916 371185929 835167383 776771746 699418181 710521013 854418274 547683396 260600213 776915478 97419925 525581021 100299337 128705506 211435485 434896473 501409802 885760758 835150524 778886180 52667467 863195438 596423053 580454077 113177022 364042147 627198445 81851627 469963466 417594654 216195370 638556635 634118755 873230756 55860314 404596883 552626906 955686084 568012199 903581533 852707900 308397804 480168187 457221696 900941028 469583120 108853136 180791879 872430892 616332027 5567426 531095873 983025543 608852093 461999277 363228398 989143237 693450813 92003597 791764904 289132442 12662360 753653649 242108059 923607450 614632064 648757811 455014511 837282380 253819501 191725928 960233699 495340401 469413656 806827712 848769354 47330820 839733756 574046964 309034651 854970117 9152445 482849536 442024688 733726021 697420173 302734272 626941756 472575571 828469578 644355303 129115865 264824821 315945324 189891519 542964116 26262940 521287727 465372450 874701280 30502986 520951096 223075869 393048328 380468956 426260682 257926778 434669865 483456526 331893765 970462699 665955950 4715818 330501708 179305552 213579569 190474579 351945086 132412553 726489814 482277429 99744745 753908972 904412112 946628046 23809378 165898928 321445701 452401635 230989132 692309849 394376923 227827687 190148641 429796552 760133243 417058302 610279487 586436973 685489824 76644826 492754607 451688295 615933775 208775452 307739890 428097650 509917698 829238902 427545202 590497797 923705588 636771651 487397744 921624787 947916150 328076913 604391691 421543653 521891194 754669614 849647883 63958872 369092819 792083317 755354028 408578456 453569135 938545631 768324374 132578613 385577444 533167635 483487176 616371099 213733127 628637008 77892830 596539515 733323820 788122503 867534968 753825421 241610391 400133100 349355225 657638717 379609598 922458878 246004441 377670936 135015710 352034424 14435974 84251436 236199995 622751597 360228518 359374593 88493337 526532524 676557726 524800075 855879745 387689070 941335576 476989292 884054083 275197502 7866662 824521622 772822460 262402298 772092990 344579899 678163234 177254288 595444180 136449556 154362722 393334099 755874693 34877642 42792619 237084116 391859674 866553346 794111260 546683609 190076340 492225752 16351313 41187778 540869855 887964994 200724854 121111479 453755849 405081620 441507787 734589188 186843853 868033708 784709986 668678476 701569402 735820703 507843229 989496233 631954087 971647105 524828850 773847030 872489555 684222640 486092641 256208380 73133024 613125342 171468557 551555501 33184936 4709914 45762180 196095976 485131869 867255460 230565584 684523613 433522374 998433336 931386579 392807350 743704700 450798291 913210239 643359265 930129424 915299168 619834765 639379861 633086199 663725036 319603185 921128873 201150515 718859407 577783605 361159822 150083809 565457333 152029023 622559678 363365492 760009545 163144363 804892362 905491589 799093183 482768644 958589442 473113734 528647374 78352518 880985016 441460451 176767346 615268836 981269284 933133050 661064378 621545212 496680260 199434467 591492719 295673836 68294080 687992242 948193614 544376454 999226907 663647178 447366558 812050587 225155453 422705152 310936513 341174246 720504482 340735250 85443370 675079645 101830315 487281403 43632867 238102481 115496842 547343342 33668409 901717609 416999110 940400636 901832831 254622175 962288519 970526053 54477395 831300781 232267302 868248160 626199363 727925663 443530476 995699282 903229317 683955971 713499293 243991233 738769863 821841414 579445604 453784057 162044639 80592754 955031972 389907914 598041108 458361773 507931263 219865557 416396218 233356369 960518001 82501363 256987382 623358551 734248758 780960790 932554247 904764358 360369205 428313952 834550968 601682142 565305535 927994303 485341365 997165498 946037541 341593568 401412136 246928010 505753792 625284115 720348727 405245318 919344964 134990031 595739529 702694430 231187478 766152590 132448705 739295276 281970660 736644661 599186591 845560763 897917436 28791248 18209552 750881351 383511393 942362225 336176336 218873534 920488898 766535791 465400595 994125255 888221607 747852910 702801360 84570262 450326222 368442071 846733505 527180582 438975329 725730257 591986733 335978033 664750160 895256971 849799829 191320253 42183655 28052268 654479970 728285282 565251328 624288036 681277069 162225767 496075889 895278261 142461066 961346413 452575195 382318157 941168716 378514066 822238432 109373956 66608895 436813970 78479000 876491119 704863369 212568677 570805110 766719347 367992592 711252334 835549296 265804188 705782764 351297680 715935752 475020107 864539348 455069742 895992645 385824856 196546455 569222959 942099342 497558345 394306835 181728354 929153634 321733818 12346990 381976721 230728769 866468466 144124995 60313767 524453207 538660554 679556984 541806518 660464809 707878799 32715298 388634931 153547453 964847934 911558242 963735348 125155584 504254541 138686722 215545532 690833074 919669617 454171999 779843978 760199738 657438679 8070731 915255679 32458914 704711564 915194502 807371838 472468041 690539498 506050399 87198645 716996706 870653792 557257798 63360781 685960806 784338282 70368052 892701420 193690850 756797151 890816014 665616728 427645382 188210283 269245734 718357640 417253634 20524218 578045185 685997159 376830401 67938911 897263281 738619154 178016829 330017386 631291390 491606307 430330474 994854704 279545999 280170613 727556347 352638625 531078421 657086643 486867941 840523477 976265718 686789043 952456999 155957446 45916821 573551249 507675508 585212228 605285857 78026907 954601310 832318758 673017881 187294799 894565784 994467154 310007878 223187324 231944225 11866424 367479670 920170632 3349218 694854439 392692980 790184687 502173622 521398874 658042892 324580847 606067052 813844164 834149782 640064274 813878102 712272597 357466124 631178979 683705103 513607820 693515394 134488093 753674137 525071497 480089375 902551056 888046714 670794998 654186010 799410109 546278233 412627010 611957936 560911047 201108787 396452766 225506680 693002225 730185674 540862358 753687672 942057050 241714214 840236734 178479690 122030914 432837745 743677898 689132231 873848614 674947003 34943589 850891736 533785491 563602305 410010715 454959735 803236062 277997611 860669438 199289751 983597456 459592603 693047008 669655562 681707690 935427197 865581425 112549556 318158387 580324102 510936167 139164887 225010163 84775128 907932219 386782331 202135379 622810625 12808403 110899842 877156081 83095284 495128233 676452040 411552477 176261519 800506997 912469080 58267480 237163560 585569645 159268237 352766331 894756518 529933348 252828608 743911446 216785489 87880090 463675194 674620497 72209010 125627769 531640169 536976678 547766122 73893773 643528866 444652764 612410203 615947766 651219648 763921286 372854388 3405996 153741760 487219754 401997461 205478744 911317579 450780997 502349511 82871685 472663825 71492973 624248362 663889699 693510147 487032837 622634428 784364279 345376514 250388805 56608266 156643133 551862000 882155585 523101714 398587796 484848391 670270147 979252359 683461727 518676362 436043084 464561627 131976957 674296243 618884148 796295192 79881078 34111651 112930056 147063694 883554398 333241601 451588162 241165490 101971476 391503041 507154348 858217087 885384171 910009693 105921521 867934633 190243069 369947528 888479961 787953205 650770494 398011700 51046253 860379112 148542516 996741442 355482923 995267831 786840290 702047272 712992954 514847607 971987418 604317306 988328700 846981317 249855311 365323600 599153903 503273241 914266882 487702534 73705432 72511373 968460437 732981916 56295993 341319497 397971 217606647 961911542 660559166 26026945 614988304 563063267 595809722 590245471 997674461 960643726 146662413 400898114 138347460 859809674 773214121 57194745 608909461 552887114 58450239 280481517 275074336 273429141 225279459 924900986 851216771 58275538 991243252 824067520 707474115 866219242 184106910 944101352 720764978 970341854 31833070 952691597 979392490 578593462 556403990 122437867 509944363 262829625 468583598 449715169 815393695 842370588 822093555 930673173 551383797 429618632 255998094 606418412 398634387 331155201 448120655 891177189 789503848 139084020 692798363 483375865 441293452 99955806 559588231 12052288 158318045 917944017 58939825 814590477 703225875 854155359 981246721 527148097 198254770 4923600 125894978 648825807 243811949 506801477 443345713 2799415 296122415 524195429 507390757 35268313 454991435 894352983 316820754 834871149 496364594 710242891 312974303 982551485 230331294 911379180 375981171 924798525 112543631 624870721 159637363 509021490 408586324 808614372 514746887 779121440 173889106 589177392 818898328 930817507 184364385 381717584 151257362 231690047 156256676 35856745 420826911 740091194 582914510 462906648 591320051 982289927 269047631 220875131 448092871 459020794 17393702 68662504 150715957 547360394 502314433 249693443 38086507 293480825 529778479 212068521 145607603 585031495 345440956 346784104 583330280 403103981 759927236 643581234 937407171 293093458 157435920 786797945 535472615 622740200 14638207 413670997 151083008 721863379 195776052 793613308 918513910 391030044 204437352 20650183 73872856 326013567 449742470 539936318 904282499 250915623 382979254 408515688 527693232 525475540 37246609 248984491 74716631 983465877 884143203 223999294 34361274 580385402 812527475 744278081 674518132 571676583 970645388 256561434 731468735 276741011 787572630 420663176 417262746 145021368 509814520 843716505 918592265 182404169 539384839 520871894 643371145 395506378 521772855 216740040 61150901 501909923 588958779 941788578 732762081 58653442 188875439 120854926 738370297 32918156 684555831 248875031 330606186 526134777 738762078 359202857 350055111 266733736 416943130 200193456 595564746 745462062 375098317 989896286 763421015 19757292 500815798 54986503 408331304 91344092 830089941 56076693 218383929 390296342 29412532 544223493 447361796 871083867 102910842 528878713 380890660 246911040 64951632 384680474 139093229 526111581 670074100 133593856 489889156 292866017 189687000 693621500 254831823 754002397 776655325 380973178 506621245 335537453 20501062 345800536 908592305 720190687 158745737 419037191 661987801 294203870 588605897 646692203 507210682 794883530 392170699 661979753 353972853 161196448 444214810 603204660 226663229 490901590 281295636 673614050 194480974 291943459 945107110 705813710 792358727 928409923 447495350 903591981 615570132 515656380 829780576 746628748 800476763 95953000 561433897 582354018 566068861 539998038 597107300 758820663 127443150 210934415 86501392 741213664 256545601 416502152 890541552 34358236 859351797 555167605 301492696 554444953 172318884 632755878 142236212 688043562 411505084 853335498 71404481 443230631 457448007 880472551 710576168 941928247 537796006 325824983 797519381 631823033 632594784 597709525 601934954 846492707 946228026 746101899 268276833 508182188 809812319 465226953 41447818 663025563 353589553 800900556 105781865 299545799 970147026 392361232 108890050 440359945 46431302 354635566 385493565 162628886 642775834 679376962 767898225 562225438 923514944 768572357 964133533 515342371 104233356 670812557 390400076 651538031 833862981 849110715 898506814 512623217 39898166 285806581 214934025 898199365 56008015 285009998 794636896 521165620 220535186 530572347 987106967 952115596 922681294 471229409 65399767 259440138 802983207 187599502 453297301 370118742 905365677 56896854 824204107 578954216 448921195 824467759 603644808 873231914 204845541 107604828 346835034 681243795 755676088 170017057 248744389 334833892 554104995 163153920 300488614 705108450 451214927 613120734 858668398 979899665 311386860 966324012 670787972 774478369 298338887 60053299 861096037 248456489 878217424 115837194 466055342 582617656 837749755 146588029 691511247 705118403 20800894 294205127 392861893 614196212 136824546 800830500 561627925 295023001 61461153 882782629 356136548 909048436 548881461 244296139 643962977 266000019 818156792 45801401 327861091 976119012 631125744 971951748 304509302 487925145 844083206 862209452 36848671 987858678 207919498 798249312 585744093 158661576 489344636 223148610 581379658 840748178 935333390 371951825 968872546 258523137 402412314 247303828 214557070 602728441 794522872 638197769 854256072 572525160 860509489 472890722 366381552 182510104 296625988 502922706 146377310 936449263 202838837 449001125 826212415 853790161 680509595 874682856 774612532 236578829 942574816 814090034 587185158 627409844 496449080 711798479 633122672 726403704 960147180 457213914 193285416 886332382 848182380 235446168 601448860 356055865 878478400 816825419 108393664 892503238 233110576 648111626 734995912 682880924 833945958 236956718 986169866 488251787 438908182 123904244 160636792 768143054 678989385 363912832 902548298 449836026 988137144 946396216 493121580 992209686 540723628 12589422 356957783 769157402 32679348 541896734 206841587 262639366 24045365 733420283 145083373 82221407 391821354 781030986 630950922 800989006 850356560 365619066 978258894 726842022 626073268 886440892 351893654 111882618 270690764 205120078 183377635 257594146 597241833 785032462 85015099 296376161 851436284 745332254 486174545 24044729 890110596 182922006 543577557 521437902 823308848 5902895 909268582 396106271 827250308 883208748 13130144 259141720 642969970 752871497 791570152 169337879 891181231 366629606 155801516 723872837 533914047 898910162 683218975 130138786 214686335 243268403 8360016 947340033 909095044 804627696 368172465 861701484 672945567 894489356 82525219 213729798 59750636 148414538 219721188 291573409 248926174 272186813 518314369 889837400 524545573 979593560 343742750 914464674 692298402 484750964 685450432 44959849 347882481 373058941 212629204 748953789 143283370 162991752 88067407 863197862 448515300 112767683 516844548 610368679 462505654 614257736 280846094 293307068 491385897 387176910 996260541 243572202 74879226 753337393 568905731 106005248 73330233 869348548 703205620 626235836 806215109 761535124 144151307 442303039 63357666 497555845 208781814 919781571 829510901 414920029 140484644 992439637 40935481 378565403 615324842 837022915 738794609 237352806 812852342 334967680 489869431 544544547 620003150 253634161 75252345 991874704 378423675 644543030 320781671 811061219 265083242 766381216 36527937 207110660 305016897 796525310 81509567 839925603 819276506 671965859 188310729 732267730 457359445 869119221 161416056 599302481 369753530 276339320 337304223 509398988 879387862 821923879 762300454 845408688 611190098 902068634 121912449 536512177 786201329 927985800 445596573 145323528 41959635 222664901 212274431 781029182 447875169 342573163 60227030 646275025 68647307 586847631 380988147 240348449 756445772 683639009 827765885 110958043 270102688 251063685 369245433 990120334 213144345 479574296 142241442 722966036 385989552 557389107 587901116 910471062 396626699 688290737 726131409 901340928 190184768 338622266 38618478 917724264 865903714 873854968 487881491 767146264 75917413 762911040 545872787 718503000 827141519 662705950 958705359 149820647 388056396 941615053 459357094 604829775 729585183 904003497 390258156 799885472 957597839 516553624 764812673 850918103 934347859 807545483 501892829 778278986 909220240 694241961 459426500 327627280 480070824 588207354 92328740 859930130 414489093 656733435 760290594 798371360 549617028 734705512 99934297 769423677 69313887 203462224 975068573 737092324 420914956 407405018 159701340 316594536 227091563 167815578 55322237 764818789 945492145 757229079 79834558 951183886 128716170 402713675 743255394 517520029 374178061 254767442 968244326 904625758 440141918 411621187 471602656 442052841 158343936 494485978 367574946 544760393 735672808 767300573 554621079 734541967 2800196 51991587 170497697 416299498 846202318 578295588 671566904 350483872 254908432 33961198 668342793 415818955 518751852 43022716 251339412 439737975 970376182 138222892 824451693 359678416 900217608 219068530 316574051 555098186 979769016 53707894 54938585 346616215 457579509 356050583 437364187 996438551 845153344 615171028 188895787 545766833 839950558 725806484 53215291 892200564 892927849 782835404 426136213 366775791 25000057 828087027 67388758 492014065 11990740 751415568 599606658 443339769 95261719 661809158 179161721 469776049 986607165 756333421 261902548 146917693 507820528 921849122 973681637 304721826 623508234 250205519 210594647 113594255 192648551 238337774 349616688 632935685 105274586 868775312 317967724 611284988 136668925 509395184 427439 705809710 315008406 857423664 493293498 524356665 465386403 577164939 677649989 175053097 572329707 614255630 36629604 92686811 191322546 937810830 245600409 685575236 687374472 225394411 831907999 149145018 830244410 156150490 316910208 400748622 220161891 560435742 776732715 974380676 615499644 434700031 611144672 722884936 510917084 996623853 682843354 398225088 765876288 109784963 669769891 214580640 404627830 387180923 461134312 988917673 459411756 829304345 309254236 473469246 716267654 769708962 995322450 144891263 487328125 532889858 721890272 829581892 308253766 762329357 641685798 201963489 496246043 646038456 670922075 315411125 351312352 862024367 842779391 199290918 215529248 390921930 168547216 502406158 637922884 252657734 871286071 390726336 384530221 417174697 156583897 259866678 388137346 594839937 148660982 899872227 989097629 31775173 865864813 906938850 127593037 694073073 424447841 992262574 737388611 628945116 478497632 828491557 427915504 241047296 46610688 303301347 216072939 102370541 838084207 202312821 845113469 292272791 149749634 616497356 769840512 492074236 985757309 837513187 914741289 588468183 930524850 293063386 597404442 941432628 149742814 914122747 304523449 44682622 113477477 608585995 277047488 889511829 650323068 653698638 435682601 966832051 764865432 949644658 569479759 727482941 927603118 3951701 119642349 630958380 328548587 180673256 808465964 327110803 365109491 112779701 83775903 636837413 933355846 670193749 108647413 633713393 109543438 967852 94545412 992458610 721532810 390273936 38328503 348517688 253607061 436291880 362552663 242578077 66506817 465922351 580395384 806175610 910282621 187156768 412654229 601167899 245947340 604661401 950796558 403639666 785017329 717719573 471778211 943870664 964848585 852417557 278102028 980705797 50457753 80406163 304633689 723222555 601342258 844488718 538356284 232554451 379988998 858589785 729734639 514564665 308486346 231280151 162558758 254919012 463425302 404593527 418379026 918997590 785073118 706117188 822333592 380552616 858654008 295661969 725790237 669670760 78475064 76251691 618192122 388523790 276191231 827228145 639824570 865374680 974419158 963786213 13373150 416898224 305635600 703229953 855056341 243373540 244883683 906086443 526058901 709789192 194887184 870509790 422940573 843255776 526143228 119989937 514573595 354571091 445151238 445050775 642515688 729127970 756161706 808414019 80972020 831758706 381482676 526073922 482478857 224362004 496027546 340727946 73896162 703878178 364988280 844366720 849542549 813723136 6772506 864993417 690068735 209947320 599971563 590715774 816488944 273752509 390497726 371122455 323012006 64386258 90339172 664398345 486798822 319525490 533403234 699724989 745503280 845770351 928778180 443896560 358621903 687917859 230876640 536259357 691444215 170402974 189143434 283426264 474450099 6520739 123767247 62222446 773097519 356618982 603786210 375668859 398198496 440187091 887416005 413492453 872573711 745993031 342838839 899571606 540962852 470303743 892078738 975916369 463973940 54170752 934583414 304702303 399417211 508967186 549868380 830380412 98307119 607551534 395075896 987940072 36712063 534994233 895758816 18196934 755019622 771032199 245992001 614715917 915905196 963623251 689175263 970725990 574162040 921206842 158439165 41414353 995027868 483524316 166117061 774093258 848245713 566977515 89496661 477489952 452422878 892625094 216235300 129651603 147072072 665408207 114331790 121133415 380169658 530708442 621383932 509613251 509174121 404857728 863901549 81803903 965693977 900008680 283277779 415526945 86553976 626700191 557280640 26605048 260295095 888593361 899811679 718066723 59027934 719646703 871310156 939340179 474090998 12091446 540440896 823681408 629795791 412406401 973016123 497746815 826237186 697136449 596961478 205221312 504277270 961784204 749722826 695306414 462561872 405549007 90868451 516052733 459786331 166156539 571591407 182914949 791042204 864529999 919842635 323338425 870708424 406934918 272011126 523471218 143365560 28988497 438812503 881782731 997692727 106912803 454129087 671472978 391578628 422876578 474024146 771518831 813700014 318401818 42893664 771517313 608979568 637172623 764781635 891765737 569094372 490316281 45925634 818414984 582179885 393206001 181488914 167474153 644599742 384361768 657864792 191259672 153047929 242549144 468688802 769125097 370472544 392629518 200025943 279883286 829906513 801026889 128740897 922800465 978602509 908963012 415281957 903778565 844594146 224522864 450561798 634921667 562602938 567473382 681802199 341192359 585536478 146209849 444549166 36935626 389566904 795002146 246668893 127932026 712048188 842492255 29204240 193441987 777440302 581377629 624048268 504664111 600815136 769907156 476089531 890793553 980397176 583836562 968174889 54751811 524929655 313477550 711259412 900166239 23571437 629776114 192575072 558244887 907892524 224269422 801764695 912930120 960815159 56680129 982252466 936301803 947645597 367594001 600030951 233183749 908681108 222201872 447834816 749228212 750357387 718616376 924558991 438344377 992988246 934603542 69391725 892187132 718725691 272540563 350429616 489209066 749415145 96392229 269788348 716462345 379177975 693263788 442333314 703522125 724416477 319787071 293185037 147181219 993922937 20541193 34439210 364776444 982909345 231790033 842771042 831037179 851921386 198139058 521652116 356107323 908806515 286256653 162679918 433411575 923452428 68594722 28448186 970238612 900437573 322151159 374105144 640750324 304078454 356229023 626760639 579883662 27790958 939303765 855928858 261205755 185298070 619083017 916889065 743590503 19162133 656959398 935168415 778965693 81092251 776197676 865228869 425875872 790975283 510193675 250195877 335877150 351449857 328376968 205263067 207614263 341281357 691692281 116382774 281528027 435191567 307565540 3945634 242907120 878197523 642305972 137316042 369689206 532653198 229576908 787568160 857497049 446495732 538517022 454681948 620664862 796367014 532126901 382754327 599482387 330370917 652926897 729406064 144644983 967463531 294376589 581495901 831230395 277558130 363000806 486172066 576531934 212982236 585291046 129842564 157870075 648066298 110881566 751838535 938295414 603703588 375841539 716667005 844651009 487025553 972465046 87125340 354689332 120984381 980248675 329783457 155059313 777279981 546385311 585255216 652359083 632632250 937117253 691244457 720084509 593096249 896057240 997941551 961499132 840976101 960550428 323222702 14881489 877925078 112821597 32533411 22934225 952551330 880076855 524262073 235092151 244210587 831257837 372183456 636275125 109371092 117866558 170794606 765947151 34066725 523765593 780187553 331254396 514823190 883550230 338077845 845343839 366817808 93727436 352915863 803258454 424129343 77766216 129354461 244549619 101936155 5802189 844010613 637809913 512156564 463586943 916569062 171174017 449834916 696396565 774772788 933990641 240926973 583943368 172263602 135995267 278350317 181746884 842416219 508155092 817899434 985525775 842516389 790276364 518466283 593146014 87189809 34849586 71075510 599683652 738194691 261744592 401527835 799101411 991664611 976423437 226130906 638055340 226786389 794532940 271740619 159831699 85095391 202001879 199679530 29567818 672602269 441720816 207584910 641055585 131508724 507073221 238179026 741218344 95918004 293695392 952232591 61238437 450701972 233982178 448118649 15287802 493741156 732422945 69709209 210901293 7648719 14923438 386226862 394312602 505224523 388233320 949914309 922462559 61738406 616868809 773479705 755671762 417531274 962954829 307153278 639558734 298045635 671391251 795288019 992660293 793542290 627739037 640504725 611341571 962621165 778663762 770133571 946070697 183161513 172473806 54258280 693190240 638370428 77979476 130386015 729218544 232192895 726922173 244509894 952936674 890941137 816923072 758092228 392428330 645494754 792463418 966787723 848262196 249132414 230140545 776968598 310352633 944626254 472644966 140744768 298347789 235338215 616727370 267417443 276872306 380692401 30019535 709629867 935944923 353693950 382919864 102700732 320465613 920231736 518596433 137129553 632273274 540285169 841755613 731955603 228489259 943541961 567727797 784575001 98600859 631331778 384926759 385408226 538434565 930685551 510761937 619122225 668619193 502347426 57969549 494831015 46975947 49931235 191985857 594775743 371072299 553432464 831146430 177455444 353534735 273427291 371745504 10932620 603731163 968666516 440568578 29246662 374842 171971418 143751020 877210613 725490240 436916959 876586296 825102482 101462149 822208425 421980562 155390306 384194032 298732075 769219497 415186625 973270731 827618995 822242063 639772694 787486486 966107269 390598713 123743086 947203745 384684548 776697881 494971265 659279369 719068051 376056013 510437390 466323285 743790606 117915419 221269765 227955760 458847488 827499670 953838929 848748282 53944941 809075016 821952664 727028580 860886711 750549389 220943507 326931183 556957822 356971796 718101140 683138186 915104753 722166924 767076798 892910100 594968854 354218371 501696256 225523540 733333590 336202961 170966416 89920177 176109151 562002490 147082397 893639030 910986657 732729169 324436019 70828813 714095941 736492876 214732777 849501020 714275031 547027153 578366282 83328746 590040920 93518311 933026051 630796620 731399755 317092527 805918943 453961850 621604441 684038974 402622813 844765911 423528359 519169251 160639200 889816453 93278348 584316371 708412309 380691878 786174704 412775596 102737691 781824517 454904825 859291245 960501625 209679127 879770394 967225548 34500103 845286906 104034940 983064014 880944078 625875799 604992375 990087539 84639369 109103505 3247477 83725952 693037001 983403982 417287307 494733340 627602087 833496878 96073720 508583614 337102653 904260643 785377768 115159330 82298845 288575739 505074754 136689442 261711277 448573204 783885990 856952939 413693324 872788251 828091077 454778274 721080836 447110143 707318783 717113097 257228679 577720098 10597803 926011367 139705004 706372275 330456698 470935138 133843707 557935689 907889237 998506250 60842481 561130537 302510125 568762576 988720111 666837746 806353537 145077445 94891075 945156613 972083359 550300084 924499039 610128391 894028643 982503875 43188399 304454362 890323858 460280507 401347705 927344536 940362550 573804076 768051807 817774354 465866920 455141878 61147041 744717969 861359466 789330094 743092087 331234454 95430313 172551967 803716400 104422270 177863403 575336531 695816499 827363955 521344016 205800497 446205933 890385868 388031729 19348215 945677073 236573536 436072622 789397762 604208703 142672320 808832670 352198709 342103807 793025821 747196135 903251361 695260645 122149955 763099111 987612247 904296748 282544481 422675951 308525225 253523989 520447558 742998464 983418134 564523553 310427969 675194312 474160865 271346766 278503746 910568643 43860954 714557650 910204003 22833597 61051030 571518514 961375277 756289941 856737623 333020384 324897020 897234271 940422552 585726778 475987356 228864161 291590058 727412672 429977575 783885648 442840636 750408658 470457929 402685967 260159484 576323525 680372715 629528012 912253490 378265011 953287246 73558327 794247234 436525952 751084305 543664435 801068858 554450986 249282901 284845735 229724814 7166622 629358571 72124656 245581387 970692278 476331216 386617791 663748002 860022045 575894013 535573429 525905257 872186702 318793934 879723345 589236639 886586611 512146032 402482136 425756767 408925911 68680855 221511861 318748474 599169849 305294087 395419138 58366514 806677535 601345108 339924153 163731352 440768818 258634785 698536784 931060153 26293290 371018442 562092191 408583515 512135015 754734502 889703472 973751536 533505922 484803143 966046371 898333003 363777373 911717132 205539388 719510517 863199454 944697460 301046668 344052422 22294752 522097631 656592266 603337869 400896180 205162656 257788229 731480996 718882170 162888746 163341344 758885044 434520850 14757341 575992215 43238568 42072695 331219870 501959538 861202928 249586166 43471249 507401473 582241373 539910723 286877593 963454894 49087952 260743745 589917510 168211022 486444415 960020515 912591495 173634905 908448788 722224994 45848681 612172089 629341101 396926163 452468891 521720665 508764622 448081713 705121261 333106193 103571887 625556614 260464281 64457440 68703907 477580262 608142951 613799438 507152586 966206878 4059109 634551778 721957848 224844595 671107964 158376238 804741330 922115107 141479542 766303875 55864874 584353153 870693043 535058105 683381206 30982443 814677686 675192821 328122610 167951371 355190420 216412169 862426345 472572097 117652311 912661591 406511393 552764134 91923530 30979464 10077741 715764299 795192996 725541596 714859698 459774993 510529735 407073796 80868620 558956308 84135081 747316777 681681976 792811750 242111270 493883277 476327519 372771063 501559719 430122761 491956237 792758792 785734892 671082407 605882911 128284904 25918824 74286812 996827313 380749998 829933629 406296268 732605326 301644236 580432895 198002922 590589192 314125881 682305680 447392527 441316884 372421996 289313564 735831310 837429997 969909124 917029062 534484309 987366743 544864752 170700005 12211088 190439446 29633086 883440653 437819144 29055759 371663652 967029146 512273402 162235893 451960152 502836043 844708038 749385759 691194589 594011207 93193589 100957589 647722239 954294655 116547167 430796316 555179483 893611601 75966407 316412246 178117977 600209201 431103364 66284809 221249387 545913228 958648641 864751619 251763790 86925935 191840923 507691482 553210913 207369055 611259357 665684683 298537599 327161537 234328265 650731882 376047039 464663034 369103506 550457085 251447574 644925604 609464893 292602047 673167645 867496032 129321153 280358265 611717055 844596446 482453255 834188389 103063452 797169781 47776995 524950647 461916072 738800644 983592509 14472999 696728469 940406722 637239064 331459542 997168915 868843823 931476026 265692818 907401302 991533501 973049928 772922710 447600876 551107416 831782175 291111968 837119597 367333358 320244971 378840590 560817901 135974624 67585469 470806452 923492486 754405137 546326656 762877782 436478390 917005256 186662698 975898631 288159626 329670698 933722973 635114776 916759015 491698199 639347927 495811107 223723502 436602423 526366118 163415939 923989674 613994509 924064618 236312513 159503307 27542742 327222610 918835076 301522815 199625364 119031487 546237582 573107858 250179843 447105883 876648920 325036219 252369053 965999254 834405564 695595429 607852777 17454794 195837384 456104999 723625077 964006069 424988303 213987007 581594716 23294080 912587849 67276272 137209237 766716403 709393885 183745519 4145524 302907191 95484207 810656669 457332980 296110386 379539003 119176998 960689516 334130043 238643051 102448039 870392422 410350603 406687220 77869824 188760184 875705106 75613052 819075922 129118231 495741241 651352242 870156371 605684915 110714115 738940692 801725550 406483551 361145425 790418681 239586856 681638375 503527190 396508410 776129298 592647611 568965133 158473184 483219129 563900934 445547591 705171618 597583165 490259744 13993388 8246309 35241890 33880729 25174079 539504274 968970265 136340582 401875349 359856597 813613697 976502617 717611777 308166535 368979492 520638077 740535002 90083746 342939050 974244061 531741561 671295722 454270446 233883208 658880901 58562967 193756359 18132454 722390150 3114068 507827325 864280251 532853997 406753091 425263383 856611038 477954911 160531396 786256126 135625550 641869846 50700936 894522466 92986017 477862136 11081189 278151541 103499805 862208350 145607044 670541330 480116057 952534109 171823197 855406586 251466797 774685534 326023703 920814717 808234811 47164514 259791652 169216083 125292694 28665683 245317296 944938346 911948156 477061107 59441938 281081518 57257892 320594263 469327163 220595358 434088599 806576617 230598676 891767764 950808861 965731753 563384484 971468564 819403775 678671731 280203784 910127357 3817627 776296100 341384991 306507324 555501698 896049933 130998574 451187554 346310630 65729752 802916182 407011334 796210259 891554012 793359583 409471762 55706482 479405028 559929505 475454987 911320111 506959576 958894679 642871912 985845053 805918683 704737767 742617210 479525687 222657302 932619719 912563633 703219053 925083557 651615966 610881981 734032303 204239148 759588310 98454884 63141536 667479551 592429304 451189356 1425695 398949980 157531496 134378772 239317747 421457418 580426435 730718083 833832516 137419280 677137683 658232641 72691198 490424161 957633539 473856909 176508215 971744528 973166872 682450806 708273189 715637547 872976565 12234486 801602279 202659594 189585988 538165837 543267949 633446081 300907561 226292357 465758756 262456745 198413096 370940768 792118855 318712056 166414053 700064956 771708735 411050324 705190133 675826542 294331962 182930602 105093439 957261670 308388975 181286418 753002581 749802447 695939435 644326597 233890578 519966932 772971566 278208116 890984049 889541935 387201821 753974833 848480230 981270716 745789872 131723329 226964510 558279335 560908025 777232339 210835447 919440136 525703327 106103676 961586712 598619582 903837384 364320209 799152931 486137531 657646885 213387261 710183091 439141510 212141947 589951701 165085673 648603560 101912011 751259014 934772306 112580851 709772537 720877547 955373051 826090981 433196149 823827986 81481861 255261599 213872189 222372813 803949881 305878348 249135637 608523800 622166989 997781571 188193150 153751980 325372557 735992804 300794756 484127163 540098858 215396048 889932099 74886928 164938729 851157866 378950958 269948378 987463748 750233256 49961178 222847766 352727853 842810590 101490059 308552007 831510657 882828810 601684198 358316121 24957444 88410216 831899051 730594245 285464385 407863193 101243172 48873718 40433892 442605342 656583536 190563097 646249664 279329753 354727973 166693394 343040357 441991813 784686334 938082819 522939070 597614017 294487290 681349753 17838888 884181229 233899303 969310442 399935647 756877353 741357628 442817986 877765096 643659999 819662886 870462762 585214892 876585986 192262714 39524871 35065297 941901560 418416983 672673602 11057897 531328843 392121556 278387609 594923305 551143331 856956017 409801772 494951765 343045120 836034930 635895010 95111475 16053730 322018096 928613965 580960202 858995486 121910596 400970024 718669824 763215957 369620703 563776185 696837254 66186000 413663820 269664877 820481225 304213051 925028203 52766696 702528648 590410632 207750257 530927712 781233903 609163531 686000096 529137155 681814729 361702637 796913039 664003525 347078803 16359404 757324151 820650512 509831998 30114829 996700478 265849698 712181912 659308031 206055081 214493019 28225352 471422027 593379106 284821244 700995420 860642992 15062239 201323360 993003182 458839971 212543678 558136546 248234615 706854886 169979321 544428534 299240624 600820102 371353808 707267142 587463077 43508037 81742544 154013198 924531261 547865318 882921083 287628393 263814422 163655600 193977083 715944096 670794990 631814232 118582987 518803464 570903615 899300761 894959574 288812325 903085083 577952288 10901507 652504268 324764856 485970714 597380684 964566402 774192594 746586427 694089455 705229571 136847060 845056663 758958272 604790762 769693272 841187078 724875050 683152863 821680590 677260177 488072825 955652060 334888302 312386333 499899935 955871240 651489799 343580928 380782048 60013466 611157871 331096389 181285556 270489396 732300147 567927551 72615813 957479671 633593225 45057994 349007132 870642930 785101909 969918208 766522906 711077236 191285899 71888527 218256593 823336968 193705420 194490312 995899544 620464348 238390960 794187899 428376656 603484197 776257991 34129312 148656784 349018125 863114322 934004111 365531582 395005049 321446833 859224786 758238499 800968268 527018623 532896282 158990459 424933252 602593895 276200719 141174060 654411466 236531536 245811058 558703746 938651 736466418 363317687 268679340 485140629 396768602 608608227 975748862 389772678 500737876 42728900 349853061 119153103 303590425 670270828 528932514 644618778 200998145 943342566 737661914 442864260 963494791 223124596 907026742 615304200 169622958 747766368 123610589 14403099 719973884 881980262 591318249 894723441 4186940 325329696 107098374 917863754 92732548 707694200 56824129 811501889 79688256 949611171 446506078 32511219 19439940 367004959 579820128 147238145 479083650 422975899 672096294 845200812 832301822 280432300 955065392 823453531 571701748 282622182 86824040 195540079 107923792 77646676 964176901 176019362 25170052 623601366 374268523 837045436 815875550 506944078 445676354 983003698 811753667 120527547 937137229 287184049 262838242 496563237 771799818 907463391 894115189 118550771 143208930 208360218 157514230 787076908 43408808 979229600 656950752 587762722 404102106 250337240 176700302 246411214 231727518 313520089 946137146 752395384 320071899 253651670 285006044 872004616 371322268 764083554 232899868 620119240 491999890 938400702 423017821 48753006 65631024 979895029 611821304 783257622 935907733 776115126 664929082 766727304 472451971 134395066 939101293 940507388 464953198 587598488 883563864 943732008 866148743 742269441 262537862 208088720 53031295 919076926 812265094 852081783 557189555 403090025 972721401 295606912 346817939 624865590 196703594 489512796 347389685 283366397 653050343 652419730 132609442 138060228 320825843 853011661 224094023 222057530 841378050 290265680 128389746 228904470 103241035 402358586 364949149 55707862 246656669 927977685 155418839 890743224 237867521 934100172 65636730 121011063 888212339 694363673 212590023 360078931 573361023 997056106 38740442 622338666 253234475 840285730 129012485 638100683 146834719 189376470 599667212 833576062 78090079 812500350 627957809 240102994 208545149 657460748 331301253 418817374 739449205 936245440 274427708 617996325 372050926 624201133 480024380 510383092 325484526 847982719 525821794 166398475 802940168 245789116 370532491 160042162 893639997 409906811 50385888 916869290 574624186 429416218 779370469 825176100 986558044 480674376 251465039 582386021 834406009 749829403 176229936 451236555 385718639 629951316 470270082 156852543 893453931 231720458 869439481 419009294 681799289 416295004 165399979 663217175 533487982 743588412 348155390 937529927 753107380 636635574 306921458 965131303 749569981 64993360 308285762 311991188 378886956 67094000 545180748 958500225 831741503 856111755 162131980 709379695 651493551 439414099 148440073 343939640 343733746 994497168 408337050 634498348 18137926 139203546 854737195 337986589 971822566 178148270 997178330 932098887 89702277 179137153 816189330 62754406 659449538 440532200 521614856 320801801 278852518 277285289 126857525 954136550 626528200 118761189 616615428 256840527 759582256 279654733 591883998 89527297 136839385 784567529 9482710 514512802 984723341 418271517 104187539 843178835 459619039 790621268 808197132 276721385 899378152 453783049 185239190 887095346 695812229 2855199 533488704 253807231 451653153 851971093 314412491 215922527 177424537 581987518 316658751 943368553 375620505 773209201 36318014 504892499 419883989 25648102 431943421 454624178 576645226 372906898 429119085 147557124 449559896 897631586 788640155 134394038 238414125 726927008 601725655 797744034 861409040 131404538 182713015 628957534 914803242 305346394 524228780 228870343 510507430 257461000 707104944 938006730 547377394 526808360 312841780 979569540 427740599 763674411 236953909 910431229 704749676 29629115 836140129 133211334 970525899 836203088 364256222 848143490 499065620 650972490 126001303 295310873 359519388 424441314 740574550 13907148 536859355 971621868 189697762 489714423 303644505 571913514 313228854 907385450 313422555 118436690 84929728 852074477 431959189 800516030 605143258 252658373 379525325 106560069 865957245 488224129 83237632 471808428 352185283 327026184 883914790 130655452 176831371 490243182 478005348 82387212 916703004 992339938 511499028 471154022 321194163 426962619 664939579 321496028 68771502 806561475 710954681 674085732 66563530 509977218 993776930 400122190 297507661 46975206 991680395 9308980 895077637 930907153 202391693 779355634 899260805 832192644 728096671 508711130 82091188 326761532 395773684 9951391 192723185 102125953 518676575 333862306 42057871 777376632 367607364 861678522 323548313 306155275 209254284 121823546 558845396 5644169 521165336 49437499 605930662 628091839 680552737 306531927 879496747 180299241 916695307 839586303 935023205 251992265 886056492 455430480 126007306 369465550 914465901 687821232 64322622 18330120 341304984 91205138 752016253 81993578 213247220 172502430 964109270 670783097 492422287 165100953 346109823 151655582 167208516 537346917 180410669 628421765 545712683 264944434 103280489 291297584 725722670 480178488 408741112 252430661 394415462 329541399 823534751 299415464 57997693 7326923 401957161 643733164 915968344 922870673 322526324 698213351 838005331 937585591 356604281 656376021 182242177 425926016 596026808 12112429 119688018 531970734 860279921 506504856 747459217 753593542 23386785 168966586 149810543 866282631 295996493 146412197 43251979 63110437 202900709 419283235 11171590 916590702 959929284 98006923 659291179 864330720 739236677 923020810 481710713 646189154 817844028 245557330 741574613 579843919 488251302 606183870 693294450 318066745 62958426 475946421 59965619 824994317 179921428 442796772 462711447 524636448 913537999 786496083 214181858 10321510 978396285 859573118 756030856 711380777 60469155 780730292 619784803 287174963 965547888 262774386 337848053 971844553 46514401 213179811 265742196 895212665 645247854 215341807 56782737 894834040 95115701 518014302 999732225 56972343 773497326 524824304 561955353 223961842 880193737 659680428 727959714 165062527 178694313 502724281 246226280 118830987 106564518 586106037 546515403 300498240 377700289 307584923 631173628 459700268 760593901 78386753 644076908 289447713 460866464 321759335 656965501 285505805 126252978 324542131 571210691 769858746 22370249 437314374 194083285 879326930 887913966 996841963 162050376 341034280 111815372 664139647 701375702 182884049 386246178 583867909 423059236 880834081 15577706 471737574 36662331 794705403 173788845 757742376 766476609 399019116 904418176 615923269 991992245 201362456 251021579 250410120 548072500 585016306 228598732 747348110 839424805 962812805 436690772 650836465 347829599 499780467 703584622 362062637 367162229 269727540 940501492 565779216 522658090 278196714 874740522 281887636 532033660 566788526 490799221 978165090 670536692 483331984 499301825 889360243 579153383 438917563 605859834 717320579 417349514 752477881 710698620 854926647 351600170 444238455 149411418 86185618 628039157 272339376 785070102 233005427 413592542 31520817 486861135 633812304 241796506 625505800 203353347 260988736 673192457 922053252 494197290 238537833 582653200 121021086 518497935 972823469 585556313 571907 583224038 834496946 922578693 165661869 211345771 742582557 787316006 336024342 635840343 188203248 276155470 862792721 689192402 69991140 952796361 596354900 292418911 175811253 274658521 21704569 411657665 211833926 820005852 779519871 362165727 932328774 51190280 782501146 221348296 960349008 988859642 132089261 344778166 111390796 524276479 306901788 991252669 877595328 133460596 762528057 909058012 446063966 905757301 551721788 763704473 451449293 195437579 11018990 682246776 416856888 695999829 767933597 120507724 860998396 850217579 947368165 333659889 517027392 982928564 153010486 657631554 825873396 194436641 498232256 417733676 41114832 883418800 929928402 33728282 232844835 868985673 426624240 728482532 337899788 884788055 922228558 898827103 933683861 275131944 656501887 23309623 882826968 951080620 59230643 24267668 455994968 527376456 386254549 309913897 608808601 683956584 750833677 74422726 264277923 611281205 552471494 65436091 126764294 713785329 968584835 585886141 308328103 812657732 665527625 431028655 937898395 634931670 842883055 3414267 666707681 81934320 622235882 311163977 947558050 795934623 957868686 132729212 118904256 270184102 145262319 892402285 557379517 504700851 541109315 821754306 892834525 337693917 887835855 49609776 225316053 854499089 445301802 851553275 494007159 163979431 792485598 269474656 25079569 197787510 928595443 592253330 411044504 713956998 844826413 296475890 596027699 766341559 619556940 777515064 374555968 580539727 469074869 44462386 388730990 788541230 844365232 174195918 378782866 561973578 357326666 415664671 347956925 40307307 679434745 454194626 717623259 852830781 941052110 59549014 293840665 603220445 214631884 423904031 75279737 158492788 307081534 855487592 187748408 80830135 967156878 406665133 973889200 218298528 204107666 101750982 204769941 323007646 701031336 517518521 174825845 465690063 872099470 374693921 147037467 158193331 34065421 765880507 498613251 898631503 93165831 218675269 140260746 661528837 286156465 829845859 507320981 715676752 559301979 637044194 266525315 73739194 719270125 457294716 919792288 601811484 15221703 617939018 637721812 95465264 512964101 511816866 978488433 19573902 286575626 84125878 900472615 35401441 64674317 134908441 84724460 649538826 591642307 942876979 324208854 474397751 661482913 411981766 888894064 929355817 305553969 166049622 613711094 798147105 694483275 979649189 654856173 93127142 313719014 748870773 802883023 347306814 306825487 69896369 39352219 131401172 938922836 115001583 44819403 383789099 104720184 145796432 224476382 749739961 39189786 379267810 894019938 347271379 179769345 943073015 406599144 46661811 970631625 748194573 684712732 831732284 20248362 745064749 73250050 794632634 68193871 198940926 978564943 998307585 960435695 539494266 268013575 91933968 853956122 762896622 270572578 246308959 354196138 197305493 175164815 171275733 119832872 586272862 539671625 590167219 895920916 249218369 324837619 142714450 881370664 661005571 699512459 843791285 54567250 694808677 648358421 585863677 695262254 693298440 37885955 433355470 945643280 455673387 524671085 685539247 850279268 394994167 400564872 378931533 198198482 549980614 27992102 596053204 419644690 342177279 407016766 540943483 620648732 243582606 946277621 101606329 91312071 340027596 682621724 552560325 138231180 393362633 859828477 72058177 898821200 394405340 133821744 37249349 296525079 852105633 894440252 912901065 190517259 60628859 706572799 301025982 143118639 950748802 762195191 498476147 736068029 91383367 980778477 960702588 491997045 444482630 615806730 389802070 852328353 468287639 917543618 467447809 171634186 311809533 855256759 639161769 900966342 631941853 799215600 627248689 209653207 861553163 611547866 931107898 522101179 432949171 995091097 746708559 739110759 473085883 469041944 845247049 337121090 734763681 728251162 651196296 18195212 687095278 308198100 756571802 821847616 199291790 834814253 145977883 311127667 465189160 80379367 974120465 581324859 522056440 953849416 701339121 606432713 44895827 85803348 937586929 588068531 267097109 246410807 825215209 428690519 127198769 276445301 616019578 717598507 815452028 627663538 771945553 391483636 5484925 880454955 486881489 373257777 863928377 208312365 507310429 287680974 976888135 452409554 861733365 818416407 421402330 230898673 525459490 392277353 868079737 296974847 999296406 941403462 641944190 714357922 583144986 777682645 212294758 536596707 235738292 74509149 322709180 152970879 904977082 617655686 371364703 419942815 907993061 217850792 912461960 6486229 951264405 403309585 550542142 90910270 68886801 541392943 361412078 29675790 188385644 941115173 795842135 858075042 628631592 776041525 454634026 192120508 243567893 614583849 793018560 575365834 445691794 994302939 914979927 967671425 261048250 816822611 811878251 450610064 614398152 572172155 395894951 634787182 127575607 748150188 651413901 588485931 505348530 11734927 917054243 173866858 232768136 851771242 510055559 119424679 3583847 46620583 215438418 885994259 426725497 298324816 162164992 179104456 459080678 859334464 299729158 587126336 149794353 440097002 733640781 940480539 643088057 872692750 229982324 772932349 889466631 403811442 351997924 96738570 449544673 952823227 752454499 835664244 175063248 755397104 492704956 900156627 110759083 147121404 948162210 750635390 803858921 893996028 197363153 3406533 730936765 456806136 69255597 741045932 633284937 704102940 224141572 922142660 832232710 817819424 101074427 253396677 30321491 140391829 549761369 780580339 386430044 587926449 221738445 732679494 155217804 583052853 787590911 431057352 915181577 814838090 472896865 901482353 502433353 814312274 418378429 308755442 477632529 117769507 297211512 694266843 138774200 33652558 53764325 431267824 272319238 323003889 199861833 198297685 587656273 421314138 702756988 434459516 251460626 497627642 813067206 121501706 28339244 765006473 703059618 878245231 235398549 98428077 343691383 706299867 566584258 548458601 569338180 497894812 492924266 560919412 296132781 687973483 453800129 951993957 331821679 712379397 93995052 534796720 795436405 335457914 510819564 551906109 305065229 28949049 494456990 233782005 598019229 95744363 294931951 885559239 905939454 397358576 194738658 45650510 937924083 685949705 933629362 971321492 902026850 363578248 179112444 59551860 725157953 559645652 701973221 289088358 817507050 383364192 564122794 242145602 342738673 886446309 540481899 108264534 479352480 751002182 780217697 624275059 376003868 119183023 607739056 444323065 602858972 11414392 603384587 445874728 619063449 872945439 249146870 773164363 818227961 819321960 694415045 658609133 813508705 32367421 343633504 739624689 276307130 152440806 500372479 858317778 903803154 532691569 300817396 311828997 227223232 103209524 37966939 589220022 348733116 922622803 263956768 147104423 565660864 753041107 354198131 480552588 388921089 435903046 995851634 625804042 977353209 17640580 957074498 387761604 560033361 855735119 72904036 75951472 491331702 913696911 533181409 191456869 933185017 317036148 469305758 402812580 196089601 792142104 134462950 192697644 155094949 469923567 255886834 473348321 266596026 431442350 777287801 986687350 857030795 208627180 207087858 460373679 280327256 307244467 893864944 348938935 412876696 352867466 633824015 816986373 541442471 510181510 732347034 947465711 348804713 352148349 527371105 742630396 764070102 790793968 919242487 629485113 729245809 482068043 579078548 151997697 391635016 97101987 588502442 734055041 633845506 111870522 98046721 817571545 741914268 79130320 669740691 828729551 86914615 409400976 870218022 846107201 47433863 151914524 108520760 150162485 732094800 412693263 271726780 58719545 382829552 895143470 81349975 986031738 740894626 642720907 1526539 479642463 612172210 896792594 271955414 209182148 674270485 497896149 424627071 761482449 142820949 954002910 342205742 62987958 509983095 98783743 167675029 970069642 3733564 690629972 221605282 648818293 412808759 838029806 758395962 362443761 192296122 528443059 536124804 15638722 269774556 481555467 169121528 676174460 337871160 828141470 788984321 150719814 527805584 922637575 142158029 331412051 201645105 379973910 358424539 146091397 760968878 413569604 204247194 827210815 157425389 904040316 69040137 174371795 940861454 128584806 316397935 313666215 884461629 251656628 530773828 807158815 692355319 229863643 633000946 93396266 617431076 74130307 462565059 707124061 258048796 835583676 579735801 575461136 927356653 192783003 826579495 423199367 107862871 484398078 397083598 754395343 264431010 70201665 625224845 72508301 816505923 876055050 233615871 691774280 474694086 65859425 551667468 712088662 540838822 76682027 125531206 164362311 329002587 310329748 880104921 819214236 264125998 71387218 661375859 144963042 321516033 651518710 575411324
