58288 703507272
305778513 56300428 664968015 906985427 734208620 629976939 321838632 891620321 121917384 665222198 141059250 872937231 999207407 560834248 705578052 658176111 773850690 89003948 872379775 849136579 218362988 67025674 708924732 684855420 580263665 165607139 218584770 912111477 24218958 203776504 146226519 709656347 898754834 983205037 867031392 922116847 580863471 18136425 216049003 992546169 826348647 53676321 694801712 755612325 286784653 433544207 954033640 166604256 427866291 78813791 172811805 198868062 342859275 233140046 288614169 468016636 588300024 382575687 882839865 997367160 691770495 498315986 367210281 820783923 550430068 138300877 45887627 423031896 687327937 975856096 153373199 169484285 210242155 827449687 654443530 795420397 193161136 770569156 700370216 341045006 301797775 73059037 950353100 118710061 409842393 31578108 718314528 3506107 337263612 630575147 22079874 670818446 476412845 34157967 903332293 197713149 517055000 974142477 138720421 191757748 65019040 683570174 138742031 592607015 327404825 343437404 474473360 284332848 98645389 340936127 726036772 777693891 940386934 94381318 797862520 921838696 502493639 460584248 185773125 915663541 534900827 686493873 276805344 717298262 755574189 226724682 611110337 247691027 794224062 165179605 816817307 731463712 307610185 201512197 614951220 121547974 456675866 757600395 499593472 538831515 12625370 437219161 46895671 482569676 104904507 702123097 736516554 13827106 428839340 329120126 617991440 973043383 416928926 100595395 867101937 316513408 150333484 450517471 546004578 450796245 595400778 351485615 629208146 596663653 918962976 695826462 384944872 98446226 463140794 276427385 124642617 306727986 186139316 960052055 55179665 664340305 969957999 258204121 619408752 771854359 383941716 134908673 225030265 331791438 892096817 218231533 713097706 465386415 166974571 385699000 358976518 486427173 284990418 742405464 376967803 528320293 341720249 637438074 192335979 804869170 915438490 930278573 323498228 355873632 337579828 983581 455300767 306417334 619469203 561752329 22700071 426733366 421949446 509714046 472516697 150919045 455131463 591139869 41097873 858793723 201404311 777648561 517781647 96499908 843727109 718802413 538713774 925914245 371001054 136205280 629800027 683229800 946775183 540123424 57543059 873921595 754516714 742102551 192668735 107809390 656373685 835863227 360856174 501448713 544963208 466074577 150738391 941027155 110164779 528768037 17349521 382585077 981859314 802215575 558548510 786785867 577784214 343315981 517912585 979919621 932852453 180393527 827734173 779278022 261891547 725261324 689743202 404376960 267148097 738409879 443651636 579839060 725714800 786230223 964919015 902478879 718606045 856810968 912081373 615616728 558798047 245476503 735210899 234093810 334429959 340925198 485275654 365282962 378876124 680687062 972020253 658851774 387860845 360276258 975957179 968578698 925720940 665045116 949984286 194161053 782989127 440119132 500986665 252404539 518576217 367702718 631794838 649172995 752849624 134450850 10860215 554687506 372988098 693470154 936370529 207041541 462816814 348231488 574857642 517007624 841520253 418317695 234122604 787196242 637325227 770312136 42117656 220892230 14281536 785678377 583472361 130609040 862240110 381642136 695718169 507895140 229334184 973519767 732376294 593928007 583961423 394885742 722782572 186551989 367626457 936735965 684768949 163169722 584773255 466522034 319101261 265764416 8418204 153750181 96084108 315090013 373399090 179213136 60770786 385384249 134473844 37524454 351799272 25233462 787756817 127647859 453954458 663854792 575514331 135362278 311688731 758691145 755280119 804485249 451674651 511494358 254190999 631880921 92517701 637261097 766407046 610263193 492455106 813583823 488926559 102311259 47521175 972437233 344906620 31402750 413959023 958350766 144112895 92143556 417847623 271628255 472042716 949994460 233313628 986511833 13990260 382570703 342457701 652793727 256500174 231443935 3888847 892822461 408254454 188638635 499902742 123851823 401282985 678705139 389843925 897003960 913402636 104555697 487325048 407635310 899861793 51825114 334387128 829077073 271193834 519387830 211305906 85626875 292350598 138762949 766797272 517250619 563830601 855221766 924161866 720887485 604657057 838319326 673117699 823508148 911377773 100195346 742816064 594708063 545955648 467608112 304404151 420055184 613675795 260346265 468668411 848193071 386642976 900376550 944942104 690112982 112552336 200241220 375377287 579150797 365312053 504410384 173562903 873124996 783400592 824363521 982974303 488647327 886496815 934174256 757815082 911717178 49268694 526326627 260949317 676786135 552869458 42592139 903315963 235432281 608781448 489955203 199264633 393318012 314906567 944020687 22412202 534997907 680125892 56393555 970688581 287950035 553490742 872479007 123583127 466845939 120525725 156007921 880032778 108821301 524115870 381330029 703619801 28713129 353696163 552774390 499619105 221264546 59323355 456294538 427668633 228349831 237108713 447377181 159006644 65905160 405909688 762049011 204122607 907211227 584643703 153073800 858501265 509645794 863754954 461785701 206387847 881315982 833823351 33433239 711239172 598008569 426589614 615661803 507173617 456781997 432030172 531969355 30222946 705553863 593623371 994725021 342809899 65150170 825491088 599124022 115719209 125456019 577345066 737966097 525894012 670641210 29563585 870484360 459787893 587803597 948150373 990671626 622471950 524191260 464322202 321659911 590864341 13808896 765065819 563544161 389494397 84527242 77131168 247518933 139388606 224454707 577732274 255881842 893910529 989102514 205852009 257174595 718987499 513660675 859676759 933979195 2202233 25750407 533495960 688580542 870362654 282818033 583981306 564565006 996695172 191439006 462507161 420477736 904305394 978975670 756126672 94996109 627882365 572912128 289492127 227665256 615702581 243682617 593027187 690279586 79545174 14072688 345169943 85656064 631163356 749284766 381852291 727936705 452124071 223260159 419030935 59587737 856793835 960414431 414164553 108750604 445111579 136989279 988917172 50905039 166730040 747862334 959090181 478252967 1941519 618819642 438032479 659932955 97584343 141899988 577614758 282976674 816808192 276487857 173812115 538247058 175821203 934589246 103070243 686894297 449892520 942277246 285572227 401586937 375593206 193256668 789204473 51917837 289560744 323670427 106507771 745908750 238885797 411978641 620111413 788017925 348420914 686620423 269908877 33001530 24827517 13349915 972846986 111811310 154693940 911015737 551690854 431408091 941618385 606401563 958669611 843574430 408493967 979498261 607126403 637255627 16530663 304132248 821157274 626481679 47716835 146712751 419092727 187575016 537990109 760970325 474695538 12722934 618759102 9042385 150575783 25257510 920352294 243205910 366575858 254757799 410537694 803642414 693254560 201460554 853690834 273515377 773571723 497318735 630539060 145130634 969142063 314750747 428934560 543417885 863898526 387994949 483619685 698015930 482356838 889448658 935416847 974602533 271223444 26007978 580033202 768354265 160932966 618480418 9370838 789884044 78212045 389493465 599072236 304735190 674741069 278445614 821665529 401087855 632783773 476685849 615271611 760053393 55234623 397645929 963748265 59060864 646680227 842570755 547608815 541129475 830558612 191546400 485186120 969870903 484091771 352264269 879600288 787814079 387028914 255767809 205152273 435119804 194044527 101992950 631572491 64448338 225529152 352651301 74990216 144567297 268497815 513884706 849253682 440836969 451278401 191993079 785780765 419232395 167676119 272460318 638323022 314305837 881022338 71274823 815703491 260223481 674532125 233414077 587942569 73033360 869599604 934752335 191787406 520650918 85276483 913222763 193956834 812972846 429352443 6331959 145575463 494110249 430054511 547068887 902509713 669164810 287822914 312162385 580341440 730529598 510182542 42278598 817106674 57424348 105024909 560638735 154198837 527426596 856230153 645030671 608294483 276489123 960974818 575796585 909592175 328919343 712036683 759004837 554490551 668651399 636680853 511399933 266787127 263931916 262340427 921081857 272487139 370492379 545000362 339621993 467774716 555262797 616788038 712202650 383460886 157359526 670549509 6806313 683283189 152786731 485477134 379631801 281656960 986006463 81248228 120925263 61033963 268914779 517736593 729149998 922497345 624807665 213723256 281218391 642164887 645744718 982408308 668897626 108180063 577192810 657106903 918100288 974921976 217855513 595771930 315727506 819609599 715829711 468976038 448327884 95138278 61778892 809166314 623678596 800722058 895144526 860320372 836941485 25044529 541309076 456375883 526985342 974450916 828488511 436027398 80138047 192673523 181537106 435485125 501943070 990260206 568986248 394958609 510375058 461467506 114131005 841414419 577615420 986732838 569765380 963384275 327132066 590306688 665740103 936264357 445202130 213638687 147501697 635804127 486506025 514517230 238305777 390675059 245204218 754035580 495104860 775064172 901453333 397582063 501680969 159700568 916352223 304692426 718439514 925022189 89743852 360394715 563380024 657113449 194916108 234893531 932061520 199832024 753594614 493769772 794829692 163334070 414133465 552668344 998439420 962805454 727066735 537271474 206470859 846453408 78870190 856058344 671622221 98525853 318220373 79633740 157557167 319082322 191099742 427687745 325190584 630838008 730806471 320412450 111261388 483867523 163169028 524760126 810265410 54980043 967074635 6467729 542421482 176888404 394549034 775414329 171991498 85850476 61127726 344703988 486286501 410834319 905479846 758861606 655320615 544423231 217515527 330748161 528353894 730241588 819473293 861445459 611600139 948419385 107786785 578150154 880017580 840603735 181791714 80881993 576582303 201619498 434124752 885057270 64496748 311221546 990781880 787407609 171019791 92296834 291070023 646012511 263968326 62142542 170611301 292532312 887051112 756251033 413592526 463331847 415209779 813480041 333680083 506523099 788115843 142850493 273276359 776650583 494996005 147830291 100222673 880248543 200681323 759238305 193211106 960590904 493554660 271592829 965775438 24344771 556963508 35770613 158973270 805866357 457956033 181336781 758256894 650637667 791994353 866241936 321251852 136672298 948670548 168160342 16795478 725988834 590139460 383996728 540693813 446711646 788402645 713006337 280648441 777377034 160825140 117692009 350795848 443675850 552827052 154745520 974038287 614932509 202841689 785506305 20965671 25628817 231088697 504101950 705317995 518838117 259495747 113911487 397716218 758331664 664977556 660543500 719118319 787199419 787450183 522095504 646802574 551578720 550925317 426881711 119786061 34473906 606364415 719339898 888362935 256549278 903358809 421304894 368112796 119640397 756895844 98938764 886341685 19712264 536281429 862437954 391422202 128297766 630825826 977410273 807383846 363781608 910524075 903943820 386902783 596965123 73482351 119450267 870285275 380279944 744698198 434159161 565349205 150517357 519487992 660310901 83369704 90728444 896683248 267348968 16642189 247194614 747379594 331679170 429955380 268849645 582560920 422508274 493229971 677657940 686984069 587841330 96540505 503580124 529171588 217803379 374498946 671490259 787145898 363675664 426090643 807737927 92531082 157007972 675024836 310236629 236630285 201790797 911450318 668810089 120562983 392842003 101362654 736943197 382057548 48341145 103708928 605880725 456974270 992006117 432827764 363933116 464632781 805813715 490203516 932313493 114167743 274584639 655282676 697601408 99731747 97348534 538483062 301596009 88125781 878635846 912052203 206687436 564710246 368340057 204079327 435399441 823522491 506925037 528456826 18045344 395981968 671322959 615187837 776021763 391097211 538072405 864970061 651879040 836581610 819991020 950087118 997616036 754654858 459089749 561419266 60216777 364141861 692494942 638748664 838360798 489050443 363750854 354304399 695615343 883814439 780616622 664637722 706918202 386403510 457416065 135284797 268230156 232230880 406527783 399535625 373430559 591351271 856900008 777178503 339582076 127018066 403873792 401462493 439737850 399697894 983849382 971528516 514007484 28176412 575630294 893537386 298786194 209879132 369743199 533665042 499217324 731952890 789826013 849933448 59523417 900196618 115075623 190616181 773967215 18691586 199149760 327922073 960679877 102364151 189813256 700837312 133761326 10436239 392246689 524244187 860068371 282857850 983046205 229255299 546141887 50567959 590609909 276236610 842030870 422580347 554669477 107433790 416580976 859619335 590622817 5531742 265831788 888636057 827274354 799823925 164298822 516869728 144960660 551431377 900523703 189329561 511428735 476202852 187382381 785172386 546182715 293038892 260888442 6430197 375356960 683085288 607529407 216483640 299997574 661733741 710847292 524298516 134838214 232778812 539298550 896134617 191779824 621026636 709706682 476995036 510127142 921218126 594353564 51907446 699858391 354510369 586120094 472603445 202948730 21427425 733689954 944684242 411307742 613466678 689593091 894093758 936754745 184393159 953974897 437470714 388164232 460429003 703771030 772415726 978371148 130189153 255043661 852278527 447284739 438426936 395492964 594486696 917147541 339306142 787741621 985989378 934089855 186689616 667527150 166876097 423051350 819377990 408424222 707292384 108918972 291695891 203022328 140147757 738644107 27839235 194901156 187863136 165613764 309132712 95822294 256775550 852376373 245361680 153527836 578970656 36831077 395695522 95263347 879991678 914843369 849435094 852536132 810278141 325428467 104774093 550120044 789882184 753674047 594911570 398109911 437394694 719867288 486113335 417985382 697470384 521295163 507090090 292287127 82718497 679205809 151477251 848188820 160583154 789140804 209257004 697080563 470051588 574425048 269119507 714740282 79325964 998222175 187395811 706414991 319667004 346102070 199707852 217959547 771198227 791933925 537811053 508430102 556298777 494055138 333057971 375221313 954994146 183411440 644961430 235471004 936357882 5403721 377062259 638443925 710398952 741033400 905571206 42344938 261323594 517830840 582785031 187633807 991524693 727262187 675248718 763354879 643929844 134572948 959669228 432624518 701301993 965474835 858307150 752674535 743045845 12211706 738026796 128581582 805740953 713146627 750786461 318875168 309984847 360198536 189986754 951363976 397228768 528505797 767520221 137320103 486975140 378201495 177219314 180550077 46671881 429890039 440831403 836509895 728503122 217493734 916186104 700096465 603835640 922951231 806771652 407235109 265184360 122988121 930451323 525409987 942279410 24221884 535902055 961090341 37355401 539696529 168616976 215187018 959507443 167428702 664051971 72336362 61368019 552764610 526773957 539810882 335679602 539273190 660364313 269058706 546888783 499406354 977006540 400573488 510864709 905500420 312863750 617974897 768326342 560020853 788301850 650812986 129275974 348422255 113473682 216671441 717061418 670657792 85810732 126612185 907501617 681779167 631216957 229352280 603952800 819909611 266186740 602227348 527065011 343584462 841648849 443352973 889528278 870233104 548383763 81268907 641401074 800080691 399845889 995987696 743294613 815704229 847037064 445178379 46484716 912893584 73531303 704327797 674973548 987376718 854354493 503017269 274932244 671023786 113318033 477274479 604740254 266794497 330317263 56743957 585463200 610752424 814037893 294638467 669554958 155558412 312272995 818444300 554930303 79366521 598809868 230015689 296631362 226361414 213087576 194652322 377038733 153847012 491272291 185438860 775603377 256581935 223329682 29722584 937843154 188954556 768413746 447966611 336137296 385546512 704667452 943337645 580953596 899840245 821278508 451985497 771497771 210172819 786534006 238385883 394469626 926939075 172780626 48893909 99174566 377083637 185380178 670515845 411818106 145329403 926936068 632309381 721945557 865207331 295867781 532846045 820571510 293658943 509620045 616570786 140279868 244243732 459202843 535403439 67790880 268902680 691336127 848329090 994308354 757213634 721166173 154462041 174837101 288461415 517619906 264791490 308403092 573759230 651049774 614395361 331029466 586474477 723127322 247590866 615800056 490716486 211703796 67331739 390667228 394493894 661985214 893837158 46214468 990688451 128239637 627229776 174102582 122033529 163458459 166632825 487938907 882720128 62236578 670259000 98444765 24302489 995072561 400280965 233827468 123425701 58796454 29264182 987921186 40240185 841819882 532129986 614725355 467562351 593425668 311175863 556553768 675003598 123042441 33017075 694672136 415682633 532457076 346655724 804235263 510977425 598813957 97319368 631895587 139626748 751747312 736622837 661121083 305990688 168506840 131604608 702225096 126390466 431335117 219765619 480537840 395062313 930731787 255218023 853467692 603019007 308589822 329397119 313175120 330605759 718250088 732071787 574537130 84844461 540787299 525732159 42000589 186652331 508444009 125625405 58423810 467034246 958903853 495418510 699081677 472422675 308156166 714626406 480655526 619137506 806670920 116054147 970838730 416780949 449027624 699520813 83784029 415495859 244674379 740048317 78009993 32741488 505800332 260218319 65239807 671768812 779789424 695645606 362477083 956455817 772054329 136388653 282480298 858873747 534033648 449355577 285240060 499315964 332693329 128349425 492065435 604684219 132213209 241711442 792756351 903880982 1629973 830699864 149104031 707559102 957377285 708841055 888222591 905646041 667359323 313485472 687047440 388157613 997042907 274734687 531108034 44390871 844795933 492721722 259574104 405264572 794441971 373204320 611467598 995699845 695676943 916115507 958040023 281699967 893955252 607930391 95031005 252489113 58712410 635538284 519674784 783775028 396441124 88077804 305110911 894753096 532367910 879045882 946191480 82259370 799372496 707856467 141225513 137558840 311031378 807652142 753015794 627990503 658624927 339625000 333540682 551552359 955921892 961824322 232448633 190152707 110329303 897362449 322891806 54794096 40707179 698586642 499717559 769403971 38414522 136847364 166452687 608660184 877053132 18355736 128709913 36723714 621247813 422443734 355601678 470975009 878138310 144856554 265783904 368576936 29861338 698257781 124744867 176779032 22275523 41622084 591368846 829614024 283592749 182057968 649474345 59929238 127198796 769407661 863613435 470624422 855274046 67483613 831861338 694620621 110789827 501959487 103246471 968928484 516158341 375932473 935054833 672045405 232984201 910876686 727769117 396614826 242449839 967023165 201025979 603608632 506900641 184532883 174324462 437660975 387688645 332842975 925046346 737890326 125906047 417152885 128971875 490419041 985718932 87103047 335774320 849299850 985642680 199854218 401632038 840700296 508591048 509011143 173182608 1880453 353527597 836885010 236167383 546280349 812015671 379596911 22074362 379465167 394247041 940746826 621280612 544402260 286847499 410403668 446578101 452076291 784692189 710853652 839760921 865358463 119085821 617934526 587913928 613989664 663824169 778150849 47432675 846322979 503061251 720596498 632841761 584674164 628234157 676687247 192198938 841273344 324753320 993925097 689109277 937763231 708563151 90825147 738949283 969646751 136222438 467068673 601227180 268883786 895106240 825476129 334631368 107995053 231214980 802853709 340117455 931865955 61531222 278897984 842052392 101644177 661605136 747236333 169304994 242580145 510621684 775222383 439336413 675652512 296803377 151688081 871777231 389292430 964630187 336502237 55039668 291814408 605010580 979335356 145329848 831478718 984289209 629832500 781434814 16084413 90310439 404324924 854407569 61007318 401784927 600375079 437359488 349455264 501048788 564040164 224170403 816936500 150709110 125693112 395837193 128324038 881839237 669112174 615941035 806523264 633725318 663284569 801260150 529840384 874572099 285798201 4444664 136422454 322611972 25014980 768519728 567593000 83991379 524636334 489814795 927069147 730643950 503483564 359695789 168516601 457849994 338720849 936240103 644792569 144174755 455293348 707659634 787389613 619977450 184381557 14409727 914591483 408973993 146155032 582313228 289353775 105498410 954387676 668760768 470391415 237790713 447802973 89333764 552373539 735142901 669495715 752960917 448594587 38311773 768604273 568577329 942907880 955993684 138788601 571546802 790604226 782107608 252130834 867665523 787336146 79009757 236818134 335589126 860592867 108365221 277223930 122343154 222783972 202655907 101091249 155481798 570395176 848939532 658387548 599082239 480846627 813719813 801800175 738391476 671394185 539482294 579302542 110094722 193489863 206052969 705485287 642464480 596134140 43869893 714163972 417023901 353814811 745877813 625891814 784406366 956444754 115820070 49777060 775900369 754722890 143731760 333543858 662117032 382818274 642941115 514057992 939650960 665723636 282472736 261893686 18710113 236850104 741628270 47970358 357027827 195011091 285517165 563034446 194507014 352116236 63908115 251692983 451435592 730486097 699669843 33551347 666778376 492487186 798410671 808255202 207022993 586641395 486911374 51772885 246811746 399022097 314027492 612744823 756809582 351258166 871473521 835349752 823870295 671858414 18622429 780624813 759788990 82951635 908436127 137748796 13877910 193266332 278981455 175314577 839103740 964015684 307903909 491566062 250616342 315641177 523521366 190549348 976162946 759074848 610850403 888485826 952205880 117147312 893299198 899398238 732882804 821154194 927519919 251881513 797805365 979424840 98529355 430596703 38529882 433141569 836405806 369623282 155122873 663808800 890150044 307505849 418889415 409004403 413218754 840900453 641664067 703232409 469984197 796345962 691614060 197695106 473138852 952579259 913583222 991038961 223486647 792632964 479100680 125831002 398484651 503524400 182251700 176852567 108751884 687394735 776708177 473348504 851915542 318682481 999255863 544195856 875662787 906043532 326032759 152885772 71802332 540220345 527832153 212896286 582621569 72751565 573555051 931783199 698887276 815698321 863238841 815330358 133317243 783976913 796677625 717674292 505286248 899298607 744748010 133631185 541790710 920400957 348982582 559900251 590725268 913619769 92454181 688207487 510386079 376595529 599960773 167481423 151081444 100740638 907998273 293764478 759116742 106407020 400720994 812649877 174299372 554336605 766147553 631209715 180134815 840769108 755405166 33058710 237640471 5860845 280433375 145343298 671722297 636131818 584687484 78206220 186657109 57367199 807683546 250212159 288424225 303962849 125719684 533298960 835178667 341017604 713036934 879107616 897311382 561372712 230808774 359654702 519618118 151344512 869445958 339340888 390240144 195159604 624694573 194749776 624646178 437780660 433429133 952725307 315514548 928382640 769380494 945454212 856674059 377550304 157623575 209878491 83078084 230261652 334889267 434499903 715678122 226270480 136883966 950648311 887606219 316379449 973439569 271692017 678126837 296155106 590279582 459813650 94655525 130173643 453892456 466791954 938352924 284156485 170657675 823564627 32217382 441279859 592412596 193033195 868316380 192655894 358866696 536511091 883172426 2788945 824629095 142126914 665046344 218501930 139977474 246057863 479302107 5605983 609093076 477833613 421947685 672110549 329710021 780083733 281604815 777499258 15049572 364826717 617007201 710311125 87376741 813545517 182021637 506327524 225004617 982746429 115683547 680945136 739989729 246181755 104153742 381809444 418986677 113647960 792330614 705561618 332077653 559692450 229228953 244404197 422561726 531156818 680105829 817779777 583709981 66104453 953610232 505731240 135940259 764222397 968019356 353317413 465987369 402882058 555357070 37753862 156189740 609758997 874182856 209282052 20354286 615452055 317538798 730492749 728859526 842694487 190743078 555886464 574511047 746054213 265887654 617491865 209784600 372769505 869400558 65212838 888800107 493977634 235242071 749549258 495133861 929380388 479016639 927168658 133115058 330755303 504004246 78763660 640178855 375170163 809726261 316280283 617509366 270579846 251087506 800070221 903880752 983737149 449041466 613120181 728366996 945205367 509042701 380547947 305023622 724028299 980623330 684321596 525794844 539337699 263542476 970176480 334890919 59896844 783618955 978890533 231128405 80701256 573812466 964730536 274443748 485668945 236386931 204326726 426957737 626232299 327598828 309188995 374772069 456447720 389699443 755148334 499602747 130955736 899168075 735867546 457714496 246652193 846680672 564272338 628002355 893931501 604181814 598226790 84290995 676480354 667262021 126331727 510020577 45438884 268549447 392655789 542845528 134838165 326194717 30535800 643609932 740596090 302602616 903226505 553195129 349421193 688780260 399374080 459584888 625358469 704634514 457167032 973960171 46908749 855872939 933315208 697252292 144581185 391067284 439315804 155135391 187256272 196446953 786678660 369093404 522682621 680147213 721558261 395834681 158600006 158364218 336352936 418171801 339731950 348978514 570269474 207002307 709329423 870492616 544498779 279619765 135922665 320654665 751677814 932209080 826887718 246754287 267183888 955725954 918412930 890765982 363669859 758822229 167677817 28727676 764979283 983330048 396167574 616569336 56088535 902234690 533599359 454893080 479536689 781619029 940241792 101105135 830201324 673563996 290639053 943320321 706909135 722714454 997378300 354399003 402031524 974613372 66588468 798574936 54507398 252705714 464848562 984884356 267781002 885890274 712435724 474468667 115873814 853310922 954321289 175190390 77556295 844071468 146424780 340814148 293449145 940249493 125564797 13010717 685330080 763759841 496391520 377456456 146399203 62075545 382068360 843003199 112343931 506322771 482355010 2863963 604129618 935720408 324211291 645284640 331891036 244251380 307729225 825419819 963062664 819297259 191404699 583428763 452891541 176023795 811056320 101057603 530366529 940100223 306212023 304708742 836280092 140228139 20938884 237745153 450514476 422793317 197050590 902950995 497260284 211720411 772179248 450255944 762418289 240301270 905113264 755761360 50768374 906649722 900916225 146501371 101967737 547052570 805186203 877493893 755645766 471824376 138546099 559805081 350029817 180880615 354578442 246697877 621430892 353377419 802899422 825459756 405168789 665038859 62589333 660822729 798130768 980954853 68639549 47641094 819247423 345587551 895944232 517749934 515569949 830458130 366194611 438007180 449841940 192865954 336762289 90729426 561542382 921281857 227123615 578310424 3044860 758932638 517502755 61258725 304717573 615870177 256070687 575573050 718553223 971579203 732049498 86436390 458654702 415641797 295533530 872093481 84562913 14736318 809619377 639519378 574837068 2361771 584768960 242512769 80568333 970560018 768235858 573507730 568527038 317075952 982994139 437516545 772108180 368204412 21030616 112374803 125679089 184332271 776292096 53082284 185198673 451174058 473067216 756503898 146558142 846452489 461967272 889792559 769057631 628451979 638649503 13201304 636519958 231674919 481768578 636767698 231241446 729381769 48476886 804083842 995678119 586980921 557452688 174826001 13153304 713109633 606753362 834298720 377885077 896923799 351361556 709262540 316598226 251918499 26614037 747097442 587814555 747411882 173920128 412665940 753561836 269552909 280933305 144764042 112659553 472511566 777991970 259859525 147769351 327963290 490103080 407171276 562853161 972488933 639757962 830261714 458925595 781755426 202883423 318468717 617331745 334665144 804696325 776639627 514239495 613522840 399186991 217238117 910341766 902413581 790726626 969281738 423496425 371698533 60368684 855832543 798884540 566634486 440712491 460069353 656930504 397912671 469817733 301421157 261222264 326347849 14659042 451422478 509653320 534358025 117675284 486273092 990094166 488071523 2074237 260090547 164792969 378041261 175080055 406375295 546887908 511523226 716758399 191041899 139718854 35618725 506882257 795263303 327855304 106979753 231543098 78079928 982510136 316088361 451944409 518683100 856767496 875267640 301527981 837225856 960123650 144381381 734868464 423734672 894718949 496419546 175407865 408449755 492574239 262839988 373678286 565428499 962113882 494317878 117861900 511237737 608330292 448352652 70865995 670205321 106700875 218624655 847546460 329499969 797238821 3371646 42148693 202838001 109053714 453955012 249898899 619368785 132729575 561278050 430758196 86807174 874655067 39068250 826005292 377761918 594518872 308815625 891243954 783856918 568112846 45073004 165119146 353626585 270902040 141577460 30831370 989872327 124832660 620555953 125889546 127332583 418746939 980544879 813103748 62579892 531768255 902673127 665592148 223203900 359216866 499830554 216036047 458154417 636190354 831413344 177905307 586345969 697277924 707211686 813236057 943905023 566157839 677841725 386871082 212888508 913040953 731681667 73931305 174554702 311384543 885958899 849356836 180201355 568849118 947448964 798615787 563738143 842011113 607705057 323627580 531750715 924106031 580334861 345510603 127525703 379399598 908878456 231363255 914855662 957400754 620963679 32916620 554204433 630964999 450191075 54311598 941428336 48993127 623976658 43937251 118935103 429937697 747129265 572511746 455771322 834629757 619864876 916693725 253290914 943371020 260914823 807790007 878238052 866260814 115994100 333583439 541199611 181040185 221097041 894526646 91173112 991122398 615465797 711402187 265675324 714943106 328770790 912662493 387516221 376263123 691726661 712051627 821811259 627179990 30287012 262460306 340858644 686022556 57022800 325886349 568989970 744579335 89973219 778158843 841960029 611418600 794184273 242122668 19028781 790127054 580758554 151699671 919310955 473577245 165670943 278455542 412745817 609745233 273962560 496974941 248336170 421837897 857727394 529612812 530232722 304331005 520286273 387117687 588926199 682400189 430795880 203660001 889747086 851524133 8621577 302649893 64758080 103417761 210405148 260101815 102992651 49716804 188005251 625904597 506053341 65447572 491183585 364506905 837257497 878543504 225765657 195042722 912055175 417058967 498591898 567939229 76142742 729574841 349859984 800666152 256453062 421610828 301007188 710373941 319147069 570653633 996842956 152019624 916172995 834930833 138043243 636318649 921392786 719795295 490152617 158422385 873059227 504105414 30927500 305854803 53490259 902881453 470409225 597398494 697148854 408689163 327978789 795019979 663469435 388116845 910239195 199025603 501204348 350055849 257573566 181803781 855665036 511157517 708285583 559226939 698108501 985621737 775158043 172975938 439300149 403304361 51863992 435930377 332681100 374352034 764683226 642444153 30538029 684531643 577468473 74405929 387203297 243991037 9263651 908602047 248548365 512900628 774798353 892578881 605406527 985093700 869542607 497941650 169505440 790050453 240190943 62631877 910780312 189307790 300388033 318336050 74655252 823346158 160428964 368184027 91532501 290716277 162754893 143766916 165476694 45427082 636935101 837628469 83622185 214156709 672467843 690839501 754191662 157775133 587859620 816617310 738725869 469352332 647632436 681933165 83286372 601475245 457354628 873310161 183640673 584132475 705139353 560435296 892602148 253131668 798196868 663686306 634842321 278377377 64410556 578152797 675106072 905383504 405074943 37759920 639938657 955571632 180021710 275907838 181701764 367828552 206034071 642927586 679633289 558828010 578439419 43034374 331816766 56095667 863941937 274328969 872667649 771325931 195609646 177596616 57741637 158063420 420057474 909561729 3158052 512523273 314979130 969364276 257161589 955768677 811639648 994805884 224043592 849479365 775378852 834574275 304715508 11132219 541810258 392812896 32190364 283429663 18541859 316419487 659619487 308622865 841118922 635165702 976229821 279730590 851445543 105066176 379460899 404959201 729061679 669873570 827539751 409353133 116867122 970740937 768280713 165937361 996144184 670328639 528463180 979551483 144047198 570179541 71643679 593430455 56144280 134520462 948769639 697198853 539616894 857034562 353925459 743387499 959703422 144152067 97261065 654071512 112054689 469178998 553141091 539659460 155124467 924983258 245355110 693343476 631406997 275481052 912614508 580536425 814412559 176746972 929906945 970289549 198236765 719639986 98876224 848767954 557515834 490583208 436036392 116913787 565778384 682816207 520528117 540919124 94780257 821919016 7290509 302034234 447694336 281361312 744732041 556690956 942416470 827786652 359918370 45932523 102326180 553122958 652891631 970996195 923944282 674936685 380722164 305977666 389930994 203026514 493547522 841311861 535104627 977634655 798159703 173261267 593972695 334795923 674504815 335375589 478851582 540406396 854948126 263754868 644998378 515467402 540251387 696002741 902161026 325669657 519388176 779624609 265382638 28860574 318902803 197990789 105768601 552479064 26727492 348919584 121847491 295905350 377509753 223305860 900588474 530967721 563255839 282998728 185417791 802589534 204408489 841753157 838945151 391326007 863124509 932259810 22291166 7640133 221178566 47341408 976314005 830370830 857566018 495460556 556162529 822743973 767630224 337697905 722901328 943329932 763571196 523359138 828899745 207563217 537699829 763014556 498116243 621966046 76486700 464876470 648755236 990425259 377643733 721783247 141617640 489363056 244860803 361761155 93354699 563739242 563726277 826001234 189045003 554812636 485454730 396587914 273464572 979159188 725891813 800191020 852252086 390515879 500086023 839525735 430124308 373518879 500791162 217046217 287919012 471021500 934720066 406233203 720118935 244208499 152198422 601058574 907468169 569118181 472742201 713422957 849557914 125580202 794262638 312112959 308556421 36440829 280354493 400389711 848966490 405604353 422851722 625540063 156337763 411931162 514135049 765760043 436257598 77055989 162689300 67350433 288743341 785905308 54439910 687663727 220618608 516355961 993753313 690750265 126070258 251986472 172672693 662842999 866198637 41660310 998677612 314635919 430741082 93917915 817492768 975481662 117393103 862716980 381831007 513955381 748533619 595069494 67385451 471268687 134861925 657367809 183420816 116466716 418556168 407404985 367657233 178694890 460950199 628725579 173224489 663763614 495642441 722369230 81276277 970455613 221633923 70391950 794639658 906742767 621615747 503530314 599583821 403816856 734258657 458307020 522323029 658777835 867713240 523056203 148217970 437408847 404919308 645631389 70653039 309064089 947194244 607768809 37879807 733759614 195427308 473532189 78294749 985026106 464395909 879759098 691350455 17435026 826989680 825915308 801897595 1103089 244414488 509679159 622784620 893053121 405501362 137790308 436288109 547552766 819501676 589758158 378466710 470555149 822478394 490305994 991765444 21375216 952404575 263874336 226557549 710498383 314496365 754694035 11243737 40132162 327453636 10833546 790862774 475553481 760311011 182315324 882613965 897450985 428941911 926303934 689037625 638873979 637233079 44436489 969260287 91946296 471509761 226818828 978412728 513133892 324515749 938610581 254515834 584978221 238266634 381728130 972442906 621902234 594758244 226322583 526125403 767371369 634961951 695217634 536062426 881505552 224274737 884220715 509222467 408455078 989167840 370461727 983866983 906709671 829003473 643554808 258433171 331584533 447709271 668579228 773719166 735722863 482602416 696840507 276693312 402223501 758928650 920575017 554774294 573581566 567097982 299386435 943573545 319461558 668673732 81717180 225202535 109129381 165159470 934525047 744616554 996688215 228108093 71668065 969637705 343640225 474799749 607435613 637650138 777630665 953706031 928555589 546681035 419256520 723225843 511179537 851663587 519193006 939785807 265043159 271252916 202510928 46455165 170453105 147547730 593456100 595193971 511281179 378324745 344936201 627527233 325990416 683776333 762623635 20584050 185308816 432966993 774194343 127541029 283070715 415935330 804429363 866746301 572312551 459179168 5450784 638541025 21748958 105408791 989086968 887007868 97046813 11523314 263818583 1354499 407541091 219755831 462433918 401770344 280593148 949809672 483341672 650865403 160627699 452130249 684033998 848697846 280176423 477097303 385004732 96129050 334785178 249344247 618200721 835305386 216323183 711606170 323065521 664842870 60482958 146135721 32307912 452350408 727839014 666907626 385765260 547043850 276167271 19729470 594119404 76862438 393339323 236607697 138813968 146530661 58939667 251592410 930344397 582210475 289249565 59967873 352181351 938068973 203881133 110701570 832414301 854126236 678712548 607220957 528942575 861635451 365502454 995249498 652785596 211495165 184939089 902347955 52191678 83645639 569871173 831615858 567953889 149474373 347578231 438734526 475519208 122404160 652952540 457279701 609891326 807655757 140231113 172311199 961126656 245845365 338241798 428102987 252377622 533876795 568500808 716050854 663084980 562119465 298577340 73855006 692385252 867433847 630590976 768103263 949368680 895490828 90315146 651254422 227765073 57214143 429586238 523417230 821365432 417265799 608476920 884247602 465157891 102129809 940297924 346002095 409327742 561924376 514945976 149249584 334515683 681607300 219834264 521513649 779552208 869874019 888051586 379109438 886590566 674518435 295344597 322776339 395498496 982519615 138788481 485261274 306185398 928716108 138853262 395851260 267801395 566152885 564975933 737969573 975639679 635973648 597429492 61002819 892857284 47980643 563622193 989035768 670808132 628366582 199244621 389398504 366869143 657306932 113392556 751436622 679147391 999470927 543258589 690801094 59766014 689990626 820514560 151424792 350696465 162939454 325035024 480697811 423428325 93231391 293032900 473423107 780927109 371911045 765422122 138684184 299319643 669552156 524221400 163868274 532681989 339097284 89337786 166727697 819159179 685930247 193628243 662734520 653189267 457207625 724445896 452596630 910296232 16649726 430908020 136487110 493186659 980109518 600821603 154922103 774619266 495557134 290101470 925456651 508398891 77787439 571966612 405603357 366159950 551299076 237588762 20234873 207455523 384067845 903901299 446834664 789537335 799976105 500178155 755430542 136257405 614396265 958993993 500946462 974072779 756776202 281552973 857479770 64798965 457300826 710198079 675328843 300455465 579707347 455023632 467309169 114344162 682243253 788026603 908651538 499176587 639544387 557499199 58600508 889359539 632473443 483879508 219253844 466506302 638965018 749101501 415563426 510260596 880716171 962296797 576122988 794018238 413955187 581138467 29978786 402350373 422821028 103196479 468577830 164037360 490369135 39277586 702094108 925064055 997810528 497817483 572775587 819687878 944509366 669316412 411990756 591482046 469783850 887036127 843540168 990011313 465703771 867881244 889086804 46219895 449628323 319367985 978233458 166007616 245321378 736490442 50868484 924230854 732943225 258819684 779520638 149922965 350426617 882718610 618441765 502841800 998585946 243062645 4534937 417868758 698260415 524412271 302140640 796400271 135236587 983121401 939616350 992121182 619150778 460968294 41297161 893125018 57264432 579966129 431662609 971440783 784448221 17519568 567307987 824854451 14222517 148967525 771568057 541737771 88208370 938359515 6990233 221095322 721777872 741198545 502865307 518763528 818385699 875331025 842069122 133169972 496323554 735087221 781788723 608435108 626994229 788447312 973793941 466662386 767823538 94729217 292387455 245847093 706059358 784623301 954780229 11555276 724947921 56405100 90886459 738692262 541088036 713564149 932370204 102179557 467427783 467315708 139842838 109035199 130706480 356075738 867695923 781593862 607165014 794500226 271951484 173679227 526029712 621326150 665858163 619830679 464118505 888417827 355904341 912848180 310106944 190994324 909539343 250167292 813243018 742873582 694932412 363543931 748677173 56053647 729873175 560574965 848520168 445748203 881831348 499703687 45606330 199097197 549695853 778404171 51658804 844916963 591494758 412906415 987409881 110079261 791981894 889764629 807118278 978353961 873204547 913186076 684367305 736522054 865921988 719711322 543331942 997860066 633765302 94440378 280905844 151483570 866959400 476933947 391709501 515635070 733535226 717387321 116516866 859459000 43456052 656670527 437395419 986075260 925848254 759772687 473022871 28991138 545676775 479941033 847647745 845901197 43631245 989038951 931526946 890835490 748873583 464189493 769258273 937959107 157113061 369732269 77199841 637152962 917991838 506734800 75415123 198450411 610615608 115387833 504593316 761289062 144721324 340056797 829402253 57981559 187340826 81422660 16877251 669134516 752915941 64479137 565065357 877269457 144115546 932035431 290544122 902277610 552758046 462917225 766548674 249791488 844129073 753633918 510481699 112752919 115414674 430217096 646795664 69697344 469701028 942542716 291578784 857844382 401692296 79243691 830628426 810281393 177600629 423613083 367596289 334462021 582718409 917993946 339464703 440468319 340093611 868193120 339728338 287838866 754086831 796289748 841256605 305134121 901330096 166434866 439499813 303931256 104481782 485354465 957752813 744461183 493823544 515462894 296342708 780253506 364388897 990970280 424444066 609747066 675636849 197050167 838805933 629785077 64506670 836255036 312059185 633152933 309124515 773541196 389787620 889066446 524482029 521090773 398773436 866657106 558859700 450685650 442039591 48203412 829541020 362325301 938998472 813176591 868374944 499896738 256913100 597806242 125295127 23021004 565205727 125602114 629724077 153711 228951486 815509779 864635975 166819629 728485736 707116208 968871435 673401656 456615608 607856564 535078604 610867260 268447565 398430423 816981748 6545392 312389164 774848031 960004004 540824384 778328976 130728459 260224411 877221293 907282283 795583434 693728582 934984232 785234905 803599729 176983959 8403357 690452115 136756747 654406215 680830479 715608975 423675158 354495529 633718270 708586849 60483841 780429125 702742666 65483635 120535127 148766820 287336893 599760794 422363298 399049024 509621725 65696741 59168843 492599999 802185155 408647693 694091864 972730305 825587476 29797406 525256058 574414294 843735543 968951385 217697006 301786669 310582095 732067342 613730649 628329198 294975315 768295771 826267739 938546988 60547391 761024017 743901069 47260738 903474922 151500630 177426932 85886968 893220421 727421681 447567379 41425066 167000519 224233459 437609923 225430806 21645709 468524695 440952315 639304012 82475824 499132302 501825065 190207448 499159406 734879141 889054397 151196754 18376608 570346396 901436751 213440810 876955097 225853243 289116520 318059377 624227570 775169733 738480841 523576468 925254851 137713580 358437713 626892209 597799320 145563438 505282319 746756090 287506668 597654777 183263011 167158042 423679237 905217853 570630672 735873817 876605907 767838169 650722196 747889544 673203317 493372492 361283754 876895539 670963748 631544363 446443451 441848582 761598310 23931290 17485268 724813791 49123470 496640445 255552807 120445058 658456884 750597559 822848637 901024310 569576741 627868194 104723504 310818755 389529052 717935385 844515457 529710398 844856772 412694658 620218680 722481890 184760899 297428858 432433777 3755421 777192418 527422270 687912783 572694791 614352922 144487007 907919899 480265550 4447949 453366725 461904550 514820604 595589759 226624563 898850881 795283533 410361997 51627919 102234346 965428259 831877227 194671209 922511788 225941167 902485559 855313230 506383009 975043417 109217818 96505531 591587884 180690413 568188544 377070155 691859996 731718113 813245322 215652812 655948321 623973392 298758868 971654703 983341766 909580684 974230357 867892335 269645335 15830770 867729110 751976712 938623191 788205076 906067779 304528596 7231287 272819057 655301366 471748922 973810856 401208313 268595477 398835380 909446967 385074472 551375259 196314516 114207672 568952908 325044202 591564410 351674404 610343765 492496023 944520515 827332789 202850972 455589350 292347712 510461590 201146312 370125851 882577846 455514594 709249272 825633659 689731580 234214186 465467528 831903896 661474134 130905742 737558987 617722857 243260495 870819963 719432701 707627715 886568660 198934216 31325458 439167039 25401949 402437825 871324318 416944102 439820095 478676636 493294664 474784624 649938864 911009477 745859953 620789644 965530113 8167142 250123851 977358393 513811019 336445517 318897847 152056267 379601489 789195171 327547312 804304183 780048737 838130112 848278684 930515662 365170573 825174665 457312217 103717394 33699285 846671107 438482038 215141757 534500400 8369924 80015688 207535868 889930646 806406001 820915867 622455312 95617813 380675242 257515714 931435300 73959855 671390386 296055514 240823318 833355760 292421683 817644959 51760852 968616220 185189634 564004708 57126748 388876421 106387718 206120643 789934519 241485878 135718289 877383221 687475022 451951024 132604135 564044669 691712943 718673014 506094600 689448082 372824671 587278588 329629590 56197516 44725223 290986570 390012847 486625213 692418249 920771809 339514990 857520967 890493608 585281233 710457990 981693197 534249536 149805777 672116029 135403970 590445485 86573405 977300098 778547942 366676738 247323990 559892696 198910536 195254684 993552509 203923058 339759789 164113915 43760681 825027713 65234467 721793075 23936660 69035424 797605573 828102361 586019836 52871936 204893842 518262067 540558411 63782597 228508353 670232447 633838547 401120919 645396406 896792670 114776424 856467267 874256374 272772221 520189487 788907626 465032729 428082960 328442051 468165785 282163535 227883199 623136361 168382997 786058270 830089415 39213485 472857034 495749276 24862186 667034327 859404255 42415953 55163038 885063972 57059782 116506463 897124684 802696340 159516232 528837268 722661578 906740956 336685866 677809450 844828587 127042704 422163532 395930046 858148829 514001101 366171883 324411417 940691280 26518767 69326599 563509712 304724263 800160411 106337008 573044457 817581500 945134636 350175027 844917420 394038696 754739295 357015374 995403431 358883049 837149131 523841281 355550272 125741913 373852325 873834685 78928853 44731776 421327823 173547720 163123567 668592898 103957908 351872932 731398722 588245695 733307593 260975273 820417875 336586914 43043466 546009382 340945919 180586919 725646994 521019945 524143366 576716634 964192443 919419342 809551303 850107629 135773256 888494956 433222950 291860341 84572150 833363951 520299408 562005888 616595842 667678789 923070444 437151238 375761030 991864972 758542842 494909366 722801237 177810748 231864630 202904732 700269917 753553771 958405485 848391533 641141202 280273676 453410509 259360070 113045657 726814943 752703325 257971989 181830298 895352432 176019476 565771250 950758464 910034565 105490322 875686173 271498694 308536154 94239219 468986467 874320864 954855590 989519264 375551246 592320807 850117448 404521330 282867222 427237311 888431203 99339599 65804499 418787142 333727085 916288318 280655045 119956140 198823972 235493199 410574630 369399607 939653740 600119136 292975083 874706492 267718396 718476901 310067221 500859030 941720555 994732381 286114131 945234287 260382370 113162838 385749499 86610825 766346739 83228298 64873119 1910984 509682209 523890837 905286453 61869029 792587736 158703603 45236055 568087394 937899724 496060748 804008488 473907338 900124367 692272430 609157886 680757512 896315608 539485208 16638525 26428673 756166580 933154187 797051963 492555886 971299648 480071910 632604930 202226890 77898988 679549307 386578499 87470017 560530856 810902135 394162567 938224885 974273468 258283469 969386503 11393449 5083072 32381658 903221709 487283003 336582986 759414825 891789224 619400713 580235797 594965098 255981348 489908200 280811991 238414747 591076330 932283871 862170199 478065055 132502774 893972805 447903640 714936885 505701443 364752510 510580366 654914427 376614348 76382274 382846249 418887122 278807926 324301557 13130350 783374103 774529926 11250842 48377758 923616263 15249733 60766565 944946564 96474982 482170627 873352587 394981716 212799263 328155739 469676766 899292585 224262956 52023804 435998010 532305417 274001640 39984636 546085848 861686329 436312959 390422202 293178957 506506661 767452658 902707746 214167684 398653356 165751399 147710778 980242137 717562928 330391644 431746210 524624949 322972782 261976766 235710964 376552459 128222207 990416391 58019702 26952372 672809999 363220117 320043465 142653989 411738391 668465425 716609697 547178351 649031436 604169682 667866621 872272601 249894217 286218674 566710809 936769957 887929903 506769708 264550796 217573129 141246799 488232036 195604643 396450426 496384010 245664853 97382565 125411762 509610961 240838092 737002869 463101780 180773307 955671767 541858501 205299412 353616337 594303763 737269441 574219306 750690632 798053598 716391645 965593873 807009283 37301294 385358411 464086885 229414103 953413718 882907473 170573418 841860963 754022950 588496658 343066424 158936405 417617953 294843908 680953627 575397628 938830997 461507840 73089586 982289826 188593241 33933774 664857343 581041042 506176482 756517918 585560549 862321268 192133935 968230260 607507553 886870634 564869638 356917803 417029811 950022734 684063374 379485495 872095280 539563013 542877431 960696326 619644923 826835272 794863717 532416569 89482509 339450698 813172027 103455196 748618801 985989466 173778122 115315623 849083810 916180299 963159614 466405795 334276204 314395102 239140465 206059407 172686349 689819057 204362438 382013431 290596965 548327398 384358618 301940284 849274406 340400114 842567738 162351111 871162558 676529366 823203751 671120540 384958951 956543503 895422806 910829190 89743028 288104310 814123478 711646495 966519982 609096370 84461466 746180690 453321474 102767903 560955178 598974203 96710052 783911150 645511207 933471384 346294919 155126204 893651243 721259182 896724836 758145952 897645908 95024625 539264960 923954086 924543478 735400240 313618402 452271217 855618042 996289273 15800850 922573939 820124914 122258130 805131855 634236741 798040483 219141429 115353029 759099081 934957774 844809288 262558574 79245678 977205416 753841825 335420678 326406280 819914653 654217443 540074572 351109578 177089946 863867579 230543683 152278370 356620855 64150175 721190524 954063980 812209263 56983296 148803808 420946170 191392733 54139056 898911171 101472414 938320711 730755098 561144504 465014842 271612799 148457454 637239508 378639786 655555398 546643585 422259111 650950030 511966310 171030751 901022710 754478243 515383123 161023025 883590496 146883777 631612592 975327153 521889680 45724404 358900932 313008133 604555483 578793757 149376077 67405081 399161368 847602952 347159859 75605251 285965385 140267446 59428574 769525342 135737174 491053466 969043674 562379189 62014046 794806166 240792582 273369864 263767808 699474055 974225636 493786423 234592456 882813203 119792649 413102026 591283878 590350836 412068694 325685881 544456397 309338995 322446694 505779401 995268000 557469802 250042772 326121729 327557642 115637219 721699049 890542962 221761863 994365556 671132917 478082270 912864397 779706198 756909626 253613428 806200274 900865587 614170036 904813668 596582259 308280418 747735161 219830484 235490475 530986327 949621954 647265359 945685589 965682462 200537625 294656408 992774720 931031000 325149276 312034797 640542076 862530819 140510216 242429438 144239573 314242442 407762004 700691800 880419394 81938664 858986825 884469768 709548471 862383115 259562082 806369093 330883792 610175460 463411907 157701734 894889022 699703558 153332264 402445351 618157446 269204220 942291630 16008763 32290858 275356790 200474208 784008417 141654867 903584611 159743121 970021560 161029331 129363607 422395848 525233608 337944278 670632580 390523823 41066133 937041248 275442229 545899126 779460914 327091865 17422711 892000400 844500635 294803420 781901633 355799803 866436125 506491670 987579516 725949769 152356256 736086938 763765822 534625499 925467715 839112237 684785979 375100138 328157669 914686685 37474786 633611505 449411559 530644051 363451270 727643454 156912266 229634089 849745474 923263033 968353503 85849007 677099802 831364378 28262174 834087500 575691976 790921055 311156658 408883759 32290101 902702750 399956088 135610218 356844992 36611289 842194893 863202102 477564846 451536137 365428966 380710876 816975964 140857421 135759086 433583123 158050462 803888304 578431901 938580145 609240220 773604250 275141144 316807627 2831159 252856574 260774251 708368941 236614152 254366157 494911149 221413267 108630545 928382616 465186994 104798381 651538667 805751417 287312492 402987514 281222434 64619345 226682303 311685919 285681944 325782888 656052639 340400103 846777929 242472053 798391683 128934113 269214223 650093045 313322793 281229419 219661818 369312914 139031284 313933439 40230224 761930593 189287682 579677184 608624822 263924383 853882959 88002647 168014197 407888254 931703973 167747341 59409311 632956646 813799071 818706324 422403571 368927480 131083521 155447841 628316219 931799317 239341114 847619924 959357392 285455502 464843096 187149218 318622478 644682602 995709295 625305275 10456219 892195739 296461882 888242137 825549101 144929813 998058806 67860397 58775563 303253784 206074238 679206201 350840406 93422069 988061643 160413760 965036809 624187243 343034263 446013060 337838412 768038815 718499709 369266574 403297766 54994746 456067248 789997232 646573231 20160963 888774804 536866961 811002076 144767270 678319397 601530403 109327899 886379264 502978447 806648337 520047398 535100726 366656611 507290710 779153175 736795588 998868155 377459902 65531471 635227699 237239888 715116679 918506160 575397570 648623352 606067215 688494934 614437885 912327590 264383297 762723343 617546314 668043009 717108642 150742548 611740338 317626931 229560214 994973229 533307586 27927249 815031639 794226978 126820915 219452994 383043016 58511183 425367314 320294299 272532476 68414576 765754409 465772289 868599552 801340697 781910930 234982004 945443199 235390812 550577682 725445250 366658554 159820042 979399276 310114797 654914897 63251817 386366090 709733939 388107252 458265228 263137047 644890108 697015098 599135626 504912177 849710435 584700369 232406063 647037517 441873322 940256955 936385112 295729608 351182038 592456387 79053972 983085110 845553519 812425074 998758854 559828637 139964859 441373126 76479258 375811005 842152437 514473418 127505013 466197117 786893909 412176526 81889707 542759222 387293399 112771693 852786831 739265735 922884279 415646178 384178165 577133918 135079625 668107342 109946693 927111592 257356963 658929224 231554123 25759321 12041199 536674849 717272824 886167540 944420452 429440053 264809378 604843533 119872827 38535250 741920811 46954112 738315346 736079351 425743930 166181641 83243300 26172468 563858497 380036460 248489371 170176585 491747854 52958782 614025358 260422985 424362870 574483056 761439075 483439024 220336602 348304506 438755491 889518791 491842153 718430068 493909506 158109264 408735794 131250335 167917226 314000697 29074798 872177794 684035364 890979196 286708143 568426748 293534459 518897169 205202436 924172174 623875763 696776474 371357565 646293685 824596713 531125206 168882314 990378529 444578850 959781444 696719420 553288333 17875910 729047693 61497236 993357937 773121192 77985861 732208175 112694977 47218437 597310397 503012471 223230333 999573682 952905253 777565457 427637087 334801311 284352919 654173127 31264929 406393672 751749415 672019253 397631428 265243395 805319949 220363603 182087561 805020443 566947137 849030893 836985683 702973014 682645644 303536243 903979375 107059013 285969643 735779471 26779436 739269920 798055326 42455650 672720099 930591637 872217484 848634281 680753446 911567344 677098676 725700912 253599517 355782011 833330714 322492897 361093345 46698979 54793386 491808341 31680688 558783793 7419848 695320104 67985478 907285977 818724953 131549973 125406561 461298845 664890482 749520854 889215049 733332229 435722750 738760897 756949463 751176797 221605517 666882078 960722016 751974103 267346607 196565275 522945153 340783503 238717965 842229028 541793741 395316866 409646884 794637467 316254708 946208846 304176568 652580465 925936063 20259573 101044042 436182843 409422565 556167166 178522262 865901039 990961320 26416946 41703265 587003194 309209458 512715716 755914465 903009036 586635036 64580244 890956648 360591785 971006786 868139962 267131536 552718107 924932601 463967682 787283190 667241723 270467085 863790215 704485950 613569229 899752532 603641785 694789251 260282989 183371714 548376219 894831918 566397089 957751029 710056328 394302594 947778475 541478269 87590591 339514444 26945924 47577521 356766263 920711627 992006019 178127796 801082856 407168089 105058570 621218571 7299101 868429239 535555636 251203815 108806930 280161412 819464492 611007988 209297212 504091610 75988915 26734071 620502415 827333941 267935271 383175257 75212192 999208859 846179382 146353257 138591072 849614325 82118730 175833932 215668838 312644684 879452647 160002409 736447171 626673529 975674401 421619400 597350870 886601086 14937167 498710962 730095746 106769327 288789107 441209981 936824639 940650102 654997448 985496239 359916004 85916092 291584882 182229925 77934626 174101294 350902519 375999903 806779161 233544437 967876132 208310867 157182637 446253077 572628765 937880579 168962731 254429142 256827244 63891382 921447377 782878753 484548478 628214031 564883515 196627975 841777645 19670961 843378726 301154726 777823752 507024639 661063325 785052823 749956060 506784466 493847674 837766519 66735345 439443039 801793655 156305058 107015808 813566774 72659700 646899129 221536941 360793204 326818422 240626462 436084783 192048319 287035646 202059869 352706023 336765281 375382331 135892854 589030201 394627980 656618250 699030202 468307498 449084231 143560164 153411121 461378559 494070736 30316675 463488179 445052224 275975718 759679871 554998799 47022830 930204441 316273330 648799056 431514330 225148786 97673082 450985820 93893746 75497274 576277151 60382697 340659686 242159771 888897620 697414689 61823761 432008196 177274720 299800061 49204082 854737590 539174126 258017967 178055233 721404675 937381599 260769534 360004726 613116218 195603942 839489040 768303840 200012119 699613967 39287220 20163699 73778489 375805711 353725412 341024364 380956212 445783055 662610474 593418437 508468951 947247990 261741713 320354752 213941683 693215065 728754446 488465736 454953234 160217955 176194716 880487889 677521447 858552681 479049743 312455162 832516375 501954193 994262997 646858196 785367577 526700339 397639377 764321807 305730334 623839421 585181901 546906684 99463752 619592954 313854743 967538758 136398558 977466087 428970417 883026245 288030925 385995615 959579099 767972163 340090263 136203701 101100760 439470966 859550644 837294156 422486150 313793709 933194610 625189425 399337308 413318650 894081262 515532427 356336061 668210248 472788932 451544648 99357539 584150166 40506890 62620652 487561967 168502805 34590767 38472761 126153187 458940666 230787585 196965814 756525338 15538304 976420835 718163494 558848704 244599170 965876464 908468561 261055774 754088051 507954222 642831017 694694791 748073455 930595923 460622975 440441307 404489411 989682897 177677160 447335753 406823097 406170712 537742002 669376753 743426835 531981971 454670635 533262067 563589347 160080741 470713573 345777528 768525391 825783986 370570470 98566482 534056753 418964670 852496061 38461644 886933353 421882588 983624859 280219788 190425877 286111751 360371423 737365628 535454398 856917522 713850460 661866710 72760736 901206816 371367759 974506141 277871581 422836890 591768125 885653223 642917989 81918859 836622321 298694458 901825381 382923761 503106989 725583562 971866965 976676471 818504078 10036074 304421132 74763276 849578429 528823103 945770463 577659845 592465569 296791639 71113614 375004562 961813429 660918583 47210810 860943436 696613620 580192849 881872840 661851995 245216496 735445055 454476202 968053746 412896948 441533650 593100591 58983846 748691400 8928915 946800179 922099746 410026842 701228877 893660081 652486701 14093851 518787372 645509655 231946112 867683066 587100115 970503865 549209071 419911097 330697712 17807541 180464185 561328704 11958939 28884223 674995492 657634854 104078482 131633237 214185615 240901144 236869901 70158742 382187570 777943944 966631879 700201028 568907677 732696977 585542187 192002551 720219482 974536869 133412581 662225050 641043782 494743409 840226805 287704435 657928706 952883245 600818146 599005453 829861406 678700234 888017005 475774232 422588975 868202666 252518903 920525485 719520327 357819241 815518402 877979250 72119563 802965252 383416987 789875149 211068920 310892429 944127255 681702016 479264980 304722908 766481640 524029568 333289404 460209319 763532550 992582627 544697424 803655321 989562798 124449295 1345266 421769769 192562697 490470379 704090664 22135240 755591858 788903810 551849466 180978774 14556537 866709807 595391651 362415505 763709006 843111332 948642724 995096517 887857417 595185108 783799442 684594546 17014349 918991214 243168164 833326642 873492310 689321497 138198513 843149488 355518897 620484194 573469422 391186782 325333386 486126469 132104912 4955243 361735187 603043228 287060895 838005563 242469467 627567591 201062896 264480314 723469613 526640578 231140944 895332748 408818680 664295162 472157854 384238236 738969056 117037535 900222401 401083909 201118111 977943368 830067943 579699512 837786897 781468545 874078189 179338651 635500451 727679514 631782325 524547381 106396178 776852728 731280161 263808836 321124688 548503812 390574203 62694307 384445328 363704675 169890102 588906 909852344 410203489 915173182 763149336 50637280 804937952 576681892 217680826 191648052 218767266 432016639 802726074 788249485 30062525 502613367 804789795 511872531 132515540 502897901 880882580 591282403 45792761 905861879 582076351 965827180 428534193 34266483 604982381 405145002 965415453 713843302 913394326 863727993 744572278 466626296 868844239 512341565 328717377 911483407 960166702 108916550 664402584 449738185 162146979 124334916 599342340 82632216 457877514 860593511 819251045 139455139 132039523 600250781 375377820 618720086 511580991 501263226 995009037 779180591 421138327 212589663 167070998 85043144 525742007 184152626 857795832 515580669 860059912 62001363 628801651 666413850 867533707 215433203 889347553 208853507 192851479 517536411 476834281 339378820 263275498 385750099 238922738 825756591 769970856 127381136 520306057 677851288 840431200 220999565 388614819 145079899 512415069 410311724 727005086 369690690 348873912 281599539 353001781 726357312 800331964 361287412 455230677 199036984 730061560 228957426 236806374 816513173 226675017 718178179 449491768 358062975 208564027 8338679 671004092 152796284 499947010 10448943 992914063 468266402 378326756 916595655 52338467 40322649 35899693 545144866 344417259 937157862 576204056 437549634 378309108 459410097 967385924 119100808 300337887 440216634 528180892 871490915 222854453 975833271 384671530 485860831 687956545 188285335 253917694 489518920 767185553 635037641 12844910 893431368 218658055 940887790 403775932 547027649 14188021 202120583 134209163 459629675 28604994 936870835 14373804 759827976 636707563 441704280 583351215 445911100 170409089 253540953 928646824 824149986 499957401 183224532 493015299 616177476 332913493 991255340 263715017 641633253 360568648 566825827 252135020 363776540 267812430 385510717 91750195 557892579 35330541 825015464 588708538 659727032 291339362 642535742 343354252 152604947 993519449 63548502 386491536 202026476 589498389 118524163 157684387 790959770 721078338 633938387 420269835 476532825 445271178 603708976 200519147 453259390 848554406 103198405 242933249 929943021 300680443 87693272 442117982 857025425 325651261 445059323 372969458 861589646 321334722 979247189 477273240 818351602 987533323 758096557 436158245 313536791 867068809 862504638 326810136 726097343 992738428 702478724 179944125 271972075 552620235 425661571 247580244 980117792 949702619 623717401 40075291 908040945 53101815 359551577 515008459 401693277 234918671 317645488 371407323 73641670 290295789 745321334 346885855 294318431 509372139 285923727 560257403 147468355 607695660 58072929 553201403 295614834 561983097 317011111 508265269 654930673 293008670 251136743 580513284 234705710 297850017 756784666 489775948 744312435 971343741 587021072 792842239 402090773 719301124 816204855 218210680 422612149 639598990 538618606 144331567 243619387 266149270 891817397 794462729 551004501 828759542 755433992 391725993 931753590 607826482 75907350 161186518 611349633 689137411 197328991 791240883 796013125 785061286 307805342 343279033 239203058 12143233 493512002 983800599 241054481 48552703 816777157 97244720 892958078 574068450 382376049 784015067 873359797 858314358 41156280 646030733 6161628 709746247 433383469 39736963 111822710 396714366 890728534 373149346 856057249 184637762 401499073 769962624 669689522 194560999 937834900 406757947 203203927 242303146 612512210 745605214 681466130 61265179 283444587 340058252 14859547 284583183 31508678 808213987 370861231 471295510 404490199 903898823 811941748 543972661 574392373 702557270 932552737 269448300 372417649 36362487 709565984 754492235 309609383 978390265 630624273 905131022 733446287 427834832 692235676 811251993 137023394 262292041 387935436 499142535 892373312 422610787 797223890 375319577 829796188 451546752 833085002 106379531 751268761 600242566 635747006 284789635 921839647 223082510 785592213 360160819 179860728 734877883 532346329 857755308 486486062 270933639 652596385 585305256 539274264 832765041 547421217 860909435 873702232 953064596 166773182 609784385 997157114 629439059 912885855 168943252 190930202 281794267 207576184 750782198 33683974 434348543 937826022 627797344 136177529 342967697 470739904 340171065 707651393 22164031 105166748 155037471 369385874 843265955 353148742 290411058 499104305 334194613 973117302 854316365 116021478 403059556 242169747 255140746 537974103 341155907 104322137 801634323 493577729 842893569 482670134 77432339 880947567 722712483 249044002 214601870 38977382 936370830 420686203 454410175 384105200 761361989 384656113 28509014 221706577 629899716 381151580 435161246 956099443 563722519 363010953 123609703 818178898 908844016 79474373 913381768 817858904 347399046 428165507 211754870 865599009 313360107 973447436 812863347 259658360 37681963 903154464 953618247 976995580 256755753 625066766 991238970 359600209 168420419 701847917 651510915 560711558 100258803 383882648 303819674 162669699 652302617 83507268 721169492 977676752 146325987 341924803 249406778 123016870 121962207 526118380 72740732 946541656 893828182 874085343 587422716 722999298 777622994 110481911 385220084 429397210 199586201 389287146 452471642 58065253 952036697 356721809 383861122 817519591 455319275 468570922 300336012 122640611 457330182 987806344 390307023 368438919 466643862 718868947 618860286 467286814 152730873 536093178 822746722 293414220 58450579 210185493 801070104 827315532 480355398 350546745 529177862 192983970 160517277 52201920 586255329 30058334 539874443 171436243 220923346 112883164 307059897 832270175 719871922 488260863 579243259 689536675 216239627 182328880 914191618 419204289 203262521 924040343 249737396 480247237 870336475 238784381 622030746 63564986 700157954 789118499 398805737 387146609 806027246 607362423 174031539 153526959 78589635 937774630 148714240 958765561 255212741 937726216 180592691 880006663 486145078 819156828 492011672 792708698 203600532 727848053 679791813 922392213 793522424 377147991 723268320 660622237 217840473 376083294 22249451 884916707 920305213 625583135 285792836 756599546 709574564 220556721 963424252 465436412 897718005 715895999 981379721 392859540 151907060 55094207 826296105 363761945 496174672 602812082 883066453 480842194 855217590 489229674 742354888 663028075 911844925 574798628 590332552 355491644 655997612 759766069 188831231 708150004 957617398 391312822 37194507 860990390 301544554 240912638 81051299 346444196 517821538 40579192 225660521 392590571 894827645 710239346 84813439 940794416 477758170 815592056 130596843 233782436 831896401 855891381 434613259 225539036 222904331 972733413 892263935 903840539 659605244 198126779 830385682 666611786 100388034 315270289 866659577 622004730 120346487 932654357 391271224 907118884 56793341 632488123 48514036 293489240 785713036 995515505 89237242 522203304 934793853 572455333 690316305 725636786 143277704 712828717 803927276 243546026 726903243 239030821 810914541 431978524 2572893 87192176 975627671 117318644 297201400 716427703 805401582 851158549 348255313 700549989 66285839 333783982 581485629 739577431 564298586 184639989 259782881 314970619 726536004 947103070 967150730 769645040 968879666 268379804 725817210 760763929 944697371 990260680 226021354 605274693 355439426 148130873 388092188 853739111 975185782 455093174 178238225 120310392 874596392 186436213 46512105 840906324 26595741 671346883 89894561 105411821 107561059 903094221 980975872 772435750 314148053 652712136 580115843 359941399 524352668 309611525 251959898 526316831 77445397 364701626 713587328 49495149 349892901 104848894 647853785 945323870 421457560 417030286 637789453 364839952 797901811 369665368 255166733 313709757 411874487 633432484 807044760 127980219 559663187 801046521 358697169 643901082 543670372 266930125 344748067 547778742 602893380 69656829 334874257 366100910 47073529 291154179 928966615 487497157 835689107 311888044 616519691 461647195 294227890 965698866 983548110 777060353 284873608 891903486 276556145 768871694 23749871 708763189 741965614 495999533 959676310 485466511 23527374 60091832 62988549 494367460 796299101 27662521 863004007 822854296 764421800 963944457 602176418 739233430 452823273 465535200 568691756 204471529 91794379 881674454 321804066 997422575 223305770 963685174 758533232 708992126 166900538 592831132 116690699 273887382 353797650 112588107 855474220 723621178 304147813 345606703 575660433 728249302 762457726 929342087 687140853 412734034 680851797 705913657 345118335 657340164 113184026 420846794 176860490 803844728 499670493 829010281 456268868 871819897 788249892 936480825 39155360 573409098 846176307 577929270 70656167 615680709 95442022 669462349 125782996 669799649 908704537 110480823 379435618 857263807 317634275 799890837 243292593 98386488 582477268 680112847 706582111 124177230 785497942 18570900 475019772 47844174 19414296 250672385 740759142 695486328 596618572 811705357 737831759 297074525 778904074 356963892 622223243 254807952 337984777 44911545 261068176 739545712 403850325 615010505 439192018 353266328 731395675 391176801 331209311 351877524 632955392 8996148 926500922 273363685 921938799 180985695 329609927 526381115 273319672 477272697 984921871 338718780 291769754 635296273 128623570 927821904 105754708 909464885 865420569 425883496 831953372 286976953 370851593 294671666 372362586 951391341 669585120 543307232 521537229 444611351 931155399 123588534 773414592 772194846 581538233 501755581 120227197 614467673 911767526 299529950 557613308 759435289 275351934 760569499 368599630 25131524 969778337 81838154 487183203 250644851 229356599 231954128 779986989 508189991 361968266 490098168 190347980 480786214 800044809 750014391 546304335 388709497 995718539 59930886 476306500 888291191 424579046 170636723 394200590 535423448 343977223 889344553 177127794 918081056 176626151 104053150 190688187 880612378 665735616 575621705 141429965 722354085 424764370 502876960 574000584 586557952 718195519 285348030 699194309 411752262 479589507 696307482 223830152 540152175 919637212 379326247 224083062 616962598 264775797 850678371 570602771 360066223 704002973 146256083 19265074 787467219 109988106 789524122 820817269 323386014 524582634 801754853 684508037 678224564 811273298 796405759 903652033 725544207 731968893 260910564 317821940 927864344 67580029 667464170 177998985 892447696 263773436 785830739 469665864 743060227 253449506 273535333 994509347 626129985 479740495 49979084 963267743 699867348 545060383 379873812 790541718 297929103 938923876 610191343 251000901 340828349 596711815 586472465 994502522 588263699 981604803 121794111 329549213 526374575 640168815 716667428 255011344 336801932 165127976 212727980 399832518 749251975 954643264 153697597 164550710 710249587 997203981 713857203 519392321 60318923 947728937 195567867 326270845 849653516 353815457 354704153 634506559 638362760 460638581 238681542 44695113 742560367 13169257 871030712 796588129 31722846 456155856 195018812 202335900 115538906 422596 547893747 707125604 122174758 226774334 359547211 451601341 939748810 119375616 954833785 330164473 674979902 465852081 612423106 849711620 855295462 803323581 503457721 750946327 59280941 350547034 963943362 844291425 609343641 648930082 987013043 434476261 895790581 502430309 363359622 83042765 339436915 672593011 42712857 593527311 614763370 676593661 35407752 10584726 123186153 531745955 467790433 228196416 569500230 350236044 489402805 929476360 201218243 441031398 116689217 779788153 49195681 865664282 134398287 777415202 732403699 451186786 459384230 9856233 387888935 915456302 297869797 546741155 595513021 788245784 161057601 640586817 789243842 238955416 716811276 638907971 216275943 645646054 693559493 164646670 619458140 988574701 303277581 892247033 254433456 551377462 717710032 832005984 902890215 387015529 838460508 645911641 266099966 995174437 829335758 882273695 344962645 149825523 102655473 774689829 827469479 34587676 565317919 962392011 36722779 898368855 756644616 783788758 844595029 890830954 538841162 75329482 5995757 851235217 436701944 344436431 902552857 811879867 699550182 314991269 413976150 628135545 471612204 489073175 342428894 496400213 62929203 819220993 157504364 284327887 323171206 924269036 586789493 141042259 815618117 783862283 447194123 272120726 5603492 344982451 812741290 466161016 557355065 534020777 746112544 193254976 542543419 812164582 679323856 532397643 412964695 314719580 765810206 517149210 572126172 506119903 307905991 880903057 629912193 248741510 435219108 841919691 100810211 843600461 654490246 688440078 792887531 569591257 205040850 506974614 571398594 249189833 573795993 280348689 191952969 917078077 520433161 950261345 757952720 50376866 152026853 789757624 598230460 590114831 450600969 665733248 488900884 227902235 826729734 949650249 52972760 264373273 231550748 651841511 787063038 239981380 324185061 448241254 737294690 167771828 547092882 739779753 586712032 784776700 111109465 189479180 31318798 752625569 701499082 184374635 608554785 869698263 889666171 564185467 217286627 833594116 579657779 993543689 883620726 438466130 40514587 874372113 585952844 294390317 628055157 389979633 76970100 644042748 196693529 38937292 413326477 40371362 794166702 427702923 998922186 429859293 70680158 719845256 469226782 317361257 784355221 867903170 85190391 265046891 692338123 864579806 677845286 92796132 806797279 948612279 583283102 575761192 450783968 51699070 286906195 934665498 292724575 249517188 46732589 635005737 285779482 456930144 148738600 567911829 749942692 330435018 355467944 174912205 820611998 938595039 144345849 42876626 271575654 165532667 80679179 263569794 326477711 597423579 23551111 686596190 363798159 375859843 28948904 952278629 672830074 634137637 721295378 969713085 17731688 975076441 73649591 443524705 459962770 79251067 656948107 257872524 520269187 205447077 579049663 64782447 481793430 310507811 775949863 966599091 766381129 456937505 84446458 412416424 687231472 444461049 55223212 225073799 510361017 397547366 116589376 952325400 689774184 237688044 556493211 290149410 362023619 216565391 993035900 596155827 588055882 79315690 548905245 196041035 833664610 270818101 590221359 459193404 902279607 403144211 550810388 219062055 421759336 968175233 829028860 580609848 661764007 292173375 433132442 697700259 65751350 942871681 829291880 309766123 821495367 18226439 134250138 86882422 682858649 380819269 674094368 329136957 813761229 176605538 214700195 692307616 700019688 734228592 120737775 5588398 871191266 686881871 340770918 50197881 369102938 827635857 856707866 895667262 687407334 980592551 563262279 242779291 880187316 61488605 569247609 417942689 914664925 60408661 801545699 172465379 663586867 590927976 806256786 538979768 121086556 821704716 124560356 910400951 183495187 298076806 77427457 411555648 466654702 63957607 101909832 593173466 821448008 492563187 700008611 553057972 945601957 788163702 497953237 327396977 558562421 107726958 227322236 228765926 720287397 779809538 249346436 506049725 189984213 967845329 724283358 479590873 166493967 572819122 476555159 671031118 208259920 372432937 634288108 783419922 907113011 341499820 993242218 243252184 173954601 710273933 603018517 971929167 31607572 221929004 956002762 212454137 682556659 701030892 182855945 847030247 456164983 186603491 391360962 325711969 49495009 383244494 668086976 833343079 721151419 23983483 680010269 768187859 231012799 656813173 275547413 933240004 129118334 163894482 127115367 376370103 793042409 101553191 712875573 493323876 145525040 161775675 900842739 793004028 861987876 174185462 612586278 493969067 155689571 147950144 745902571 594456475 38840730 542345730 609418704 731960221 770444838 679425506 164228943 267383529 707351077 891586952 473997875 881531798 504692870 511341468 433002912 538544827 901940084 987232974 597024009 60310524 279391547 827510829 173465862 472653757 422159837 669713655 881683733 538804419 994740262 467596060 74503347 784823321 843623471 162058 666645647 137734984 346102521 132429004 430615632 631605645 272558137 377746930 782806359 569150182 138648530 217623855 754779737 333111733 635745747 170359756 53116169 4550369 657177338 213923673 677556730 1711194 628102923 555937760 57013169 828850379 49088708 127691838 641721215 262918077 235286419 516584770 813999132 86240028 262433601 305369106 473604331 66694248 469139676 101253417 412773022 505048121 91329992 166664244 57381913 626394372 219648808 151406145 44643976 920570232 894541964 661749389 714126665 740951666 257796711 7522092 269214275 880797070 268077261 851331095 467711899 736642988 93275945 991684037 371488562 685298022 460508340 920919390 702781620 289248560 145221552 732969238 956188469 452440208 975262051 614840125 743573723 481539299 48224887 609948902 592756939 192083645 937999369 179132345 291119236 102896002 198180758 989326641 763419961 198132863 269797228 536457180 288889111 78348300 97582249 379850968 978093476 892413994 169980667 43474925 410665898 441771817 15903857 294835672 174632103 134482702 809536282 389619762 159034494 592235271 880666189 186720606 975835781 99459423 632864784 163597927 984048257 300163508 770850093 732881538 551667868 555844016 168594259 835999746 516738798 556104093 744980130 805471533 342963737 113242408 141963891 148128915 482931656 816952872 27157944 394965221 842077110 188619377 785832496 467166137 857001725 9528575 192732795 400166699 399733803 916076424 239675674 125928645 508953336 677560677 656381985 825530888 715989532 580504013 70494056 362402115 509825751 256075191 79103393 980265070 175396377 802615146 337678472 640650056 334505686 96535734 379605848 574730747 711715971 222661031 937309316 646303578 858470451 323098455 95145497 866453580 692039597 809341519 707263263 121693861 67014143 517245517 781546967 943486672 152517165 708240353 648075809 69203180 881429675 785844714 752936392 128028211 423048360 875068880 159174207 52455698 520307114 181863337 655970035 735629312 44754874 697839324 767549806 738018641 379999514 486536148 717378838 458899461 812271453 203805825 929687488 954146049 743773599 186218076 295236041 955573096 942358772 47721339 66328278 180037136 781941358 787831610 702254458 614063903 579810188 853785788 21187781 345881841 495914246 208214901 733915919 372633866 899652552 749416374 62070678 112365646 880011816 445845374 658079608 493293830 68834738 485996791 424779525 185783561 376582898 688099830 614019922 851411363 329150810 311195984 470167363 203775191 49719857 542036198 91075324 24360778 769818489 923322598 115847564 41956596 272261899 444527471 882604877 816096844 52968231 245634933 239927929 768368476 526244466 113287352 83825288 333827445 818321844 135387402 627159677 371189817 12490368 929736341 817382171 198257279 866652489 538513495 573691769 894843259 395286635 72180955 3091085 67148581 23925044 849262327 894820408 817000086 492518065 322466167 536982754 439310436 926308457 366791428 976962630 348968717 905847127 338038133 606913571 472660445 14200147 67336353 559899830 504166321 399697840 289215222 150920613 847992987 110866717 594575745 524745159 666950339 524397456 285848710 385747239 344901536 551740489 852167155 844205694 103774020 834901921 705840891 863641660 921384627 130156434 277682563 486206569 874470169 651318995 547942384 894112995 369664947 141446515 130616279 637883395 150639731 494511655 514964710 44135940 724072750 98893756 349211669 216413359 488040269 172794122 989572786 902735134 462899937 59842545 778309658 61888022 224278120 385994580 836208820 443299689 174436193 367500003 230007373 750132365 996064559 460951234 808116988 116061193 131078398 56007516 604977703 181344886 726754360 514215948 858463326 94813570 365030738 62186359 70096719 564553529 216199053 519272916 368368542 411841581 328856721 748509991 946473820 109627528 694606376 20688833 208161450 803425063 548452755 166609939 491299060 446216848 408732856 721575762 354637495 704588273 932843230 328016361 683633766 492693215 495995526 473359910 66936194 911191251 266416403 70095894 793690418 949463634 360855884 433663478 476527486 662103667 447465 799785297 931614303 909570007 70097826 951833363 303973322 974152232 34065262 965514392 998919294 99534960 773818034 503195780 283162798 992898455 507304374 77152187 228642801 765779534 467197482 141902203 517582969 819069939 439483127 440761719 612696578 693259275 289959220 114431481 241128781 218151603 356588323 700548697 519063880 882728472 571942049 944834969 199398584 53990664 798951997 807566356 11022294 841050847 700325103 926090270 832712460 662262105 896507892 458267555 976450182 789199340 581756380 103992846 187707969 7960250 418714430 737756714 362869643 984482190 181760884 926029086 306026113 783342209 512278967 664258725 318739516 702616001 82361887 641162033 634147629 27840865 182549337 426206116 422463118 33213237 446065355 497748952 503742949 59376758 43015164 397242159 298544709 526407637 78810406 763841133 715636047 675373582 225819130 557725302 835564413 536919348 158243036 111876090 739898340 73571448 179986489 635268299 903209900 625589410 368627374 99172141 46882996 952792172 495175404 413868069 930918514 275545845 401392726 629874040 852075051 379512403 999258572 212139209 287730079 725569611 1614875 849650432 65755880 890629216 682759955 245086156 640270128 278825982 323538787 406412371 958392439 137211862 834041003 383414509 95507895 64125824 221964397 556895747 108870774 387631278 198467112 85110650 831054303 545474062 210058705 77049506 822933716 109834822 738668833 460425649 585963865 383950521 656682142 663497098 579906887 260185423 92398527 296099154 660659273 187448679 975189482 721284414 471896439 330185146 295169422 847188564 87535118 735004457 503274658 687940225 899336726 306954126 63836768 814603376 608596179 971597658 778509725 454144837 716505095 635882684 436617607 140252764 649000053 165875052 148156330 555707224 837731272 771433705 950887974 842674461 534955734 6678588 801436170 125665862 340177801 824535572 472595569 229885960 590414904 439552783 938056476 958548490 382455952 883360714 729724168 389070045 575814828 11789811 198991084 356304606 145771119 317032151 49099198 497878016 463726678 672063413 655554181 824898426 268988624 902517951 571894043 957416045 227958169 14477492 187312751 253632143 389751759 94487753 333669374 940498402 294084422 306025292 379926742 777828821 678321957 783073429 807051992 419565230 946869144 125069937 918564068 346369 208989649 965891061 37197419 987081435 574404384 481244123 885176225 151462190 192538935 558381508 795315575 731563056 687041600 225623424 495872977 769278468 33884488 16087889 130937650 913799044 538539386 608308565 24929337 528595822 960108655 369538653 611138002 206552730 469297164 750994893 387859355 508558686 89743992 238889649 713006854 631709108 532850055 187259249 559458791 384100814 705169130 263062697 593666 529627448 527246874 984236456 561169849 957229624 93032175 706602888 817658977 410331186 961960727 263456861 18750936 943696564 540931560 18182370 80312198 715933641 871775265 23474444 959820404 853346111 207374661 757621621 442007573 669934305 171481359 865977260 342546717 179163329 541855591 180504570 583314024 533030086 471644041 899998828 916046563 348198175 492906899 228044554 982262135 975899198 643903744 887479901 639035066 765015339 279867452 388760787 618422973 93562002 143086441 582691766 428654267 322360495 222161455 274579228 929560203 162841741 374315596 638095375 202132868 250703572 485432174 373991929 329523558 653503969 280497527 49447850 273824897 160008064 741910979 345574376 983893532 554666882 196891984 92026377 918641523 578033116 309940651 390024273 348748059 358837068 311234502 476883463 163449499 748912110 217309101 274233190 966181758 6899669 778012050 610557749 778338000 703703045 594282613 172399850 341756576 465634707 266505627 790004465 683365668 235466149 112792053 432552083 38923111 332693219 147818804 283113567 505977558 740076498 635782065 393114407 826945444 864708424 713705998 500001816 535442482 950546897 765880433 843879540 8232484 109053681 263180063 712377461 479804212 2675969 873473665 883729459 493570840 378882678 92268060 347553612 971305076 28282920 987996526 967676552 3957365 777482317 688890220 247003562 798650026 992205894 454633683 492752862 884114049 46636992 529059618 580872847 973386304 542664981 282613742 837703593 217404094 466503146 16916585 538436129 705087792 63953052 809304129 59870732 758974934 509221453 11904845 953920166 155327803 251079454 446350599 143009967 923212484 992364790 900757237 448217477 770989602 724484128 849101767 826084118 286800619 162176825 828288758 113546778 667129306 476835091 357696918 841862940 565768652 105649744 55484541 136138471 450714428 450451498 421175670 624075353 482486803 477305709 878709413 810843568 807259376 834121172 189668978 445706400 913863757 276657998 411518065 33218764 602437319 743700263 602808819 523321438 529742660 573990307 541327461 131894779 785708581 407513326 179967096 756243192 514085374 753361587 88497208 49616150 722117766 238028422 503973221 304415747 38054903 770677820 517098015 707425860 919306572 355937729 615168547 297760968 501269360 71707960 599720469 354392431 254362808 727870174 160868092 168958233 175307593 343572311 862001485 885487265 646641774 82515840 287266922 781432665 564984477 178511672 118638932 482531409 256102803 519712944 919375433 689658220 760466246 910400364 496377501 625427772 803411547 876248444 376963647 619959474 533193204 191320194 358211276 979747348 7637085 545445371 161573382 355670256 9162748 387112720 43137004 158636929 630593141 437437637 495959152 306551945 118293425 695911019 16525100 798548021 93885276 991700706 564042988 836218114 51904359 118224229 253231256 885008397 833203411 437459521 32797753 833773705 730218634 834846467 875272403 185132214 43371198 694587109 977238169 938501218 723636357 279002506 687391765 800574743 923154696 972535177 16983634 720667982 293905543 31939692 107496823 911868074 396644723 740530465 486940875 318957337 15874255 917582886 340599152 855200153 729066004 890056413 74233774 112402164 291065335 125064180 905591992 800670304 594916269 26845315 330511629 418235115 136009124 562040950 450220653 912607137 956887380 157643526 763654243 169791113 80592363 351759555 144883220 62009441 407992235 814869699 534631052 140009632 383319445 471506174 229677556 981717373 298697081 180980300 481368530 559914185 277296586 205844953 528659795 850632292 120791221 116387928 516153147 756945366 137043686 411078338 726896774 468957307 255167577 824670211 464999195 619671201 437296853 884481681 23263215 370914876 533290922 917640134 419915340 469528487 829887266 822393542 797137186 719655288 468534338 290742216 382536948 507969352 195143388 643370760 335968283 334156453 584665085 820338879 660673783 525827356 783262887 646440212 655668514 91914347 268840542 202883844 829374165 751399957 855508079 737576609 238212105 939226817 474175760 583847567 373097604 885118196 468274859 86196211 382130131 741484036 838748312 931175493 458801704 997809792 387712743 896429902 957736637 200687679 188018729 55691407 222479639 949862557 591058865 532778412 289942219 610132736 326672248 941152022 844629064 926701887 691652749 733370731 864993607 292071533 72274084 942024599 774487640 282882839 387134427 164595425 920896790 609150977 858980157 686191613 963493254 167710316 655360524 704888128 287313397 226672369 695745077 321866225 708710004 288330764 142343437 658761712 759626887 887652003 387224523 104867641 877549625 88987353 958482358 517917481 858681286 750023394 509650261 992815614 627618920 160272099 721451792 316293768 560247989 909904180 39488598 570711614 534639206 833514585 547305887 687178493 645799382 23077139 542860669 352766783 287765410 170354793 514324046 485558385 379130896 826788737 996041724 692848599 212596028 975744215 641451039 617077120 97595420 111169916 419567881 500146356 448577590 864269686 604505288 478884398 773121026 500384547 981750674 60515354 207353044 538955456 629665964 774715361 402622448 688698429 232815784 37186360 317602695 329318396 62229783 31560131 849729147 755627313 1338362 620191089 769285035 154851892 986481196 848439246 209943081 347237803 512366197 619477621 584072202 237266062 967343443 517819677 769072647 148367911 936475456 466414197 254322706 550147280 627759026 893326227 672997849 742790990 319360419 232263064 247495600 374595544 709723176 632005240 89442368 687706918 966582442 757558709 859614448 95962271 943356169 662101099 468959186 217986247 636234343 281002562 713098457 789822785 526563837 782358997 159776109 297770560 825917570 660004023 537552964 939473376 457833951 461234825 725513288 290604644 288974649 583796639 519528653 723460638 65240665 686837217 150451779 726015714 74935320 26862410 933634670 101553020 918195948 216040411 137566339 954385110 311104974 320282448 835233550 334875809 529322409 818907924 916525334 984642565 679736587 69819273 598343540 336059829 317362727 790915410 741731606 209626288 59605833 232980086 626653800 27510419 435151719 932574084 719655775 187182616 762927297 937456666 896802180 564278059 983886685 458226004 277723096 246620326 899365520 711769240 68085785 777724283 165938129 363650337 985648521 869712421 715166316 277864799 47172510 712086493 875305389 870858854 128436945 106449600 400084925 682488305 734732287 374449880 133713846 964860478 203903401 951253394 134352775 448890537 367277501 223907744 978607078 245983983 864721654 9135396 47330329 718504402 695891448 339078020 195370801 341423546 728563011 286992522 65835579 471920257 127522843 541140932 148090661 171695719 493833904 27916840 472508971 39836654 209557007 719582226 890599856 414541526 360217431 331887931 727066029 443692539 840329725 439516321 431994480 647618693 582425949 458199758 420210722 476611058 949980970 339296384 163911821 342449439 556870095 145507533 829611610 422462566 35739690 203840664 516956228 412402499 868263545 596432153 408599228 579483953 27657260 34647769 774179095 792381425 100606526 366842844 74012214 508527483 767093449 162741994 395254398 117232794 975247835 538958942 800546054 428518156 846422028 50643147 272030214 699522490 496686781 68251301 726315590 655861541 248137724 166459867 505390358 651885598 88533677 704072605 590228285 429428821 792920382 521926258 252302448 470589812 593636954 228322270 110591051 821423652 226871422 322642171 997139679 235769892 512506588 680842540 780027116 782072682 88890525 700463193 772719312 843394874 993693898 138465683 639779134 465440797 129181198 944146269 233961883 618680173 900405637 247411482 594505778 296813886 181294622 198462373 541487314 794934764 588640594 942038548 914277171 598388581 456914397 668095539 642024353 275394344 655829756 896785375 801129259 791359602 621093637 31797164 571228710 841070572 726435738 6335483 514375874 867722868 538611797 413233199 754649229 811918692 947274142 220149918 506435492 546786546 71657311 11072349 684906265 543166385 605317335 804643387 294236589 994971455 577027145 568199920 125408563 630478523 65554644 160658660 241188727 493782636 521840889 76231171 409278054 449821294 218044434 943336669 344513977 236966919 105270705 182915910 815449558 668127328 925330837 478979994 16309930 350804636 521106011 628370441 801337534 606510989 158888338 803030474 294235985 845045577 653316018 368099146 351710467 599081773 804501051 339333229 788729535 524059007 902571568 331900670 858274811 239808417 959111718 625738491 106098636 975160263 314157945 97355348 518878717 418594054 505029628 73581159 426055384 737261240 130661028 791522582 823949396 92800607 836009584 959612065 651295862 884917436 641933239 206154285 528705495 669079910 346311518 797246389 951802568 980553587 823544230 56944002 283867794 685731183 730483778 601025762 12711684 160652028 556766886 711454053 807899772 546974755 399210156 735508856 423881322 451175941 790252687 507572300 585141074 293636593 65602058 723281771 362445050 906296549 239955231 532898343 933747202 123507090 734407838 563561302 574522995 77179916 718159854 654279690 27838452 304606301 463868348 939287906 794141124 423190412 544956113 291471831 307270558 968993962 331262545 490494059 89731408 198671097 912325826 33030660 513999298 907542523 310580614 827419992 501330976 504430093 752381210 149623501 577927115 902656653 233396401 195156600 194905380 580326882 140385015 571938236 868569468 369383846 889696777 472310848 481460583 51430565 309497027 294643066 111655470 510845216 693543013 873707474 797814701 379186592 18710515 343407014 124654381 830028249 260806994 36939567 693927377 707944474 984946702 487907938 474740935 624045851 640314831 477790472 250886619 784010040 91376339 70770621 331425298 106565516 895095900 765721497 311106098 511444371 149122654 170912352 993232472 987495986 43094204 914320 577021238 335928844 767360570 508349783 705400558 893493472 168738456 651932179 850039281 75518519 791021567 610841414 506486937 129558062 936846079 844670207 303900972 605276140 708596482 411842114 16941802 302838681 303166483 887902899 138723431 314412067 833589570 700545257 806237484 37038668 647139264 155665791 872618205 146291618 195260738 609821249 898099399 754790766 210061423 860894223 212890589 995991652 647189139 170043026 730232317 709594644 604945058 229935558 372496325 174992531 219720509 719876887 343539426 965561408 610362737 336927202 60629511 62921769 577442824 747446167 958307926 147881218 675935210 843348667 51448717 341577243 870778758 77405487 398289710 713141538 509705359 196223493 389161834 105261279 933805393 23649248 24061437 288637846 609578449 510537143 123402537 293997298 688309640 628053424 530863496 29312820 175903443 911395092 65706861 860728596 311429386 199939571 711959775 971692360 309892504 992775353 641720563 509884717 195572449 100779965 599131566 429451159 167738781 616288717 75235991 848327738 670937630 776141008 257558898 940721532 188104198 481505005 231603042 453847456 771119174 10484742 104985394 185100637 88629864 840840957 301159273 411591598 978652148 354066198 960386198 663651327 410186243 581064814 6165155 970789472 854999003 740959603 212643124 885685315 787480542 623635962 818345903 900179993 708469725 404069063 600639033 790920177 635952490 938492613 247778815 267808795 920928538 181263981 165267603 825552632 847894285 139693474 324689604 650012015 585574873 397197561 628383077 307260271 998402689 854819022 752145663 54012308 335412588 152709591 987756876 698675948 71907838 203410875 156092050 895566095 32617261 939606243 932953572 147017762 19687699 18379973 333272412 650346813 53478793 650328067 969833197 385125581 122978714 722098892 957329308 715689017 834089208 346915032 85240663 530191139 178770555 689934467 922772267 799467025 654599869 837988900 621022088 335576002 479769715 361626963 653877417 918978092 830565317 311347535 330699441 95670594 102559746 683679184 24845095 981455578 470432868 301453149 782646414 777774632 29036484 223337010 296907657 191807832 427018474 175505182 207708645 295709050 749968091 507556838 979814828 506329223 555682203 487734269 669504083 989342604 317628879 706879180 326336186 119479762 202358941 269128839 474933119 877752111 998726271 896700920 789790462 540887566 184147071 920792517 872858004 160232060 127729265 634139672 807499369 891568398 566619632 835519270 589120019 735357666 207379954 102934437 250620095 671449609 948943577 42194944 984157877 456686557 282463584 578261890 610413783 504497594 625219053 764233311 344882412 21700846 732799004 430440651 883425190 347613246 658811523 73732228 911034116 449238005 904540685 685637400 77291543 290854747 257790609 874253558 930778730 947520445 386562033 337560405 904441313 709752026 394749782 369710872 581860219 225477937 732490959 86804528 579879356 834810573 906897167 700715781 909514335 305022885 335723660 941385357 438203229 54964701 610850582 433227942 630649681 335079870 330711630 275610164 564295234 486479078 96571540 944355085 351978041 684615816 874409098 674226128 138594074 72235436 561219642 926671550 596472680 319467838 877128706 654221571 721453573 719991397 242226485 280791447 327189577 213161453 148087509 59983754 546466454 923774325 342578500 19565870 593993981 113830335 159294534 5393541 768855003 842908128 258895201 508254453 837203537 904977036 30693978 224164398 434761792 397486687 384300528 117824285 233372522 867165920 424239753 245353503 564568951 451899498 348396388 136125650 651888030 942550578 157371478 4840484 188691202 328379316 388554601 214871626 465038543 313621050 154194174 492480455 207685043 55137328 818865638 133856672 579588826 659243138 123319349 859819734 88472799 281368872 653658177 893339641 881877828 854584286 677972464 502201637 43902017 496511553 363244015 322587957 375290176 273303582 217575291 902608993 613654289 998828696 616898709 994292310 217177173 789364557 616702666 893440617 154974716 621372934 935797475 715482771 170168021 951637149 720388426 523323972 79144737 675071761 367982520 407663116 631865874 2341983 311152331 498959301 32252177 385471562 699508316 755764051 342358735 659602499 647979202 564485107 964040517 23732490 108512487 97226176 801020624 837455984 65829846 31257424 674174259 855925828 59354800 664164665 606652278 628233773 322830545 143221707 285323031 602513069 840951020 396468518 664412976 841687242 908821122 533316239 404700803 465664800 835832584 348925036 123276195 466495299 23001674 406669145 926580280 454171939 810372514 912685654 610499557 224756785 238387383 828672436 540003640 392723858 526998457 549618652 947803673 659499260 41965855 12196821 806203567 139284057 772193292 500209214 828481240 233556992 248943456 792461693 272122460 966549739 183901716 219136604 697556340 95361786 789974147 774091258 962904453 211316931 827223036 45028018 178629096 627297962 823185126 756163684 393662011 450283835 124165207 580650458 7737488 962874417 636062897 483748646 289299186 475353987 882179216 989913888 198503410 281146270 261882190 532072979 14278166 614500755 343691536 45207847 166131691 685436692 670303052 405732465 458272478 952265791 574578927 338124874 887661381 651243480 560667062 441600300 125632456 598494775 886874071 381376115 845768484 771065761 639439250 568768888 20293656 844226163 449111769 297940498 150445343 716999512 770123989 718266058 429544226 507431517 257291508 332883302 278567064 802312247 457886689 311342384 795426232 273395599 34834573 340570037 77103205 108769904 308188255 914603639 424389593 409543041 697505609 768830149 222013541 497712148 563973939 223161911 429388212 888051666 821805850 570393584 374524012 184894882 986554659 953414412 497270676 90626260 660859644 423316245 847570527 118768327 359257226 650927713 444245752 235156110 820826210 245835039 694771551 257595614 812584685 751901164 209275021 468735170 923262205 892113913 420594523 355864198 176689513 602382751 359513049 8373417 203669528 23163497 7096150 260240138 724606109 999847584 734583497 289190439 140017735 758312955 836796292 349897500 85226188 435276962 207505708 175958329 442583491 216131638 569000722 637189265 464840841 409226786 982072114 229668975 97517604 143762942 845361990 950855430 975122229 911937750 498650 447162655 233389789 832883346 859237155 848254243 425974504 873069084 362451265 495141769 122610927 568791421 764201468 483446479 127514995 880603539 434210916 974586452 944585162 417543001 303451279 343530286 376955269 823273429 884199452 286884655 836025573 354561786 885791411 393154141 779988994 838522260 105818674 183865469 287368334 299893949 345025483 424901080 90278117 827791265 226141613 625858621 607936445 449793135 301294946 953749224 936658469 38155616 570584122 623782952 360791328 697232146 495505154 571973002 191220440 43320417 169804060 826452338 357490475 322168637 409089021 647787643 197990699 89154828 529036076 609310302 833828727 229349698 700723298 733157346 452929649 318782181 115526338 188412715 659886065 624712414 452424121 98909074 608344290 385089175 727106397 779692835 493287253 819742696 722355664 406439965 899920812 762664379 943618003 389792030 589810999 362195100 19510617 245249458 548888227 417880221 870260750 50810271 105792632 262232621 720716381 841972474 647258933 296874388 92674438 448005761 861886832 372657000 745133012 940837435 911889879 628436165 713531085 293881393 614500398 392719957 108901990 663271078 175590287 229768609 886573812 587793959 45485763 561960280 221746389 949712689 738107407 896029723 222255151 792293618 181426671 106224383 976798061 176120424 785117553 25156923 687856448 782067737 805278732 960847180 298060198 595246714 438080246 188434343 881646138 789010876 438273956 983796750 269544618 607284824 746813538 807145004 965406423 922189805 988036038 435093690 264455906 577872215 820237999 206934347 820345921 781232404 988049884 574686361 799372483 795027644 176275546 621766736 24624081 269302796 823059342 131891709 915612529 577859315 378701025 804828205 486393553 152654723 828266308 827966153 605129577 875401853 287804320 205362505 714877689 543975633 601158412 802304527 124830314 515309629 549271553 243941832 895630481 914703789 432917267 385659063 832432898 206582338 698434258 764099655 958033101 957873846 783928878 295783254 985484091 127511375 316355763 410273790 431704452 754855043 323902287 71806684 214634203 662501994 848552111 590141957 341248951 80783426 3015221 264931740 756870451 621946657 90888793 364240546 344640925 989098972 155036130 698058912 344535780 686765257 271996919 30483662 735446416 140563702 650156977 939742821 849739505 77869238 118556425 64667346 584411956 307834319 386627973 399618256 229455544 906588032 905219857 864633717 188498790 395058479 152277363 490949310 219674108 656422208 356401463 148275302 585482074 434136833 715136981 59023043 166233168 224785444 127358129 301087721 571148720 698330317 243307844 523797088 462300933 415208816 228987567 763730469 311257957 674409616 659593756 195622836 968603493 960043279 867442687 917034447 425301669 477351728 68412878 565041383 990293397 773296248 800086941 396225441 912604802 899619682 477113091 257045908 697091257 703292872 842146724 895871053 486662679 663401903 147339676 42419752 603857063 93921429 576832653 249991511 763374023 923669710 856685829 132787723 415792263 734107355 927441713 318086862 239372537 982769092 333616102 529172251 245271224 469942309 218061303 709640972 380275737 832987344 245186746 145065632 533922675 464763841 815436920 236749348 727615924 340978014 740905671 532273084 103797019 541451499 880547136 575960835 337495548 385612662 152619917 776894420 726156227 747819987 25536530 82886267 287875849 812889000 137115726 497516072 932730724 989213085 553055013 795708214 444141808 265831216 829953718 231719753 946538202 205682941 695666726 469167713 485237900 718671873 299452934 238266653 753577592 231884065 59374894 582803618 224941648 563384605 280079303 191448771 938602678 821992669 466252290 430351654 742110722 845612911 252169612 366589669 395693195 227099175 713946254 186893881 453352462 809843264 516496953 842756029 174841475 246323922 364044399 131292430 912869711 3458665 193238775 638859430 323897981 602611447 393240256 969745165 208187503 545563816 105801965 766970568 568628376 926713731 627376618 732216357 275898544 362179614 222703038 280466112 874877245 206907942 469163964 326887898 409066233 16259702 226583214 662121826 767724058 613973690 734384221 545656676 255535304 842981182 50636173 22430253 216965710 400625820 92702592 302897468 4649855 490165507 316958899 17928847 969572283 183577359 739968868 259452563 478120963 784800114 362207489 979623331 815257976 644701230 282817749 923921955 94950349 494496593 411926853 674141143 806214532 10555792 312774414 929551567 293727211 964541361 653041692 604392404 822842285 254251952 194313948 319737102 829534281 720517602 522324401 503977170 964292907 933483573 594903514 441106164 565954644 587968535 460796750 47480652 227344468 309607378 532542664 605719533 457449418 130388819 697470229 752572794 715200127 474032294 481831728 935343895 736746022 117978860 718597864 581402072 269895027 779561526 812498611 886493746 582033842 530757472 709362496 418285900 155685871 808830676 615155375 708273660 625932752 75302368 235971959 823543005 304811774 497899795 328571704 170364012 911983896 569970229 603617220 977219382 965869144 213304923 825043235 339529646 513814250 716259893 301655392 787891005 710764108 471858978 677447060 241918501 895788845 316373765 582790810 143780685 540495503 483420642 384458206 567325907 598173334 640540108 208027106 726446876 628713732 363922116 130774256 800924537 574998415 89370701 243906034 77163644 774965262 41397960 573762432 960191710 975929178 90467878 416394058 975976754 63031836 366994192 340034694 110939138 440097700 115597235 410495133 270673408 707076677 889465010 819828657 315362678 253002636 375359713 309391887 634528578 237067 886455794 25695559 215440002 885542919 79848403 126323270 101667882 848175468 604449014 175657192 668701991 294715958 135829545 3324312 416834713 708329735 246361377 888925999 978857360 292958631 705301182 423113403 540154415 670282287 708361530 900551877 962347892 658236897 166178660 664571685 609552476 463533870 349945621 143022090 3690494 115492222 158023360 957027373 807453754 660151834 55961561 637359953 170948092 355927068 834537931 391507674 179676798 441398392 486412456 391237299 581897630 882744623 503630238 681908548 873540538 530811121 516647611 897361149 188766035 951216210 155979545 992714822 910720918 505630571 273278675 211096540 790845825 903495098 3198287 661194969 647042132 9666134 552422742 115102619 23013971 235695396 638426136 794395789 673607690 42532918 50128250 715732025 762438819 777984279 151268971 722392801 371702266 396577723 961822612 699699219 222521379 898380093 938394216 964640456 448149402 590724665 384148627 644432883 102826126 107438336 621066800 356199506 599972428 251235029 751924359 795772997 430839291 392120050 94814188 418004710 996974178 233621591 917525403 702554394 588546366 614397303 228798744 10582557 15605260 254236443 452545818 302587923 553523721 648259998 995828405 816983486 635308096 441745104 980358579 312184408 416461525 798823587 714359371 553360085 536207160 62746895 569227916 411025017 186291703 223942254 674400790 892572336 329797258 974653879 807027300 953754589 707807924 864572733 3442994 668945480 159488765 705313528 58613258 559152210 110012651 236865162 922766218 189814987 981640285 576751440 261724044 131981038 353401038 873181619 716750660 53717298 892942106 626118871 809634152 976570856 179203075 88241206 899322214 608337954 135488713 35804912 868760450 945350943 442546597 166220806 749547040 105269600 624549762 884132606 455387122 331760403 228755419 862859126 139771430 828227008 520374501 72362727 892719146 81594341 792101803 761387037 496428778 515565676 751140225 858121733 729371390 728135781 986317980 418850389 774295296 439066847 153128038 987224760 259777279 970919166 883540377 79177453 638529718 413214510 478057101 16709138 349360943 767690024 869763623 625460740 423372491 758579016 717093504 551754186 576888070 216217306 229844767 837711854 706073812 718297233 959248300 908700223 524940572 80179555 668299818 883328734 324924689 304208279 641582732 772825413 753654697 983291029 146851406 348049896 923817456 615409179 595917992 116544742 720866705 4921366 668073797 954270753 410293857 314468980 46486816 393890653 914091057 259605970 600326437 762582341 862356464 254796060 476273431 526744509 895150605 525440637 364336237 991647390 134297145 59474202 557505148 985278113 41827273 84668381 297347732 331746621 874665927 290761426 628657809 16541457 322332874 952620695 675090453 631203256 296722841 546943012 535843809 415248739 619725680 704053317 40701793 992702289 3644312 185909264 790277510 24986969 885172337 517389149 25989298 161027591 418108779 337821058 129433656 224598652 169865585 183225940 824208827 182466783 411633411 444825653 803149839 161717972 611882287 763708300 51016946 394032353 39692619 613544725 606282094 724448941 40675036 809651513 122600561 74927290 666018804 748063359 227482255 125271866 328376623 43909006 435756495 587474769 250139150 815219942 952582468 118627221 878436105 593461642 922229478 68983548 649723687 967691101 947355663 453504272 929239961 491210872 455458173 264979408 595151142 722320047 817747668 140410023 56383887 809453870 262316163 264819140 670011501 103075721 361074996 125978487 478005878 940609862 374852136 230866158 133928394 786428822 15730236 922825265 505134235 885348376 862427318 516088783 776303144 390548951 774933898 852993370 845952843 246272212 900378723 436692210 105383293 228277854 458851636 90841382 76782286 752318636 633218466 893387530 414456361 279211916 725302594 877679068 381385444 491559697 328594479 923612065 196682189 888164188 919077948 529940874 808812393 231649766 206713870 809030928 498837818 849176293 259964589 554842381 196466084 601944219 625552449 549555973 587970240 313864920 535941548 32012710 346722406 128167945 303142645 463889428 410433654 153983695 956327373 569212923 879283273 735191235 894234181 628472719 923066619 201111050 538935257 624914105 137001295 649854535 301677168 350922437 790032839 720223590 200126193 23934364 52698757 399390941 826397749 88239680 697327760 605322257 847373899 895190571 692916113 620609231 887269422 807633596 750677646 529039411 181406439 621561998 477805307 212108641 697971145 610716132 279381775 475719490 562594991 403447898 944977971 157286357 581828052 903373791 731198861 578681111 9164039 299150984 667286116 528625928 216424055 809474222 556581654 6651629 554958744 248703904 475793745 112909665 288951948 795548785 938739229 119917457 354450387 358654642 120503199 399620207 84001617 515411113 266394691 836533884 88254711 357848247 208275269 183581440 172856833 982893628 742083304 648342476 129909779 489059895 360011841 35427578 822760806 630291141 446824700 989229515 803796895 642591640 187184395 527866880 405340829 267504563 311892258 815001354 364834330 564912502 317667196 410523920 934583196 54482148 28062479 512104633 660810608 967276982 961784652 857135826 250138018 255220838 558920962 974825894 174985508 538360068 717068296 998192388 293566890 671342874 860962755 965163644 285694184 334986930 60178516 151729499 395475763 745171640 542479774 566450708 704457034 164709462 903371845 208998437 638728311 650306092 459926746 75966095 452316405 905810221 868564642 505083454 346203935 864258418 358508648 336006300 397922475 643368163 11456955 922998318 158118230 981569394 593643580 485672087 701316994 188208810 64963287 266724499 518042173 585672495 853301732 48608247 901892478 353843816 220452665 840319626 782140077 800300404 354541389 339470397 365992031 584789096 858367367 993179264 914023399 559812164 947412613 235389590 10159337 467156753 837100900 528811720 369955021 212840589 289011208 546117801 580378067 114707496 216286906 412862408 941980166 837493617 809725135 762161304 391217678 715979222 732137628 361239564 346018986 584943140 91233997 64052224 386435839 790521502 705741726 606769411 503063836 93088477 16148586 220141045 175401542 251873937 410909391 182667029 138529327 164118854 20399953 206218181 290010667 44763680 868489111 576766919 213853646 479426668 666801536 443808143 791944869 977069281 84682856 941311232 684986894 973545228 521654051 80071831 774826287 507775868 295691628 636847154 447468470 111555027 535408588 164333591 960246595 330347111 625216225 399156675 148756982 207986410 882396980 750278125 870668860 769918986 986738225 321191666 812502551 898750282 805312618 995403623 236234417 552398016 509735932 641938543 536273814 467478307 681602615 423419170 537074334 247338388 830122828 274033287 128659780 362162609 177756702 199599631 969182397 173980410 471362118 425931471 855415508 440496224 905434877 419618157 167979676 28620653 205873731 308727897 608371809 781950244 821308046 595171164 16430245 730271532 994245611 312246747 535300236 254961475 137387067 843305754 764732829 225190609 94835922 650131808 216544442 332211761 342461260 73437000 21288096 883266418 582481943 577954638 111081329 214150680 630537900 856007415 886021005 670607328 100658120 862385687 918392526 237569717 844280724 364330209 6680742 748381464 949565370 743756935 977998984 592344213 510914589 103819748 550932894 839470750 347353597 98970369 225265238 67731204 852654660 343900405 105834660 908902137 263109334 297800214 180874628 923864932 916415367 540594600 856021294 501763555 398519893 448278355 869708196 814170930 319514442 815862376 562324092 491249289 36287208 344599795 316345245 747977586 83849325 263135957 2948027 380029879 342633387 50864690 254443229 652001377 574518927 469916719 436052726 549384063 587354390 131100883 425161811 379505127 69180654 169100162 69058727 708137778 199181665 226784315 149216076 461267703 20219225 428331843 859279822 788761461 319913775 780941875 844133943 29750900 263951211 3339647 493171696 663333867 732735614 562684125 450964254 14348068 218591165 789619005 111341603 452524422 741302484 305998029 183673274 389711344 94405219 565615064 336075008 648980860 556023301 997394864 420564765 850447602 135111312 941664880 583124374 889716768 384154242 771008197 969431218 808382119 373777947 858367755 580207083 334614366 922387609 694976299 52806769 316881059 418804847 128227877 743951886 899493863 966743182 736411923 682483280 815994913 13367607 609722742 235949547 771781935 83833733 47030448 514477814 299850818 88798436 23991767 929771186 483653275 58895329 833689558 613219893 354252234 874987333 848601926 83542701 87322578 880154024 390648738 921423310 739780110 489869388 380214151 55012923 942747357 751863601 957562008 116223907 170457363 252095262 834813999 817432804 142117730 114019583 195145120 106544643 263148486 841771259 20368137 94494655 375453776 263113549 806134683 59639886 3789226 422199531 453003315 601130705 649760631 362704876 7087314 445490964 927118230 219756668 206165102 176462574 260724582 878215808 341788400 309117724 879534069 617379013 21195502 153318394 580598357 508842904 544139114 140241018 537393692 8341843 888092475 173910052 666358830 304161350 576914662 871155158 707061069 427108927 173058892 996188039 964728322 102398640 835899661 226447927 792077558 978871869 308831417 676148716 437044595 801142501 577906201 966324430 281688253 679028036 820652971 228507113 512218869 728623509 485257139 184213499 469987047 782788127 909989333 567459807 870937525 26089779 44276568 594087184 723070550 415200214 414296883 783733102 48484707 370697110 788129717 463811960 78595094 132922519 843503316 731389412 920259791 704048031 619464078 708283123 648924683 30400870 56073168 970002209 536019706 47775096 624562967 692258217 104038432 833320343 994109139 641891920 236092548 339999728 55086530 227934204 488164165 560032845 499815024 162793550 896975092 299382230 905802816 518196766 752500779 210856348 884165327 251646324 110745240 801061502 163924305 406154944 726965770 674643891 464879672 699232630 418806287 313534079 693031428 242842868 148080268 408790220 676136907 20252471 882086879 148972542 897950193 674487474 176881349 887990324 857444752 781752022 760463112 3304207 965115864 45862131 712300511 745653210 200145610 225830428 26934984 317178275 317598055 822600338 30648843 38427269 390644684 859007194 884850476 435717867 273065052 174873326 983199330 277253398 594970290 604373385 911902491 102053328 158599134 4585318 554850556 298821734 53766194 98934267 172500342 945259444 400017483 167393555 363092564 750596545 92371293 992788886 444582514 537209330 236924011 119212484 24398337 859615590 807928579 442878918 807019018 880567375 578699655 743429712 465458743 672309722 286163226 510587052 845607156 641792134 495740566 776761845 584831156 752389387 914261855 660536 125337027 36341322 534596357 763703819 728497022 385958332 81320756 126202225 146227149 160651444 804550198 480247854 14213776 601811378 993053912 206143633 363585412 60335422 690619448 549987159 121955551 366756303 851551996 572749138 222437584 637817902 65340999 441563119 917241469 291355487 277216586 606100858 723248183 727419095 391844253 118932578 836107729 154377943 13263065 923766854 132446201 337513489 375263129 312480140 978563481 578079437 936988716 264899286 650985993 825664971 559984734 392943122 493912923 177481045 43949780 483807064 862673812 710502593 164279241 983178763 127846114 932474625 598955604 191331223 882110629 517402534 547861703 386786276 155231405 452214969 819991449 731052676 925879759 106705358 849901852 423726044 873591925 673843573 472240743 990463186 276617037 697987890 646722575 622180692 744985450 696625593 475175374 694758996 105324633 617104979 379546779 643388612 425364804 360190719 864994599 357625996 371089005 428158606 457610173 739239958 162828340 495651428 301923454 651827851 388507401 473116425 189016274 638510251 128021069 311935387 927136837 287514091 986063884 762923397 914100602 499480115 831496840 572789278 324743032 389613850 678095688 786138377 312101725 995621408 909138960 5402524 715777293 52193497 450251868 707668950 510902227 909749417 531808090 614505067 85961593 585237311 631464242 486021197 695317984 919805186 439147096 77028607 772420896 374765561 47651358 294176460 781273710 697197889 436225768 801492574 353647341 885349281 614946535 809019520 56513976 261125604 579734415 856021391 522137280 504885750 548322960 122938461 537362434 144416602 63773851 950889835 339712444 600069999 621162569 483293246 762772283 325959393 203172798 243230075 394155250 344746173 255600240 640023298 404539355 732746807 28471296 529731580 917739723 610495974 978784909 665783915 658967378 15162670 418708053 438903740 96381015 287193530 694237041 642043166 756698482 522441971 293732888 126315495 450687907 794844288 357457206 345494393 949895796 569396681 506374932 186335543 310321006 195406308 345120942 381178501 541586078 997379531 12972751 448356588 277337588 473932946 613147990 595265089 194579363 644639713 10465202 498982512 435132872 665980844 287118253 415991951 620950929 880426212 992262819 882872864 300214404 436662611 733367711 821166917 418134467 687631120 469340943 205951366 881051660 944651469 779110117 267831050 128637745 565725314 704689614 645444019 927871840 571627345 962999396 146970733 547925829 656047645 153327825 87231872 63550871 629359590 941055684 154240376 981690441 137245980 555552249 303716961 6803333 268684348 355708239 475662248 930506831 497924919 451529152 360480896 465400797 570594460 808668267 317177260 459534504 483380538 404199355 897586046 288079682 253427069 382525858 628304851 746558306 718956829 492375784 581697737 409255509 783395090 341320752 858093884 53035606 756977222 106112018 300693251 221304134 456694737 207229155 333040371 276228128 825944718 408869761 903763018 274848186 926727162 593021318 937407592 255529379 187433484 742122583 15547068 63900994 636891075 741815108 169372982 993039078 539751224 799621856 523826367 9696410 231066193 965921502 37457683 372923382 978552679 704312469 242646094 597368053 613129256 693817390 13626439 586504023 392515422 437091654 69805674 659994936 286235548 1641254 407432163 231187645 193062575 642103103 514708193 995666420 375731423 650477547 820722126 441653118 520903033 13117117 248873238 467029990 61794022 823962380 32723954 345474459 634840049 510119757 714063427 910132059 369077911 120242195 175312961 822300713 93870212 598956396 38837542 795771471 486743281 573471432 703380002 303855134 100745781 256047359 183697661 907898562 549211673 579083529 967811698 2224223 214680717 299557335 974607670 976796142 110778958 459552818 795973121 83858960 377618544 520450661 161716913 312999460 435471116 580710711 615784018 99860313 366829088 395351069 531540696 720054060 933641342 240983262 118872081 655067382 408652660 928929132 21753246 253512632 388642284 130951457 908193164 362659412 839130935 73064221 631690261 823736200 792886763 90483802 720396830 747771831 146239769 879576543 424172990 852200012 93766471 810342629 314481716 439776509 459510969 834572243 393104385 872714883 576904423 100594432 148834191 523586848 549422911 254484643 831185407 858265181 408823176 140618587 523820225 884466238 165885568 500123509 480485717 265356812 672758301 632146468 367579708 651252448 896673404 611799524 757990993 28539414 903847366 32177347 795417710 751283088 27053616 452137049 329205817 117585955 212323479 592941979 820971722 983031158 193077559 671614843 70916423 733970713 146716956 826320683 349337211 104777693 336456849 423401455 677811342 759750722 32136332 278328365 287148511 198974746 622511038 455322740 377615867 876504873 121241014 912166207 533025550 574015301 293419166 996463881 186840585 623846745 621090047 650474934 355648252 280854508 40249624 178549903 396757375 23239355 584295029 552035749 616184482 808537514 605809973 601468322 361246684 984739116 383854073 603908370 876101748 817872349 553300548 277588762 799099739 54826596 760051057 171823177 921072423 394831785 915739495 678856220 228170039 994447637 581089158 516081001 648349611 464566136 932408884 796537635 686317866 122969699 336419499 284227768 726701404 875235428 713891986 40551331 69541125 577590327 987512154 512355370 949389641 246001805 642236184 482549481 941160867 276252044 213398854 619017707 79675424 592217987 838958159 912648424 54209822 110314256 850554443 611323724 519769064 906321276 677710854 185098705 429341136 97815759 1253261 622141983 599462956 976984708 933394719 146381158 338921164 433323341 978251003 777211486 587111674 180235000 938846683 571832714 760726077 809814258 424283413 533657683 450759316 132359931 707114717 512293159 109166004 397904137 209478906 620100133 583987226 312641979 881559271 562493110 333019264 625006704 356826896 442135692 806213314 406032960 728897254 695223120 379382586 922769899 3730411 83110542 975758004 510676344 931811122 849095506 83900336 236872515 802620120 758409086 797085668 126034048 604573340 145063711 980833162 69759490 65266084 630602853 616343118 354377589 540613402 718780445 1796309 597958690 873542108 837959672 93891015 760891433 482720563 21615399 872036302 758556336 316733676 106210716 454774820 166418196 817961483 485657584 947441332 140972979 211534596 24736867 504898007 382350720 777995773 794412105 613106441 90042201 580638131 34189059 250344857 898765275 325940890 498347989 610996064 1461550 712232397 927643695 46490374 566361259 185175196 209595642 105155858 868657747 180318874 256340334 44822519 161671216 830306015 972341319 67713619 388854251 149498861 373505450 905254158 694443116 104437097 261773576 679364302 865145651 90871547 902410689 300491994 625845143 68958021 928287826 695405479 208043713 981036697 911224819 788860344 740722409 291405411 365384072 786332520 995531313 653995507 396665426 883667571 741801955 978923083 659403607 544190112 852590272 742372157 988903479 89513936 70922438 304516936 987434374 947647908 520061764 91971137 202964581 543273796 19627767 345470805 695374277 369303496 942104377 466819849 615133097 161869655 671946620 316823749 823954887 662818103 911187366 661407073 82297844 571707901 723868914 774527086 112674622 225363493 52868071 28423502 814467650 866424510 156965434 696733208 168834381 593162186 38893649 769112065 825387108 276101854 224215671 960737594 334545863 182482273 796074703 377491929 122316891 760515608 848808655 85077844 434204047 856507172 941968794 365594430 240865391 234384435 979914235 889198553 666043468 65256430 724396224 824178911 998009814 788216568 961949818 426111334 938456851 946946217 126245848 81070125 244494403 451320243 15319787 349322316 122760472 135649216 688508351 600889673 547870829 824429658 452305044 796826817 930449919 756091546 909960580 819230682 214696522 35630291 14600399 806481302 311599760 815562735 437263969 340058659 337677314 989722007 529024572 870439375 350984190 294231757 238239416 709600327 407723815 396460047 337538878 243183257 959214829 567491529 682337131 497336634 689915818 462944992 212970844 331559654 391232166 597364819 537270505 588293835 598257527 677030720 97554228 131481952 766462343 705670895 38171569 217564981 524074509 108910916 201557008 260351027 26340667 931735740 467319722 483644392 50515449 527915069 280378338 451897253 121819233 76024454 958384496 223120087 114299951 295132589 652745407 234551097 583598621 821466134 402851940 648573185 384743058 930501113 811233738 463212121 518105839 90089645 681976530 635146965 517837746 392653521 191222302 837507425 553283000 307885530 85296687 466857409 420894714 68382105 511150907 157775517 340945975 891116823 176375113 476831909 222858625 363303186 837011621 786106768 865360522 29438867 338530222 105885100 272182008 705271576 814552629 554927372 72832614 97865489 898279967 309888439 268517781 104864179 796998528 695583667 752405302 879146302 681413439 497015161 624991534 671804300 367598481 628509090 674670086 644026539 822150403 88850006 776630979 850316107 365310067 378065518 882280439 911787227 563719492 852851524 339860407 206505986 877183192 311711899 758731217 238656935 926642770 750260615 912904983 598053700 958100913 52941387 319933396 540029233 322703504 655395179 106721629 731907167 380702450 344753750 727291445 22832458 419469768 326434967 609841376 849085299 978508162 202777620 166499936 221911404 739910597 788564734 715373780 348396854 243406559 248353341 65072307 238779158 456632447 186171071 861968911 824368420 112198873 977699099 600234067 343305613 249892608 33882532 678331132 539999145 523524846 388589496 707526381 44425858 113322622 31202216 627987218 514223672 974518857 421752360 42115820 956417768 902562009 750473566 781802698 249357572 326754196 94783348 852162954 552846361 638268303 775545402 772836928 507451354 558919026 946832829 845024131 44862422 355206792 905136255 444371298 939182665 526083085 600832696 979227210 24900967 10617896 855664027 566729029 518926427 248466989 376862189 251008657 257771452 797119886 489253371 450455272 929618082 693579409 896166685 47853900 263884597 727843730 551399047 375126863 275176564 636749668 23569933 162756720 371596262 310740041 810347797 844951848 842131943 211272132 905454868 139649853 42176390 726317337 228128407 371387526 297891741 235284760 568249134 455515401 92262086 937904012 944559972 621246922 33478727 414163059 373292105 618004941 179968995 270151270 743162411 449521674 858699549 656939331 665257906 408438087 917961229 519519244 740403281 643959654 875364205 624419823 618738654 498751819 700026970 103651798 363802683 313641712 867152129 883650251 559337724 350744791 238950382 651102233 510664961 91742506 866244125 439261012 603501239 311709148 289098033 151625804 150866931 173646198 536974567 406765549 134025381 512324352 352773898 777857999 535615035 697398227 681951102 843822262 427380563 976967366 277317240 976489476 775396675 822547808 955370479 933552823 301974762 174307528 800788420 181818162 606398582 561372155 408573230 934884566 932240302 397449649 289838120 271730102 356828878 651773717 889693119 987956143 870554643 264769414 775460665 42495751 603707974 311908126 84492262 10984496 689021431 869904358 880666301 923964278 550948961 831497077 618961456 233282425 798628209 34971806 830052261 77022394 25052798 162424055 424354596 83855063 13559133 591347587 255310175 21993145 783566754 853934361 941540654 492461841 816318796 180512405 824757704 830690161 195318715 397657471 127837873 982869931 889850501 16095116 54350375 182031282 360129468 163300444 248658621 65197152 638905849 209267263 345405424 292289358 892037558 704163833 883271973 728483681 91056986 742101127 819467358 530196369 665611527 474357323 662726758 856429960 228055035 13015101 284407321 203324704 273425029 681201604 734187720 762347798 492538221 213383101 7729527 860684921 158441235 675754290 81629583 654718855 943904079 498001234 650924630 461627181 332006686 398690248 637756862 346723843 82821427 930433787 881015529 630938086 349638985 892213009 204614319 816791130 956503625 4497709 893823142 338411985 721614597 837502958 771051654 159657854 330902368 136629517 900478098 649003833 952174626 9141301 846627886 520162685 77290114 211426793 891684209 481847448 490224742 768124190 105574671 575955141 201173737 390936686 272694580 18575182 884813197 414454566 711006515 665095862 948028330 144486340 804286284 391700676 13108392 839131583 100288585 877117757 374762653 764205912 947060297 96479863 958608782 572123320 219157509 365400372 743542286 856383824 406522139 978179999 957831125 778306588 819409649 831328065 568681994 954717895 33320683 617264968 239383983 170112942 925416701 305980625 229323851 317276570 323215774 345457041 102735014 426887566 475764373 768119315 587053877 565757233 970957388 255821060 580313862 210069124 695884255 90689882 456514659 835650202 531995645 140859094 264671348 344530764 473872721 256581432 945354481 148971639 790022661 705265757 620714487 32277664 619180750 711033999 207343595 357818060 121320917 237085096 108480797 135508248 959744057 458902532 553284787 65244733 305758221 325274712 36054580 29273716 147439830 493340653 181692185 606791506 493417494 214488432 907669149 985499116 471912706 58092856 5642684 445439699 955252949 20287642 584490777 946122393 22729649 838581842 598123542 51620406 314274835 940041790 222529173 36294569 632502956 847097750 945108405 474885699 199608939 770949594 344946098 892675923 624573285 148521754 861136308 508079896 171837724 151831213 687183992 510514381 375891853 49840231 515992824 160925319 190527542 245521185 547407302 859083211 500188064 636943065 646746002 267471504 142069865 643754232 575799512 698058288 207685925 181666920 199067229 856897643 824343312 938267721 27990230 564698991 961948049 595462078 248126832 199470424 152246208 417039486 678678844 522577264 615489348 897752962 389592530 607077942 49658111 318250464 403353915 317664201 950096201 997431621 672093427 399203127 209015012 286982181 660911137 737433382 828673538 436302119 953915610 350450902 608626001 546053441 620714462 934650211 355733854 532223724 377163067 305810978 936949267 22229404 354647018 90121301 550860028 699401901 25942481 36668624 363593345 586658479 46644636 509722309 725190202 226035903 160417832 591337258 585759416 505923840 233803611 114977595 262357004 219714660 84054062 912878303 882879583 537113646 295455067 99944082 676026757 337396702 969639700 832251800 854909559 853635968 2198579 339059932 106236200 950408210 793459399 243347077 461869890 377703207 378512420 15923869 260165485 921601918 859740563 379451858 604344664 493799963 320011323 264613033 16930761 101380197 117600602 478402803 125538203 844802604 728172230 98711902 80654751 93236932 774682376 81080322 453892551 57675790 463786275 616118033 704257784 173084955 982709512 306933205 427658555 809111157 201029553 845640070 233667857 122026055 257619472 332462537 640322774 148034445 418254139 536923346 550351665 885849870 557611378 454935879 363584596 552045652 474987849 789844944 79839761 683933929 996150766 629836174 991522707 156987987 729358257 814394998 449592522 756896820 956632150 404633012 296428676 445088382 708913481 996374463 507077696 416591024 745737906 660427029 836838370 949294344 401513264 671398106 995677284 734218057 397690129 860177241 188077619 61986379 800727786 767716563 632968540 958276365 454740245 936361442 569704610 605983873 953391309 884597236 421742535 115558900 778043614 112268716 974080646 423538417 131111798 667838561 719312437 513813707 96930025 328206651 589077103 308360908 193862556 369655062 52408957 640048824 959657623 615460383 24890626 347848876 535444894 306054347 447800632 890705180 559931371 637308632 519195623 887999320 871197646 20031295 956563130 85295146 547206335 83427614 525690400 860083096 872164559 466357039 52766515 655515533 920805120 957237711 903241101 957075377 225661808 252531714 475605330 724748564 885019568 521584338 572883553 97109991 462829827 589186339 439331116 640475398 687884329 564234870 288695026 101684979 931591079 357131618 254676589 717271704 168925827 101040283 120517893 699054500 427625025 535849604 28698311 831700072 215476191 285583807 798379669 729034599 474295208 199881851 323999968 700815610 376618037 268058915 956692944 619392394 648532190 739278524 216721022 626645473 986262846 916176209 187141964 427286936 11596565 256295975 28566308 112008210 447521646 82372355 192303159 911914715 863420489 692122938 253157724 553149635 541674893 347081034 206703245 467643391 221807672 65324992 615569391 164403522 955286723 16412927 30082879 231763475 765440541 56613287 668324712 872817703 634808790 218391493 426162639 137078697 113290145 13188566 896789957 94334897 918879391 631146479 466423542 359699232 229084786 43193853 872621993 748607547 996170803 689030410 313383039 95518418 167921541 876488034 931367104 850523361 455523756 225407092 770484597 272105043 402808512 868747051 231952169 824710688 312291610 660578062 932244308 674576596 30886505 52839344 973083562 845818749 206502312 687529768 859872773 713507754 4161504 227140542 893851705 79230970 86126891 921355018 716480207 257409288 167063176 394109473 51177318 748196374 14681745 405103797 201639245 699248878 21311256 61190686 123664379 772517397 255691819 729493411 520690769 489162660 559955057 574407300 669071262 639581006 304458183 827962153 809655032 936316672 627244224 819249215 318955877 86099276 826455325 802711994 166013098 702855529 736009331 958245168 50038809 587255421 108282239 46186116 602595625 407445351 84201619 702023977 856268610 450370055 105698046 58483489 923652626 29039152 553433022 891170528 425506775 279293179 533512557 670297719 634714747 69989995 866147439 685783721 247694711 61638863 13498007 417950672 515902106 5314921 899719452 616696908 331175664 617889507 770341032 974727762 282584863 660062774 766460904 367851296 195008601 69544762 141649970 808439895 835586796 697916931 101588114 803548819 40263989 992977995 876602596 489721435 520791676 680198282 504644765 323468044 939623091 652011084 781929181 160463144 243040204 909421742 225356378 362128467 183747374 327647922 615380896 612233021 382576213 974400846 998001163 501422360 893268842 426912082 532426595 140624571 879100925 395029731 688715909 126093997 335541435 390227725 869382820 140497790 785559862 546764937 939156359 840064786 474126276 887974183 7662151 428875772 707641088 23104223 521088441 492831675 214793470 537743389 650234542 632947802 706481376 528699998 769394748 757210537 188114471 39474783 455021982 324706213 207878579 230544965 513565784 775530992 938239331 600559103 901715774 366033312 115749108 541480758 248090332 96436289 64960604 349019293 610980750 144139577 209649177 163754220 962854362 948142964 540787933 486568412 247653032 7048945 384638659 967491284 970548446 250399021 315250212 18441292 229240132 182228900 394144080 536396907 283298000 235233049 995494676 790773663 270690273 781180022 229413104 1328594 919309815 470051168 105310117 659136088 60577691 439425933 287418613 265335780 670216093 849490761 804073037 644973004 899435125 862074849 759255688 398042677 374187171 997643504 143399153 47926401 114989007 430788138 543135893 991049053 547829463 676785459 686713885 644155008 770183453 849008185 422600226 531945198 94465954 284152501 400739817 534690292 879426449 157290176 487344522 811481879 670265697 668720765 162448006 183192352 354409722 441868228 192333268 393463124 134324653 371517134 859044575 623253493 199227207 879896520 594184411 715227280 723587362 729249833 670339625 84556765 3591207 459424171 834830428 31622795 349539953 475747344 890659236 24913987 656641711 583529213 650020134 999066867 365158688 617945128 903876655 117969966 286939513 493707434 29587081 80415517 924165053 888790689 216455544 261004571 890585353 214931005 838999042 45505880 186913389 916049208 583269735 416830605 814329082 715480231 72914121 222506448 61919107 874300809 272968337 465227634 322052853 817806518 409037232 666071129 914115707 412318135 410103301 277773247 901806814 893154334 109304465 995351960 431644464 941453094 284314418 521921539 195941700 972462521 678749543 96736283 58858007 602169667 640519498 423534425 31944068 653778355 820060598 260498248 689567211 751611368 234218383 961706622 771457871 553286431 813219414 620549135 569119947 38829956 647127583 39372032 371356444 673492356 820212828 760380424 945899552 332918285 966645632 507739931 357395132 87306382 122450601 457587214 261146710 546173612 277803128 46805395 832102239 891907798 787468308 877178076 379617634 730901739 218986392 834077405 941682092 926282131 249157552 282391331 102276227 6262409 201517490 867109129 483015029 543098595 981084107 806322742 283261233 182219204 842031395 601794721 747557313 223137074 305477564 589253466 201670167 197209833 432949147 850978569 177429986 495388081 951990137 380495309 832261026 175513817 612893026 698899785 154441526 576570892 263978089 787706868 299581835 342800974 216905876 412713320 323741012 543255940 391438269 716540067 368128403 820809447 672344696 263749097 256568153 145309991 75779275 768433239 594904684 453174823 511615252 86856321 638380049 23536276 371995938 96638949 597493169 517316671 828910320 728582754 404000626 951939647 937502505 49707075 791971495 391806244 621864071 951302009 78145131 848813445 90287561 299910640 8059519 267203872 808624379 818117898 304271907 303317784 632481908 151279002 895235071 354987915 251282873 460932272 138687446 864415277 884419206 514800137 549857012 705767041 932610934 463835356 928913022 211064143 528749323 263636373 782031836 914786694 59387302 676349002 807908835 866231225 657950683 24523966 568689271 900235543 398906503 866864663 622446513 634932268 692149871 831224013 728038092 361110938 7118008 369022505 227141931 658987705 743656183 421989614 403015619 864301906 456455779 509741702 574643836 496722300 832538992 895276318 900946581 725324627 988513969 463234822 787191826 576218752 828717573 432116612 597983723 159515054 585954500 53911368 266654510 648271520 185520852 875001706 838094755 743764725 174363477 398018695 413148270 495246793 354072457 618722207 329446628 355360440 19883158 861872480 231404771 719884767 61919524 99455161 270439350 534959643 431253489 969568354 850595468 213262585 23400644 624593045 257133656 618305444 877855084 35731114 288664414 713158200 426338128 866129839 465376140 918281019 845425728 503519277 506376183 878808642 6798782 780841270 512724887 13036276 508357047 591446282 462171038 609775309 37389079 609487417 191539319 532682591 4060088 259790494 848795651 982968262 186120425 906016068 883500409 858019770 997177014 364964840 112769670 431163189 358352956 409110333 273334467 398693249 474935125 256365081 480535410 753987573 204390757 84403405 725696157 264711748 534332942 608683376 453258538 551712714 72414894 594163158 706739665 440192929 896453694 540614931 784543211 354866709 831809565 213842593 335619563 555520127 450633022 401800982 951722563 593383939 334300039 838408780 288149303 704534536 768513875 67613522 80903527 145769109 549462254 21556543 684899814 160408188 581860976 423721278 756756013 66309954 468569859 85662207 554872025 227679600 792381354 477282639 569657356 702745021 410206507 634981851 640740925 245425893 696538702 32630565 859284243 245673325 864867215 130713297 898888196 153666392 602494786 621360290 296128994 699121730 345583235 812533617 603868814 772298170 121305359 397998351 599865884 337340926 228830911 363014778 866978861 886708253 58996823 219075347 34025819 342558597 619158099 285463885 781166015 691922713 333180189 18988900 223556237 752519492 502183331 662612477 477270252 787167954 147828407 734184899 434971830 199091153 788626581 345727626 202453149 92769133 210301187 102637828 960063657 151150924 46040533 208677069 575461723 78658746 14979585 412859777 650572584 567206855 270200002 506132179 128105874 776634463 31849355 82857229 466169291 756626676 715423915 872924008 686644620 553214376 945979186 863283946 535579445 852736377 344113662 297201494 381974122 898207350 225276221 800730862 461888573 876661668 871640848 923173608 782796801 172721100 380078027 487628575 431464227 750668333 493643326 141762499 718909856 75205691 897299296 727522 725902251 793971968 691766270 575814884 646056592 856893541 665172697 83416208 87787657 256898746 798215706 446816382 81886579 858155316 812496214 601972991 706422871 185458620 598287180 108600438 622638011 791160441 106595936 104657534 364532401 451688107 586469913 794607738 824580126 450326155 782447102 701902490 30494884 491651309 426833396 735376493 565052153 570624122 81423174 991789495 898998456 710581302 661395965 251269414 542153198 112325826 205370939 998915790 67002522 424891444 136191249 501571681 660846911 221802747 991402626 928396292 732273394 629730137 750154802 127698115 929290821 763737797 140915290 125396567 774835829 725714421 336587094 372807562 830637999 563337568 50812665 547859607 614422576 736958166 421310279 854079903 580610609 307039072 381756340 29106576 556483930 486654186 493770006 718785679 13576942 632046929 404585659 10446200 14113392 345951767 579689090 347013771 319827283 951937179 499508485 245795049 708995655 161158224 150189365 59286051 678719429 822443163 152367762 405098383 914678752 52431624 381364321 572844959 801410185 841538860 977953417 49208244 14444637 697147289 187623361 786126495 375113344 623426193 855537312 242158686 169326431 216057479 134275861 785057156 402844564 743152050 880989928 524069112 548234378 288475981 869016890 180929780 178340359 90824795 322641956 794705908 113172871 402775858 819802064 872832375 11960616 740090116 817856358 393540454 658641884 304659134 876367889 193635751 377705118 405430188 988846194 946219625 568449320 651179012 80570663 383234351 142307572 790472564 683782438 918469074 294370801 13765349 936866963 892122732 191474485 378642537 400492966 236725940 663598754 856324330 758146037 740335879 869392888 854251621 840583213 208484653 102448584 698626123 895615711 863603495 566003439 729084626 254490309 26436506 657931789 19879377 923063190 279640831 829247539 488881171 776294974 502815161 200482790 505069683 83140022 851060823 938279947 931611291 378413493 335818802 826634234 976068839 474816241 38587962 820522811 793220688 119983915 150606087 517567347 690090646 835616017 292671795 510532346 423943259 394834176 521629542 663517533 607359942 282917624 256578903 855023614 212839440 811465888 16293633 350649132 247778917 677665800 928555079 685983125 930127679 937896581 19961139 134624055 569840963 1067 987344482 289754622 808388862 572574845 365253658 605688537 204391009 218595513 434641096 972951574 25920429 284186371 548903763 684378084 981409381 433332891 452788880 239011618 248302779 761713785 546924051 437241835 322694344 598885960 658813187 524613952 710805411 881388593 743724329 181895883 324517647 143915706 16536952 117772961 968015078 794829723 263099622 836886717 741001451 328461116 920666747 596828928 661721555 373766883 994772517 455405271 250433469 107974578 49950728 937627855 231874862 986846872 483109244 756418858 483031415 287516046 773270862 524715552 624045493 144279363 941468091 921070111 66757753 995199491 944468832 731470931 821694570 13316416 348818885 324894188 528385838 126740242 519991615 978635908 770729661 1766914 833621954 772608017 859640312 170491666 713124649 696232097 327210039 152556870 756336768 935701226 50327267 512043163 991378903 900991340 708561410 941521442 718217795 297802850 177059098 287466891 88745489 844532950 169237936 528756849 953521617 938407123 579476861 365575665 885214256 209867351 345893250 574949027 31630376 186207081 583035654 782252963 326649918 942904157 407787684 723698852 92541470 389065071 232997458 612603918 265498775 558119111 579507669 281557889 718310819 955986665 62447021 516799089 105346629 954282558 536930311 895263707 750437594 699059347 863099721 272179064 52387583 288724713 569273114 247269405 564264123 454593162 686956665 796115534 898695935 135293293 509393366 722008608 450339106 796541486 545795655 247247406 209430982 541958604 270781482 345542017 305258488 747414377 938823701 662522526 498768036 360935822 283840061 75645140 310782510 709990358 926882438 117745276 364521796 67608727 748672061 848893825 13346413 783695547 618125401 232422059 247916110 455762217 34888991 53706547 203474957 955275932 783415342 544398052 128249452 480784532 760399817 317019074 765276071 2881846 868961208 520698039 92505184 310453326 42127375 608389511 597131054 157979700 386977583 158847648 592132080 412826304 678353513 915682623 127549058 528447888 599192655 859711887 868693531 764987174 137059763 731068402 491349379 198243365 539246138 669852235 759097872 37969479 887500175 841318488 202499848 588049089 432923035 872129393 525262128 887631059 782894398 692165010 555478401 968877552 578756458 270207708 704854308 887891713 754946461 552644048 962231021 376338333 780048116 713298262 203991489 969615944 943770482 913753683 833991894 328293787 48109796 147685161 68899463 430937366 198207472 725883483 706586531 755981512 71875164 271657753 612163835 936515529 503322817 817527626 168518727 122074150 870343350 847065647 539373700 693860779 18524256 419902669 507080930 442291574 281413361 283407686 270364807 828716168 119275143 313140000 599724502 89476830 531094401 646160224 679071301 31325299 742378775 709905348 519732201 635770426 85297098 788870596 381162500 901016778 7828045 433694640 60497227 134041212 995499269 932529171 403106969 950208952 210212581 230987933 468917078 625322557 352674166 184888079 103367997 610604513 641974719 425039739 445613742 40816786 637456817 7800266 65939264 919738458 686480410 952931946 886414338 453627643 602938885 417888414 641472798 214530558 808394278 893772590 954661556 391174921 504321457 713794632 488457394 220153094 739131867 375743291 50948298 555753066 3274238 233365370 461217972 224552917 282225633 892798636 376526472 30073894 367540711 73061016 489971533 705423580 108538087 287191742 958948399 201943618 199809840 732373041 961325498 955248069 261098755 956645350 947063741 809561743 343976253 216969610 542602234 546049328 970551650 467898290 693882122 723078862 304283590 934449725 154091410 351290913 198891453 107782027 917291321 280261741 20181586 337358560 745088543 55503871 809437255 636896326 897115825 218624356 477681973 217985091 720654662 945610842 909333539 13660499 236988380 911108972 913116232 220915139 288161153 144113771 997168693 854015370 876089928 357851275 83781822 660118836 597430328 757297638 316791304 622980560 690594239 932300079 548273655 580621840 432004736 418208834 139672902 921666956 117216811 704575310 830298268 867225357 102103104 666196723 280402113 195085242 619417825 195350432 384436299 404225731 217152780 632959539 92847889 34840809 784573319 586878957 461390370 572126587 304575469 654481493 327926657 198329902 551280277 344101735 89162814 104531708 705798077 736592601 786473986 168399843 311552386 701847406 782091015 798795206 155572287 919416863 604940522 904510539 454161324 204512910 306526541 491420328 96766770 431171111 294726443 994603505 924680790 143065737 208852538 969288253 931919064 235930103 131533014 926193321 246790763 425234541 465985767 504631874 155782645 635865733 903452308 522621839 256291371 588006078 92140489 420539535 768923019 529705660 984953611 706570479 459932405 454126446 693948358 120975121 511026116 636361502 182140255 958440504 869239209 793103848 821826010 618319631 896694589 381569122 94361220 508415940 941528109 771605207 706344784 231520050 635373879 93629573 90906056 545224320 192563797 95511983 44362026 595723299 16166983 20379920 508116821 869405530 112603917 784795823 266286947 594815889 268866400 822781599 704739321 212992376 914453549 894869477 295918781 642712681 345741287 906113592 304443036 662938601 171093636 635051335 454237139 253483706 880409759 180000511 620987670 591755114 47082837 951400290 21278807 76015949 742907075 717884671 109450516 277038588 981886359 322678691 220625028 140936422 903419375 674394131 864085656 664440186 51605704 22670801 755009685 433303667 587112630 53024691 923308496 741177505 748389937 749424105 257343738 662352629 739845940 544482620 276712644 968358364 137315985 402779334 165266630 364111207 881794293 159672502 300410346 717225926 777824283 775344078 146939177 866936574 307859387 124767365 997957850 441757085 817037427 475694937 582277472 861717144 417659776 109225892 332927747 879917025 83801695 455823957 536663096 860642549 448156916 852754662 753999203 937349142 124663962 386914622 391834785 365115056 668358136 155195666 913777704 366288476 371722774 332198550 305613584 452415551 929798017 494293104 22559654 320972245 799968405 893166552 917144156 689381863 163072576 529524654 411504170 255515408 68953476 87319161 352287187 522805192 893514380 9339319 33887464 276024407 715397917 816346321 856916329 788128709 173146220 337677185 54854980 614626912 811300033 156604085 432255209 555475570 40785552 518023080 616634163 100081662 281658241 339387854 12141880 464300627 233770500 901571519 737195880 570195372 360186259 516371014 778680630 452567805 19307097 317474839 168235918 80400993 810971705 482439899 441222044 795944180 908701899 36373136 38543517 675226853 938735011 465881743 167139867 365854478 457578031 505051212 202526233 971602255 230494224 15761894 775991495 567018129 199178912 415597970 686731638 787196649 360209239 82240114 66686019 826106903 146523181 880656444 51058606 653352750 876031709 441372440 643725966 656168546 714976954 59365064 260086012 897857311 635041347 787622637 707939221 50615140 514618857 382156114 250153379 552448798 214078271 654531091 79755267 100626097 623803237 794779532 388369637 119420883 742688945 660775554 648656808 910224369 430172300 253266467 99449276 9300967 637255530 2326822 957885147 701994175 824808624 181254314 655898814 416171786 596648135 51667972 658783524 321031503 608958098 99140050 316126534 278813012 485051513 304607550 486705079 61450519 834144277 975773435 847038820 71877544 783327361 496204122 138104581 488877493 873823834 93273801 520835418 408172527 198163373 482424659 719217912 527306182 890315980 746195360 861120654 803482994 919303820 136839280 713428858 933984015 816145119 616640963 896029355 228185748 906146280 566458139 602838905 14947090 543122290 635670917 748140928 423318262 643174536 69724622 797855552 540377162 454329517 566804345 898964007 846093297 89795047 175832715 264216416 105448453 325098847 771971445 411539235 689387032 481055353 410367717 285087375 370580271 99563223 481875964 111626058 193999021 859246513 181868148 699345477 144939606 59283838 574890903 28021065 728056857 472441056 476996770 535821310 153788805 441301956 308572188 687731332 973527604 70657593 654558133 96837855 801567572 920930914 528414305 361092575 906441798 828338536 634090405 336614978 397559781 330261070 582468410 476868208 610718637 872005488 651827861 18891440 155750260 772587797 942645375 449612591 441839968 456425296 636575066 929432913 547213431 586836007 808432313 939333235 180632802 245937460 116408788 834389179 844735754 173860438 614784633 659360758 514276778 651481419 417928057 377601158 314050057 520762064 953849878 983433089 609008138 216480967 31601971 442107114 375844466 310826553 679238186 469020663 80675727 994289926 887649407 115393029 858149560 474669606 825119964 827556082 400874952 618754868 123330762 477866228 939304712 609123592 353711932 7485050 636631185 367409094 172063506 708670694 388218138 715130849 267311068 356136295 272164384 452068965 976124187 907633479 594744343 408254067 103543636 152843794 946151136 923266437 50718938 845650122 259638468 600717135 513033022 917832838 830691815 907140864 544502009 329887531 196145311 368357723 42330698 908823755 59033098 440308027 165336627 953108119 100462065 838194164 590591796 835207615 366662112 994149602 884966689 972075607 108487382 398538643 105347602 812586716 230818481 682348060 662076486 571630397 226182845 886233985 273099073 449887794 115937321 970810472 487809922 591929222 948936288 351920952 623808304 173507725 60366440 125988962 779602284 890666500 764539825 58835413 969481291 200872453 252879274 76188122 557931140 170221282 980186620 455741607 720344229 982083297 497547068 287770490 488777338 648497216 576437312 351638687 347982118 282452034 796556665 197948351 250342439 996738433 169120494 302439936 933363712 153147537 214978427 941995318 542042781 733087932 578260732 776211841 667671069 76320590 173214122 335023584 43656902 714176250 854782333 518643720 931614826 294405916 223278604 130786180 999267625 810966905 685374131 243358131 204302341 84892649 918283231 242333420 639100585 787056667 969385258 799273746 35415773 717536607 290682339 877556375 415409963 120723193 698277551 837694149 193492448 883573786 142274614 652079520 137350134 635185853 314008281 613351984 443740097 389348728 968951332 876260531 235713496 972134633 579943074 982243580 559844691 543211437 295562474 975000393 307773810 671742799 44011638 577265281 386547104 599941093 868758568 67003127 401309540 138767063 819681338 132467792 896860969 102355730 697426106 832006853 830938043 20737494 368234160 12018744 242677333 857828083 209505823 61771617 64239359 350024623 41438906 304112509 148341941 30990717 183470994 939798127 739255177 63439128 686139970 31020075 937319779 353700193 369007636 630749823 215760289 558661513 376693379 152323141 678328437 577515464 780790166 690988294 967154825 31623180 809266861 500804041 626135232 670835366 600751110 873144553 955657131 23708937 170490243 509936684 991322485 522336501 12131950 162122167 456764383 121390087 978609303 550203479 356313452 682186201 612851339 911413673 758822034 120553066 963596596 749313598 984455472 468936806 955258305 876720407 215414210 5475111 614231879 886560138 771830922 933925766 236681463 386294452 46220569 177114064 720512502 769898645 703454905 796198028 497842570 539776539 893267448 244884276 412260910 579314994 491883177 785112797 536101824 370440759 359731765 140302109 549959249 870060425 46873775 113357522 431437060 98858767 589504570 479381594 950160894 331404153 194592640 534602009 292424970 378286011 951117460 997952010 251905464 216329390 874317906 647372912 629566725 118231400 389364454 243099438 491983081 95815495 780667666 131672121 484024958 601177216 166720343 964880680 117503690 171925900 930098132 211982367 294689009 491763397 588430604 290116449 978415084 505094143 98332792 706096055 493484764 540885195 824790537 564142931 64071659 91656491 975222132 643091779 465445706 658877812 268021501 404325293 128119937 458096439 903887439 598055983 468823727 280171 199116523 118988734 749131467 142432826 303227448 470176286 32846239 150895519 403748494 720780830 857926474 495596714 246459847 827831140 491831001 756761685 964072599 30360984 61676461 500193674 62574268 931212787 294251865 99122558 885097409 276348486 189014831 801830699 208504844 355729223 893894603 796017568 890291660 489273601 701504187 683490863 908236739 351477580 335211093 795383181 311166850 309715686 310408470 314897523 20933197 521418262 193127440 297675473 925343919 363165543 570893448 675736553 438961656 920281950 575952210 3555181 663499062 353658413 247476975 3351874 588706190 265852715 791761419 832094 90551321 976319582 694185822 249509937 421678281 371765213 932932959 624156423 534947758 298728784 200440610 877679807 113047407 58455389 397432151 297025963 668048657 932893036 733249250 193373233 446981254 429346276 24658210 45404019 542908516 522683211 15757762 566599762 832343677 692056484 543894429 857707364 303441072 90616794 209132112 431915331 817032231 704792684 363616738 3180180 353258768 907673992 413371924 897479690 968599344 834014995 763413109 816357069 885718490 789495329 107483348 793041468 264864899 821191351 760523267 82960822 629886418 203882993 629178971 563109959 83168353 311013087 478870474 901054680 311556279 507237648 398591639 142053517 642123121 434273427 474413272 315536772 922826754 66535563 629102553 169920406 971230127 666958573 221437952 297287015 823706612 760211103 448331973 187356930 715756507 903785355 96891137 608404490 696479563 744426979 949268676 615468632 329271133 534900340 850591769 192448372 744575481 657258952 596280216 428037993 614738645 158961668 304615618 702796802 752260204 965348311 953445149 134283867 474974807 713236419 918597556 888831203 820302451 302613226 477249202 126262053 641521309 509664791 788092351 100981300 99544499 103673579 346053617 162498402 501490069 510023160 661466978 773918199 592401962 690263938 277870808 479042656 923527204 121889578 842983822 128570943 840999533 961904091 913926645 600691592 573353733 569755802 810637934 66912095 40712918 442831137 473235813 659340317 747991298 650088501 714961950 177393192 965246426 317079457 7654573 619138757 896525072 375876593 413050783 339965885 994397491 840694994 827241509 780163107 893459784 720351141 327453543 531237261 642584813 297190676 289113281 680854468 2011481 91532888 766800642 497519304 657731358 90474070 248308595 692093485 755098673 509487776 475801083 665752496 924032802 886382956 238062222 331242560 450928945 239842003 725028235 379060606 634436448 229560758 2983438 993668756 899231274 345524128 247745145 307105147 142576589 278764148 633580216 730017490 127734742 850755546 759585 179476716 565642335 135453796 51545619 970220134 315427319 496667778 865519537 853470047 161610508 154095079 946189808 229631818 629998568 135247309 104906714 518053382 493935672 837242196 204721005 476105242 785381421 524718690 149898337 532498472 97845439 882178711 344011245 825277122 175334419 254769976 348758388 749691036 503785053 818249095 474967014 706388517 747422195 416749547 231850904 567428872 167440042 786599600 464964416 144163793 202915280 446764421 716371879 554518012 687687266 720259621 323922384 916433683 223178840 360561863 893633245 247601532 408494850 787077968 410805661 564908612 144339750 350594476 584427588 747218064 416512702 988737859 958227297 869937359 657216872 243117493 739320761 507195247 547249995 842292112 493321178 665591716 873329258 799818590 19378082 995383110 244887250 569564875 495420966 51669023 872807389 481383656 924721126 100797556 210020491 377110000 646810095 65532466 403072926 568946412 362098302 889520059 85595616 727243794 95858469 388282446 410706669 406479480 408038432 284535855 228112598 32695487 159239657 155313324 23076256 379359112 146131832 207864846 433941382 889043862 770010546 818136364 368435783 931929206 992436124 363267958 859861404 687370277 543267302 799386817 847415753 414437126 662678766 918276400 875077547 764157760 201180879 378296751 144845499 531896753 329272348 346100126 76920428 785122890 672060102 924559956 818699070 750659742 802322407 658296432 510890351 926573956 561403360 727501332 950361736 259876826 854895420 726765999 511972323 402119769 462808047 108046645 341002692 228335363 825522544 471086323 656087690 757091629 854205588 984755511 896610353 638075371 148234445 273763404 945474352 485034283 867061133 512987601 258060026 997762082 394232970 28672022 355586784 808153961 536253527 110454541 56436474 799070492 75889204 247796453 35333321 258490595 289384477 987848791 431197208 723150008 182578445 805949645 392015632 818319967 352168869 67531277 315361151 544696616 559850446 410615302 403122291 645185375 670546171 891214679 787694902 223929463 705784620 530425863 720479600 540177294 382410903 535735660 479376155 871523666 399039824 901363687 24151477 812473172 105755316 335092759 232700203 80027183 637703962 500945140 873973539 385467164 667187416 724381473 378752259 522980225 682989757 331813219 465153593 718862876 541088954 48796686 677065258 636538600 26623139 991151465 878248573 224405798 304023714 721237607 919437395 232784697 166403064 896794323 691514717 118694647 689224419 4508712 620721776 371308337 812611203 697408222 108781641 7789503 823207513 712412721 895484783 36832175 538581073 546593651 924388336 212048327 705939873 88286534 2899365 648292377 59352187 650428698 718388874 877082003 695808131 164060654 40346791 281787863 425012352 466440916 657015261 88489254 865222672 713725031 665295794 863007083 854483071 312354630 372100997 732924173 594419761 348490428 390361226 262994023 74687633 167078697 75807574 627322853 86401152 156564763 742556590 681945479 13641576 44761269 669024657 652360806 358897855 603684865 512800475 235158418 839191824 588591933 842755269 90423207 200697023 854156511 502675950 619911803 159723949 307546282 481251516 483115567 894570758 194230848 410206478 815876 914313507 881640917 92843966 136147417 399702672 841831223 860953892 744123438 467325138 144010250 907646966 456113486 570158645 503913537 824543951 790091419 405476091 305122336 594897762 803605797 200719975 841130870 914707217 474732163 73420479 310400044 748133415 986271590 51858886 390347230 433717396 257971616 83845870 683170826 366913879 445378765 763103328 164106655 471923586 653597886 190186663 260722006 260253630 786825547 774502438 430772138 733178815 932184620 48808089 549663530 127153809 979390897 429857760 137551336 664323471 484273442 540031686 422688733 168278899 829754565 153915359 328471354 501280269 139909108 130387291 295124364 28524591 787668796 923797156 797861360 617234434 297854759 465916640 211955020 467727794 104330233 546727080 681170906 167683717 29965914 870427354 947920879 847487676 174813888 708575998 720295068 8358065 467675974 734915102 504002060 315734420 328975773 890431593 507733941 115860088 671433260 751875948 732245724 287188656 2497768 621673127 699398461 222483724 435170533 646454037 647897821 810671541 824423813 49877611 247821593 88906584 310196994 217020646 866616210 444097679 535752533 984666213 916536493 723113115 40989500 798109430 342069832 227989059 681042088 720912034 187866018 804996138 42191051 312087638 201175792 748813228 720173073 114130236 338615778 397358848 76367427 146801971 809450421 974899471 153533938 986429655 54344461 686898010 983509060 828381803 39240860 330471652 789168472 603370499 31302188 360910856 278263729 314580669 344968024 626281504 119582461 747850255 293430729 982312387 459805975 279665300 562067544 959330391 590483859 1592983 970770594 244860879 784484961 788804097 601004547 303549378 604820873 878767522 678966650 667708368 338325087 229174060 66153650 338747976 848285151 640116732 824383084 963874508 686635408 174849735 273336449 56143357 32512737 689433974 625151956 748047692 913014093 568339618 457118446 367840562 221143362 115985632 762048948 860845134 812210836 236011339 295897853 457453332 544353378 35954266 436979186 864284538 295885557 703902804 316708764 287103234 975414931 700535653 715538133 417422802 211325257 191228222 451431320 427037467 700852613 701174385 126912246 634587419 171333353 984605006 359915161 677445405 607074608 23863364 677926146 937200251 900020458 985330459 840639368 507747129 385360016 660132778 265244608 397555043 734290974 85269173 320169207 111915809 349325969 120217796 69742892 133086245 851790555 648264071 28449530 944270964 950943868 301368889 761263148 402206911 69365793 78703988 905238051 221219468 667974015 330276263 329786507 520721947 387967979 310170716 754639280 515361295 416803676 143610001 467661738 607654879 428319175 227055061 867770496 81005812 114679494 301691449 905023041 328651621 763335817 371870398 993754509 369816941 696554085 260089703 151249161 694929043 872966587 796991352 470542425 740030838 799317564 111843575 923544425 788521641 143218512 337830798 147309322 229068943 734596481 701808048 761258405 358771801 38392946 583676530 785816450 133441049 772683796 606397478 991945514 571573917 891351799 932112677 274670394 281144791 388386678 707435091 673079128 328036742 486578187 47462066 917659114 737374682 505068835 336429479 685741446 159457735 332909275 511799621 584706789 450985478 817001893 153420114 831121753 927511458 914065987 207582049 993137101 208138516 511248850 459008818 947245202 74458858 363245768 638054286 788740101 999699495 816529303 83796088 654152301 751381962 980862516 431785003 178055013 912659482 358361798 664627099 505813217 717745316 108018422 25840351 417204456 361937512 901567999 342645880 428584588 173324084 522952043 615956934 978553374 739750131 665255028 994550124 170193087 149140330 205420869 243985154 605517078 57989959 222819483 509749907 632562375 83149924 685244806 956619193 815943355 943680547 34685984 20426818 379244770 565563048 948242835 681829310 546706473 441994 690263536 560490747 656605224 524698362 732436343 182722264 123759038 712223322 237047249 421399254 756693946 840011227 293892931 722279005 318239932 195615201 80677046 534131884 365332071 687778904 914733237 52473032 550194305 831588785 543122280 679270999 188885190 642939325 400992442 269258620 80194079 80684279 612533973 748691067 226141198 460934602 99373426 570118626 839986789 65479300 215237978 735169508 609736434 174855647 718223804 480194019 942250918 720358804 168390089 168073739 347272245 134051756 243677876 517699821 89393198 684331354 141757664 278209744 658664588 627910443 74267140 746093985 269849596 240671889 532333919 833954473 224458715 630770882 642217926 43748451 933740833 973484347 439109070 463890227 171308960 91997049 453972484 943346520 238025206 143726994 962909308 238834050 315477457 195261400 552979384 950994623 31413981 333673630 512832964 849199858 852666559 220075402 381040876 994399735 737167387 114948046 96124513 211950160 760380800 940414767 359400750 837286375 888359501 668674527 272594467 456803803 939211137 182343070 705307729 171573364 735593691 119368909 906789739 760782208 533158506 515973980 682711058 794391181 451685592 55952044 475239620 27523460 169136937 124767755 171241596 463479460 292926587 587267264 908456990 945800363 655710853 516640230 567828338 104870040 157010361 185473978 829209511 193178853 223703059 325753212 31327055 563559312 942092980 456519657 64187158 706178773 676704554 195027428 741061050 310571240 113116021 823554062 662297829 226967619 473961811 15124641 499351619 455715529 186788303 41119822 459931656 117302145 402006022 966787470 618962201 129165793 379265990 975493263 314527075 151492256 64600757 831860440 80727255 716921385 57547059 256031971 872319532 377255544 812179800 570426938 691863726 537990716 625864439 956134640 811456936 477906622 771435784 405249986 792510370 57365451 116057488 157217472 307542983 555317395 511253358 674360533 758153360 789868068 292519962 393413346 212952118 918295868 665282990 3775916 729578466 733250119 188134398 337671004 49069146 726550183 467957161 459678847 113832538 61625822 584583012 347917676 244723714 316260307 18916985 381574750 443716914 949375567 69447877 380684196 69758988 856429655 336283936 426137796 760311149 78759938 801759043 269575600 114736142 183643785 152446513 186378700 309402635 906377245 765614383 524491682 748979682 878316353 602985973 345786681 941967637 494756114 661393411 109538168 672040578 659267484 650768182 181214008 791169174 361058054 840179194 741349547 544306017 497844685 752533353 82997376 640220426 833559496 429011949 282212146 916591079 902712618 964057862 911771711 142439447 219308874 535346706 915764977 919597490 128154515 443487160 492558375 649203601 899993027 394546576 846515317 242804950 114579668 83108091 796890057 682310412 281503092 19428479 981885408 301640982 386739346 654125904 479765452 557136146 751695237 363816838 561827069 729425507 887347378 880762337 644390951 134424810 638035328 507214473 97158070 141198833 222704043 731797043 430000264 549576725 894328635 580591053 981970088 19826834 413306948 407608612 805165981 200618658 520790974 804378632 615696528 384759265 660906497 66733543 433686283 736149417 600221151 93025752 51882773 20105220 407819970 69911261 808978612 187235912 531521060 829404336 462491194 907955213 355546338 58773492 652970990 775763463 240864146 14862754 388847624 810163087 548626544 689181881 559408069 945432899 67231616 761924546 949591656 820455349 541036033 584430250 131707559 384935178 664866415 695526690 322711922 477961549 29405016 246256352 124277621 415655322 282404512 497210194 963372393 68745348 131344401 308743575 816406541 895761639 515190552 349186717 160563588 62591468 793571299 442689242 449137003 844327128 782227379 503176908 136900505 104371262 188240188 157939915 696287628 540321091 629085411 225603268 414021452 725507410 543066501 710813716 740286351 114788638 645490649 547892729 611811883 394836435 499208042 460029022 663431200 421772168 603823437 614254771 411927450 980264217 803819721 414084036 341848113 840910491 816361291 517972217 187543544 162650681 928664146 164080713 356147444 164166590 71331880 268655272 811340660 9674595 636629522 855096878 898714436 885594368 670233112 585424735 48369520 447702253 468400910 715919694 947090261 30582269 952092043 966903211 512531253 380019814 643366851 96805029 152558608 592203968 652992701 896331092 815371630 614237019 912542039 945661110 119720492 772044463 773498586 677386390 916681053 206507837 975479 26967069 928308159 428030612 596150183 916374121 760022285 613434373 942174105 925315932 499408304 584383110 948881387 229287497 243374600 453219685 16576816 385919292 596820569 695773336 526564850 76419031 683851626 686842870 350943664 592382356 677526098 509576867 410156877 934507244 298095504 492244159 39742891 62802418 425162242 206867262 675566103 231371346 119521584 112712340 199523760 549844153 436699682 268026401 377157292 367335077 830826826 133059012 305073399 616051568 89087124 327857935 469235262 403238323 204069891 610414118 541322220 895427954 835099195 21373569 128291369 665693775 647564881 713258223 178426152 450280659 611870213 612325958 314695476 431643501 512924679 17346029 710573545 862010746 435804208 434667746 368695252 566571657 34107798 171284790 144281350 559081818 902535384 492060090 720888871 909060309 829805617 481985984 973804780 790176296 649969779 715520936 549830514 625179667 890537389 947314489 831301019 446160273 50412283 685990052 54925624 78455419 85931018 160472683 198392605 834646054 47204132 406896805 204754562 519182111 922001736 40367519 767512807 395775590 939825095 87071875 56257668 454961403 4795516 291735356 821195778 388880546 158632530 774805061 341963960 982944727 162728134 545702578 292149615 885245660 946101619 752816489 974248281 45067922 612262108 39630839 72233846 78473785 563320221 595898787 927175015 161586615 536627375 982854082 759413476 432062600 230817385 457199061 82314983 945148185 464864839 55376273 386121520 374024757 757442921 674025523 886586127 744033546 564309371 331102315 801502012 950280934 184842678 753840480 305548116 497705957 592983895 869950917 972411466 715359466 164463804 633601117 724352322 660564717 225582349 486473023 385839921 451265315 719169133 6578086 146764919 225653472 953220808 439910133 844758865 763982984 560014893 960122337 554929677 739018742 550203850 798117554 103662345 713141756 888050749 2983689 733731338 111363627 966980253 672468851 67426588 763636927 717932771 798225737 64315631 15330129 440107671 925321990 369062026 594004855 181546952 313499111 657455845 968914004 860904032 514103705 878763262 148276296 725850671 314413512 117155527 66385880 435009659 832605789 298677052 85079316 934496500 557380744 930953300 407328893 247286956 589012362 360428287 288288014 459741372 6906867 615727214 303083946 737820053 164633370 41046160 664716896 426799779 966383111 203250215 509631177 210781329 469747980 184170814 854617880 815509765 121242985 945859274 596302107 121208385 682126514 601490888 76122372 433257050 139490651 427252772 135609318 423032957 775689697 281539735 909778313 277579943 291706697 193942467 894550239 98067188 235395379 146651166 702832974 177795731 769677272 860666996 545748147 714262556 671794614 83295535 171196944 439667221 831512991 742117300 975805869 229582630 91493981 448850687 295778958 268612623 134797822 789528582 145290395 849259546 882940455 685078266 347494620 915041308 653854053 222401176 809857118 203820113 16138844 521735041 991182851 792541151 895812610 650701903 683968482 322458747 253095919 849673529 513314052 119823873 604479662 916889833 699899820 85574443 123288273 721332442 379009931 587780413 916131388 758492465 300228597 473458503 842019899 70788176 898729496 252964263 197930820 405405429 289729351 921442881 857085083 764100025 315233954 396416063 471117555 827743189 200945413 528081902 727624654 219500152 330650765 509589949 423858740 334394005 731520785 317936233 394579713 444598600 61721203 386667087 678379163 523668849 870942404 972297294 597108666 866855691 9148727 996913649 492176379 45910960 112850696 117266368 769190628 340670078 992659756 239866 72133324 105204001 195719665 907470875 447386550 810397091 903396239 541608995 618236582 243809331 842480646 816415958 619664635 548250271 540547905 809527695 77276882 682548235 599619107 728761016 141443415 101432481 284143161 494573387 850078840 328840460 556679700 527058702 554741203 133941634 134760342 575096905 428796821 529041715 221581970 316922520 640281055 875006583 839596911 525168281 396753426 186598191 971537173 938956666 310187065 962423301 974680756 574791333 798217923 166767734 290178776 74633532 294987372 170449074 894730402 125006424 749137702 137289879 338379077 593743911 290595335 76385229 781838295 4762654 612915969 569775626 901412690 877658969 369427863 142443027 673885469 223228722 710046473 734072354 874667989 958301598 463505409 540727178 371454016 303969023 947586397 524508999 154295869 259840522 943670093 183629894 156647755 502761930 568968924 327439532 739009928 597345872 25747340 748227650 431463235 504135012 243065982 825149375 460935246 701683030 284581644 322758167 114539712 13055002 16458613 344117407 843101829 455325216 261544702 369692570 924422533 132918887 32935653 992159158 788833357 894399701 170831515 197428481 438828476 616905930 777791150 633917752 349655276 697575002 920495161 819093849 580667223 250802362 909831516 17874546 494667818 459643014 905875449 839740613 856106118 745137680 306582112 876852289 828880971 541099264 528726656 754338772 941322111 744720981 188134721 693371960 720163201 900094845 221967134 779511978 401789549 105881049 347343619 427689030 329895100 77646319 203436879 429254150 41661001 252172642 197800542 159800876 253979501 658789867 332465878 683421054 670238291 82379374 457171039 773498286 145830830 275789672 719749507 74452545 572506399 609182246 783690966 999419399 867483020 397244780 628544791 628486196 640283660 900964189 47504766 945011618 795103746 159649701 834228946 788177838 774479365 619353735 511965010 872313626 941854571 727207503 804755074 190369361 681768825 519695482 260411380 915754620 949040909 906446040 71113891 963780710 151114064 230440332 447142011 536818418 479872531 240918349 97509882 115961327 882952718 241085045 809555828 330101183 205336159 379190249 597851588 619341581 960436471 783894445 155690893 671677155 119819667 405812333 566505184 516575085 14324409 566575637 571249241 148632315 97510211 740480048 998157831 99786980 3841031 867413870 613807 932397897 617231493 659178177 345483713 93648009 857797643 211453310 724614912 395629328 630060659 543138403 87590084 141347473 153606260 35654326 804782209 282169536 783635516 749929783 942372120 200739435 632535002 586257452 224524656 789487227 52601433 665378728 385944193 158288981 226222209 442927309 457721046 875447829 767896323 685746868 562335654 186981924 51674699 516157283 55012370 10239985 173362899 175328063 634611427 475027093 512209362 725913493 172460003 611101992 46907645 554026671 415548277 532819466 960288689 646540971 267303311 219491320 243947179 534772725 544325638 545678683 553733621 925454036 927905081 241175390 354493877 907297873 398933727 297636617 541732613 83780088 538537610 999595589 859824867 297451202 270813909 253990470 17674572 515722436 174060648 704791833 22883426 924827320 797258218 811515449 848031574 898016056 983234968 911653454 360179947 403279493 270677073 919241552 722227746 485861571 919631312 547747631 949423874 811132223 165987321 404519389 390000260 110555979 690373455 667571332 393579697 582148813 588943682 644181912 886371897 165475788 342684650 612653563 867086773 14222673 434075294 366106759 856572999 147972751 933130027 661417691 961939186 554633141 20927597 445154953 182061163 383819260 386866468 488304495 93821815 853045128 672248861 10201986 638262252 816654527 155268300 962661747 23324463 93020823 699296018 890517948 617755884 865689582 489878507 8465115 488094048 365554352 594481453 730073960 56409488 637302403 40212859 188308380 432115776 694358454 704833122 288192562 609649520 316128136 164206928 68483878 482022449 28909197 423534576 692847389 409885265 546596684 191539987 467662345 712642109 816336945 274782242 560313943 416609653 18195365 54541433 140724208 770494046 811171177 806614578 741232614 516293511 812367148 187995503 285777701 980026121 117610634 105514219 716984966 630902293 905641536 191667743 435201080 588425710 137018721 960292598 46700031 623031148 341716551 65107345 918038069 796726602 257769158 762603104 994871247 116202893 335825277 136622510 340464623 550354812 71861148 232210854 158267960 577908750 87423888 707620590 620509380 815154763 1164897 439393997 355677174 609036846 633771159 54901128 67463355 92010611 281382021 411555203 67603407 348325050 713926198 624894921 514268215 640677015 285067288 586133575 349436129 69534306 72537599 388488472 948673944 216447494 508999069 842124923 988127629 498130885 630284799 417269144 375678495 796437850 999713381 237568387 272898795 806397084 961031434 503241698 23432704 703707008 231295152 191609754 942211288 65372589 518733028 990430266 74230095 616344675 797714064 448093861 965640409 753267916 576963946 359747488 129935645 331935950 781760984 113600040 233422303 398017294 100791216 440741654 978659573 70377569 315513372 955635211 379550732 818147388 479189871 362062509 785193789 915081963 418418115 101601821 118876957 704691730 44990126 17533410 653134747 971508153 363192380 161401008 700240195 969408206 163432589 649335474 995378475 978917655 918818223 612551597 7908089 492938956 454935581 730688453 839274079 285020188 59147957 663953567 924142941 508894553 853252071 69023616 611556881 336369806 450090648 601173995 670313 737660265 847734105 826145094 330519173 581886861 915046933 917507164 42128965 340841433 856820718 970491302 163650479 978987493 203559378 681857654 691146003 374961474 996497492 199117587 592192458 852012592 274204968 308953704 561942622 445536606 431246178 12562755 529145143 702646592 164361314 87633710 635153248 98286009 300288139 915391825 900796887 830784458 918369671 486014332 28312591 340760153 604859366 243150248 692030537 569554771 622897614 761828900 592623305 510086134 305957177 915114073 973520323 212111381 278002948 441174022 902633806 21015401 125557154 208397813 625065133 969661535 73495307 764738558 193727571 873083890 864790680 912482713 464331318 494496255 993304997 391279759 850177838 175362544 427759000 837446478 469569443 218307844 124932567 885406605 980417017 267239138 738169533 389306202 640764039 179576713 468324394 101559 481927785 799833717 731890152 210369939 659677374 130228247 317187671 541903834 672642139 902344308 868777883 712330319 989617504 908022229 214213083 183684854 178832568 36480802 71685568 506515558 70415146 951415523 506558311 353673898 583851657 631001507 923198410 388645047 306998219 654756389 285872128 813369925 845029775 912221124 548869762 10287627 481977066 677670546 499656764 853334787 491734271 369695473 889345449 913110150 932849148 763016960 916630079 474245070 236912015 230301091 828834413 355224424 797499131 573907254 336746170 538566245 572988739 354849744 594333577 867506591 807034345 563050289 916862335 369317139 398722723 436614729 15156759 314285622 746604829 596271649 845654500 973298314 433174153 338951929 494629844 100909482 79570629 320478108 133728606 935410109 928028923 248246633 881791398 603073156 53570871 499788170 936710671 391996458 79659849 999981236 564774253 789386617 771655350 542652519 215767313 551592700 908839882 390340573 226234334 314952439 377673676 37398657 248069293 255501965 673436890 512425376 523516660 961257310 175322300 373124584 876256994 585524301 424098612 440823367 226902453 100775833 941410296 15430110 38454110 326939392 487828561 261400812 535805010 944820693 578042422 84896047 490393706 298917981 10113932 964063683 636556161 88868795 687491285 75160805 124147613 378983180 706287496 890850198 961803700 399651013 481644348 227623595 864429402 201626320 762657546 214251972 247423974 508306656 10650665 47774698 367117641 973171032 167482001 455490102 113442818 423377070 411256806 685000024 596168369 44378837 107662500 536864096 159763914 447663825 982782516 932030737 22793449 523806999 396832128 815716890 437884870 985297598 225184979 394252542 374189370 635772010 805676997 197548406 203031404 834553157 274420827 120096268 467150827 498733958 440405966 262216637 824028317 99635640 79170583 843078955 255122321 57228653 566310605 85401912 936950915 923289281 598419225 107231365 508211130 54724358 472167836 464415128 230423773 963215851 194314987 886796114 532545960 314153141 171847979 185486101 658371512 453267516 370868524 734048280 578486962 696255397 77523866 546327288 491178637 432560859 311393000 8522397 188905850 488738729 998229771 660301035 402239563 869133420 965350815 351618366 139593219 457361393 893805820 183670216 567765140 154032607 89996440 289342984 633223583 666622178 679414481 197012935 839599618 814955362 566146666 257628779 743769027 338914406 610607736 652114093 144555478 951070637 601262100 835163610 265981213 389928058 599126045 119383152 139416845 494846784 225653978 441195920 491422454 601625640 656413955 639609808 674726582 310038029 865220193 269846928 905528805 680818481 504630972 289850679 978633630 817847423 764747532 416769031 822697154 312880662 412780498 467631822 383119902 299992936 578699874 232133932 787043042 464065449 458490856 888999037 976042860 287120042 98900064 752377344 205787645 304873561 729174331 761752371 445055242 262349510 366331100 499909487 459630443 705016727 564727203 792690743 927895421 650620963 888931995 546496366 736732775 972624340 171581557 446127107 162296380 688001429 689282578 315037706 419401376 633773083 423000045 317074532 866185547 997593185 486928377 148399774 257102435 183805095 926583276 35889898 459503185 61265588 129427281 493586302 668872686 311826768 381675940 955690915 341577135 88107026 130227638 740635919 917626376 253331504 970139709 588700715 507862732 885222128 319685416 112571896 268265476 769919642 371967018 818540800 685992671 883511120 662591096 75867075 437608066 902599116 819126035 830416425 422983100 865702372 554233342 477338331 210358574 839273752 313887633 202288343 636544526 812140418 568924449 806340985 451082041 284248420 532659062 352160337 119039793 964836271 656810605 18164988 549131666 544754684 581040013 929744327 648404564 920337091 738118263 22528292 263783707 486231534 492512862 318050453 116738915 790123868 119962441 511974044 70458246 930436265 783545371 205047161 509675739 284854199 856292354 666275704 725118318 23667052 831413391 593428802 723974812 364125945 721704877 199584538 861496538 759088164 638865093 197025564 217170976 39528838 261395679 175216406 18357807 481062218 196819893 832141870 649664731 43244747 948116320 288234305 312332133 217375740 731267729 885575852 852372694 956694027 25385314 655057807 276163369 93902263 248384457 425845765 781728988 344802524 294747099 101144791 284627396 66194999 626334811 353298730 822493105 499416459 587328569 327142092 256163780 815681284 687460967 254050424 406965228 513229609 771301881 136192984 189562171 451513675 190030401 655802028 254256686 131408532 688256350 504372691 276616164 479621870 99249976 297055812 684480865 356101991 831345753 623957667 216470043 673166465 586132902 395786771 392180781 921918332 664798898 86667842 703146380 975847302 461878597 325924748 91760619 124947521 97977882 650155252 895439653 667146492 840093268 537477871 866171137 547909644 206555719 809788677 78709965 359719512 557473766 708677624 625704510 93502081 839594370 688079217 593579868 954672040 194168332 36100521 301515047 16166235 789860378 238465952 869644296 864935929 558278960 334919328 647424200 134449340 736245011 736060954 262696415 686866414 105078437 841705865 676808394 487227914 255617144 514929744 733103463 557629968 242321243 759725827 391431124 978111828 941109196 592214595 376601454 334531837 823427 701136456 387197055 484401175 81068127 952241448 904791421 880068193 371464083 416607558 809873273 576037173 497767546 103080794 284961624 664202621 503271821 779323046 46140455 166898825 946185104 364138127 909194522 956303450 738251208 22665269 276823646 338027412 628428380 376651211 847745547 327568578 530930980 127037282 262339428 348654868 451899817 263747703 827804254 823137312 154611378 915630341 560037423 493276551 115996632 49029007 28471765 629809870 153956836 311348507 712778823 316271050 661309189 529675755 995173409 682641923 549340435 500892109 331408698 313382520 607605192 22679492 452457550 87783507 812513798 903792398 537089813 784260910 958406601 641198658 740030762 811993920 626637408 388651310 366157216 717724075 600973067 664791303 180241194 562917584 105492610 890330231 619042146 206365804 842368 108677619 876139300 189771164 231371075 59223577 645132929 247938410 872826824 989855402 962953613 78498112 20026752 209895791 276849787 134359368 517513328 412496047 295996331 611526429 559791083 365275773 434058065 308750102 264196260 301136578 565709837 291366900 791708675 361225204 356767839 784031741 365730759 360753857 610887414 536094215 936594762 218308508 115118983 478232193 791775337 89023726 701263695 500673929 808780042 681707822 265109799 776407447 738573040 603603502 950689625 533242921 805947730 179671771 779889935 464418167 173076316 166438592 809488056 388611757 4344614 452140309 285538296 420212246 506267376 342414649 691187473 148813848 942570585 414703804 276613568 990928616 598514307 237042171 668877847 502818902 518205286 700996144 797829111 777001939 906166878 311539803 272775129 855751362 233287156 280207100 687678848 224510622 226732822 325952704 92146486 799578330 978404926 812785181 594397929 879489367 674810580 353228131 902419073 299710224 114588217 756154098 971077551 740248184 104525798 334998596 61605431 890814177 189314090 256173441 873086962 494232391 218575110 763822200 154223913 194199375 762278010 495136895 542076255 28586285 657663831 141762228 900625366 922469495 814584658 633439701 944158438 913352300 432425467 273129623 953698168 154631920 762244312 585028376 993332337 953204019 775698273 302341449 81847256 960488603 991079774 134704228 673747976 782365535 993570116 93844423 11879442 107314158 760589075 589745547 96242836 97646008 698109754 896817453 904056722 597399361 881202454 525869753 640401248 101720407 379908054 998313017 212142181 660060175 541993930 193120846 121875018 374131556 418414113 730709082 39712753 344130663 498626148 937257132 383667432 636789109 28943152 362727141 477657353 575483281 897224242 731089765 747992275 325035683 847409338 837265363 632097816 859925650 132851895 516378165 562170471 509440455 960106339 151060335 709474822 255250008 219528910 602856168 648608339 184232457 753084753 30801850 423160378 845131831 461037897 523572823 376267991 233298057 230388474 89592610 660011471 235219586 336598870 35178631 108955186 770265537 587231593 178913447 610312284 77472045 921602889 692500484 314709080 507670709 496275353 98826866 599828986 721429587 645544188 352721552 269444965 184991384 880782829 771996441 577040619 505594518 547968936 401977031 569805415 415628156 262506534 768114532 136535086 128322228 213611202 713794713 694651642 162136467 250831903 542800838 183095760 743162208 543730805 374768907 794197189 472136782 414516843 508897373 976669865 543044301 803265043 540462100 361783221 366281565 466488716 22619833 992121599 49210565 939747430 129271709 101694835 592994565 443789602 1867358 894379958 855606374 708093297 518614119 558377309 118811407 567372607 193046140 685304933 65569876 550171150 869734440 178588224 715169599 821840730 442518424 187237915 195455623 558077136 382950650 339945510 729141206 794954610 359109677 951169618 891127627 403804466 858069237 263626858 578505657 168384544 74834778 38331093 690403629 212649912 415752436 492338273 479784951 976469249 526616746 813900485 789875392 878909837 583709498 127685497 420389242 333427807 698811834 962336051 571432843 805902107 166985831 140594024 148507522 984772699 136053110 29090875 126898263 907924743 508492809 583547074 830585620 466396803 827601201 115432235 569195586 684777373 42188761 943920413 685263035 922087446 855887389 667440003 51491769 732139325 891818730 451832813 822648904 971280121 804710877 97663291 55760428 207538824 14235944 967146719 288198489 213014569 557236213 316412959 764793489 106106119 607867419 311654388 528768911 117592830 874351355 344444205 206124739 424348334 585781541 840263317 308201951 867005579 9257063 676109359 767303993 118605519 941355032 37140745 88567894 184261173 914633696 760131572 899701360 124642810 241014312 30049066 725473631 236732943 781298145 900449811 998643168 310574787 449850467 415519291 507221464 409549395 231738073 757898790 4742897 410277369 910628247 243436869 533672358 23503584 906498859 73347377 956356286 872839989 637507683 457240613 537911211 721512195 645435738 394959599 385239576 411943747 815111097 79324793 261165631 596349885 214759216 349824650 128425436 106549784 429583872 592914922 451026221 665075127 737387282 847115404 739182068 471521875 954179929 414936513 974644940 331066775 763847756 951327422 859583768 522361991 690202910 115403391 39264237 661863616 397165275 216025986 65799143 627589525 472987051 622706007 73822906 541978360 216278374 715602532 377319665 809111245 654911721 114225194 271008449 287117658 112946727 524356118 900475847 561578605 728848926 65521948 39146613 516377280 293791442 280709989 539600363 177639364 971823835 957906991 753576913 398676831 646878570 85890113 515359489 852492191 661831298 322475225 324126291 21202619 477634825 747544190 364678527 383762071 329142970 736947797 83195160 255199837 278852959 386449252 566036171 147073820 87748398 18563398 711354370 918365271 339532075 569669748 190029791 705687478 437953618 233101520 344718800 252996754 544534159 53748855 908324710 112164772 669414089 489865395 174345671 887784927 417054425 695653361 198160729 230402228 949666531 243852598 826382196 612833663 989173525 898350300 420143245 195004606 901872772 289322270 885860974 369486494 27492978 663126159 740422715 638026289 442916490 631312186 874942632 151707865 736705068 247280479 584071697 108279455 191943635 752374073 343123499 678244208 104088360 57784033 121957407 86800522 253574468 377360778 164669286 333520547 682045249 340808733 957306094 72741828 544293095 673177719 38512672 156150272 42846819 411680168 850932976 932301177 106533918 905553972 496222620 704980652 264501516 757774906 463662857 199973257 806211901 61907437 412742387 666012891 797410568 456970864 309678717 960311677 91126338 325329496 53752478 627883545 235109768 982053322 382977249 324670763 539428299 999513248 372654564 9290830 698859444 559138408 528036985 753388891 114103579 555137350 79031273 491484011 831063294 687273658 9922299 575240922 257135540 139986564 849104790 512306725 135980294 565124132 54653676 710402629 560138054 624315907 413621451 510682399 479568877 360363770 174999295 816550789 893976830 376487755 271294727 33353627 490985363 904896055 548040833 373795335 809299155 318986451 174857333 950336045 883260566 320436996 837142851 260821758 432591340 745525949 216073453 208656946 276257736 659898758 740012742 207602343 640401633 323746968 717098176 155048426 289533752 539189614 314633555 186597131 125239764 91901428 588151184 531935317 822034607 50640443 870424648 46480812 103917949 170650031 816649623 223063504 90151644 224129694 868120988 875651091 535356889 624930227 700190347 876428803 348779202 291470548 881855116 823009124 187529297 924896673 187403838 364533607 431292935 718822092 207148480 480873532 955309656 936753752 265335729 639416187 360117862 887259088 98579843 209488799 832497258 24105554 264890912 340258832 84633279 80410945 88111678 7036425 267322583 966795997 549697582 845031647 534543818 242087890 417940221 691633936 874185027 717146161 105319925 765633326 556841623 615580465 263021830 487922702 412415403 284911908 761900961 322936989 810317027 174477878 782944716 75804414 143207859 259019511 957490839 753737628 779962159 577380509 371693481 430797287 464290 86870291 325901596 524208632 518223543 776104062 103756603 132478006 107367899 499841846 492500055 726521598 719044270 747741008 192178207 978343880 416395774 451453795 20407542 392913028 562210312 35686211 719398528 642118486 799684859 294381260 141752023 685349096 777399086 157962246 369389725 450113935 829919093 307086615 640005380 898145660 233005513 701331801 601945674 448034231 114340142 507034313 158895573 237729260 968755909 298357005 728864000 809533152 24730287 62667975 823142787 351666348 102371632 29357740 514726210 894427987 254551756 3515501 431924404 591995077 71285245 220663376 333340035 903455605 874936315 843075528 355062673 987603232 284660716 175903523 814264723 30933523 548755652 363047683 622626082 153315800 738595707 434320523 366520661 220232481 160019473 234692721 129178697 9031098 665883535 612712368 880315555 789033883 593267006 250559980 359816921 203281305 114550710 99841547 249313871 369080733 214662335 443660250 977746360 95359721 741933330 494982155 670055943 838518417 455314899 264120843 468018950 291034212 995858552 719617779 714097028 87103036 883376979 867149243 962711858 760591333 191310159 707945986 662081830 576494583 954681942 708509439 26801365 309649534 268738469 761447451 610001618 851414597 206911635 745216056 635793002 570836564 315125698 229348231 796422373 223798575 801476792 486437698 848052096 934454347 186111580 762142283 766037542 319432307 909685253 283347670 597161162 686615661 946725709 310388634 861160783 920369190 289346514 71425769 910891091 5738845 718705277 509572729 397196832 53683248 639325216 645929266 367371386 291639849 764337096 700484687 451862718 596548688 867064915 854523400 764997824 111980087 76077509 229865950 182131283 248702654 190539700 303308780 812258892 359697945 549515927 400152219 23589591 396032192 535125913 645696353 290257175 161361650 743875421 743141172 902206675 566123225 478862827 128453409 518597112 718968406 836803726 604006251 843455627 161709935 897977698 457044717 423525648 130201597 821619269 611111782 299491355 77473737 224517570 453174875 449492460 941317868 53484301 733778127 804813456 826000921 406994212 505341829 410944236 36502417 201724618 552975683 354276193 930841364 259120532 555331037 946842654 63659326 325259201 745714078 500365313 403639981 783347940 478149031 423373907 845193472 567723067 969523286 486780774 405487638 73617807 46712656 759835990 307125470 297610269 59274350 55305603 211474476 902284383 664293891 107446736 728342529 37832916 62885433 121194671 47554008 490773122 89175792 764237996 113209081 788630311 43198904 405611802 920720373 265360454 406000149 594997309 99031700 210895411 716792080 280621870 180607757 994178486 751439443 74225243 878496021 565849702 756042537 864835004 808098801 907641248 934219536 526771724 208719198 188793234 144344880 885880372 293990087 677574711 789854695 711001294 657828602 785971417 279965714 463874384 872343586 789279996 392572398 537724183 175723725 618149505 158839061 46039643 886604846 483018206 277408107 214057445 659983701 74343169 595643229 678594235 744119546 487313833 669924401 25739472 841031649 417208970 557095832 948192192 159028287 477403528 971659573 462059993 823250656 203165389 136153459 950574826 163714702 332896670 422050528 407136636 714265430 252713991 214184465 362622212 783398330 442162853 512029429 208367198 301569029 50127705 834446165 637584283 304769722 947189710 407202353 237005736 719040160 470755249 646287842 165667784 784108318 167233708 82065829 682711188 307863853 874783279 672672260 385807861 4618377 854098620 116143243 371513616 645837204 499216258 898507831 185841335 769272835 65756006 520057583 94137411 810534078 119637534 537848691 39591593 78145362 345002487 47096780 133923128 971261055 650491726 605360703 185582786 450802795 311803916 995749057 686850843 981513355 585443969 805325264 986224313 400589465 477214373 796499814 825172263 535871448 812353947 61342036 806069251 438986917 614723881 338976698 856956721 161740150 155755672 187701812 677530743 739539265 93466827 707816197 654124127 620954598 242965564 606009228 899011316 609934512 683078516 555444322 811266693 433447823 994169153 593422034 470127149 59612512 490659615 724018653 165582509 603812691 646529916 483190883 938528484 18912405 602534272 263280708 962076112 985363719 706008079 635756154 582632851 528640187 977308131 883924180 583062410 974182524 351481412 512227168 590923546 246250416 236110088 873142881 288433942 240079029 188131207 611510059 695116599 311157892 205696894 734040262 354741601 22556845 241931481 991431529 106815013 345776615 109286614 731842277 171061301 525460483 262074008 873319632 76118367 564927707 468604133 264839694 95629536 262802839 671347127 662890685 284029493 820466580 827536460 896478367 917778971 380244305 133356827 56560602 651755950 789480316 428802926 740076695 531124751 919238653 388617001 732969617 822499028 825644215 309123743 927277548 992420114 449960849 872946572 532446403 158500767 895919665 729623235 742067495 429268898 659563902 182433522 570493409 489878949 593928471 482942812 828148764 678114416 666360085 590316577 249514033 313608350 941172479 147185006 517071216 125612611 474481893 321046355 496000150 766427671 524687476 935942293 160065555 490515702 717627217 387589323 102134382 429573654 311315029 907868592 764947661 502210970 1030099 207927647 322009993 97812621 564120723 223246394 963473250 811213139 983497951 948057698 714633431 787234431 618965080 891956007 485733163 721049511 688402226 443369257 326232017 159066160 831176770 169471071 209205722 616043094 588164988 85357353 868437283 183752927 697528500 419837375 300887564 206853866 478630289 322182784 774113496 682240734 878216396 578030820 362569027 897707701 560295430 893053690 214956740 196243737 294338259 259728233 677143654 964680462 320107993 737924454 63699271 341537365 561619680 591849366 755703275 3025071 27947724 842090398 545796246 626439055 667372994 738711037 745817195 769223349 465914626 419132314 627116332 295736804 248722465 357594629 75763515 234273618 663685122 630896158 124761434 516420792 213276050 192379526 369758851 462956108 844557336 952417216 432600805 16048724 201113877 852647139 102942000 394953958 72452472 148000904 224974994 810719286 406166803 37945840 146426123 191288380 519921687 36532667 463479517 273935191 218346186 488694307 761554081 221816366 396731095 812570318 405462087 769424704 30342903 955429470 830328763 411595517 814883513 333853130 941000578 562830510 570403294 332413948 855932461 829768769 818432698 987177652 596842464 680132390 20473339 871650096 526432993 394384486 903910515 496453081 669793477 54394648 491997511 362452577 534722608 261056107 794482893 513130122 200954894 918116821 652879017 792027688 948961288 224035354 591968151 482597536 954893484 399477553 761664059 940555154 264158056 63997053 153606515 295872285 874974878 416363589 298490711 423147137 583882049 790810549 636488637 936048214 620884325 410135369 793036978 669047718 138845233 573432511 92136080 308887452 355769143 920433631 401301214 172585948 575842633 825239337 295993160 189446547 142676481 599103212 585399786 649008212 848530303 583218495 978365601 687258962 932490635 188585680 897740006 613374719 649384290 42777140 148175344 733406008 613002834 989131991 387482890 977540322 263456306 394932658 154527653 803515385 753048565 945514731 969031833 94016445 308278787 664275426 943237630 515866572 458231235 252618575 837434621 463569288 244629048 232118574 122524513 304423913 488084745 192837848 557731427 810657180 569760133 17449949 629060609 533160299 618821675 66633003 464929150 645603854 9869928 190160335 133923574 845808412 778348277 812935858 972788567 361603564 998970961 989330583 836818182 242213441 921123471 921073988 727238379 469527785 896182964 908479668 884901684 568552202 408327616 222588089 340993464 61282395 7415069 685798866 408197029 985784105 296928838 464897901 189261280 862592047 871579930 92858062 707721904 227486139 48921616 610366713 993141761 746728422 989202817 30667481 143655321 446915121 613273111 415883563 309720702 912662315 76158080 117875802 586929729 616138593 681320792 239064909 714775008 502834102 589234207 181325374 57997986 409035842 802230808 909817513 840870801 613424660 11358629 287941218 214135466 622274408 572686678 955266100 524191438 336541022 627446446 957500051 410556029 865935646 74353158 900711415 767199477 896265491 16479855 197793964 311251281 383428035 618321910 36244538 161366371 280190668 945814184 912922603 776703584 600977979 836609554 637539692 702455099 491596670 505714512 410472637 568669090 29113656 316503345 583452584 636508462 431117917 79073354 585927287 742178155 356061872 217531306 725968211 287965675 751674799 61157394 97718392 386342383 957235886 870290536 363030573 624039200 715135431 22680724 734845914 146416027 369773041 451225931 171921307 152083024 270942952 658993812 343639383 371465870 130611275 119334022 409026093 349794793 691390699 304912177 515385953 177685378 204892856 897603521 919934492 501454570 630567817 951476766 34787955 728117228 358610378 813922242 223664242 324582706 195959220 468322888 170007362 235437437 893301011 728959381 385569360 643687657 348171817 961957263 128270328 918496336 518169114 978626419 120864665 800850719 66366635 846637450 66943543 449491969 734199857 966142031 443719336 276430491 699498924 998071024 722923015 709643321 466733513 267456598 466317193 608702514 184474020 31217264 59554178 39196038 340895837 479285942 778917220 667501466 900661349 166811957 808920026 791197106 75063053 524348188 150283547 815371577 395708917 874818633 576379525 996768925 410345252 753541166 369216356 220826495 558843434 545398629 492638454 993142181 997362995 11382301 416270700 497280944 399447852 785871376 680890819 986030824 451869503 222569016 417113649 910525746 921597516 493492049 376305181 561527389 395322457 206609598 886694102 474724158 997086787 536028393 305839315 874642545 663877334 751720401 409114672 524195064 519522519 321298000 838662801 214256656 745053235 911624186 38790250 894603859 104735661 973837140 588252400 771581997 605676563 461257704 755869007 922420734 685672275 851392101 73629549 622172869 647893751 623959047 674099563 628576710 671288964 537986955 873405501 429278853 451498475 260233744 685939539 383658938 501527692 724311028 466358715 652708381 668027215 733373654 110321007 845379460 507303613 184439730 957611548 592309640 402376767 722694414 593101842 777711931 196077551 796765813 448208687 89173546 856925053 93545005 910850870 214634433 935153829 143762595 286905524 908108117 686202130 971325245 831177577 741018364 258372585 678440625 797700205 484178740 519415400 150015474 565064075 283602660 557544931 31024952 328435869 237051060 352178840 374430658 579087906 360647253 587656148 235726638 329511723 882041174 996618931 457815527 121921261 521590892 214969842 135507828 758233509 640169220 82489872 49309550 966250813 835386896 248248521 625418027 576198474 83035248 908588957 8198967 791670277 44858720 441580770 301440082 140466315 83010546 442770794 420761628 84286288 878368080 864893389 788934857 658597386 888464882 5824748 336319634 993873656 147263151 663429641 355135180 122730305 45765517 67270874 772983317 423381319 202266542 432137710 951917540 950232317 644277576 711898663 213108787 76037333 61902190 7819470 309912493 707135102 953360844 799814923 214005400 198684899 512584125 877936092 740951067 546080354 811566021 377890312 825577946 812720433 908820434 710630220 414354501 371809125 641740970 541666 470520546 460633193 932069770 606420115 546553696 429958821 484317149 377160005 219479828 942376579 60013907 799345179 547213269 766130671 833985072 317205601 184939487 625888108 5872486 423393136 911258103 920612924 284998965 841961113 745778452 691172867 410557432 959228668 382166302 539305998 5850088 354991690 393296577 284079122 285210811 523199748 179966757 568707917 942182590 129308226 244026303 146985586 22326773 490653321 990488422 971765148 255700909 93714253 787289561 858432390 509048846 692892037 633969538 879446104 290498183 34868741 150458350 688662062 818504852 556483300 481354911 224767280 918827883 777152304 239420561 504444221 887234118 225626169 297079058 921466137 351672372 269226917 258579945 359578191 177910303 221944008 631567268 636397249 931288665 180899056 90263753 851072902 182415226 89481527 968608160 31505768 377369294 610205330 521580234 596235890 267196513 580983520 182400013 732394550 740569265 413723246 218090510 405548808 279189533 13336249 297122559 521210316 916690895 864091144 956068343 596647338 679285759 584659150 672967533 999871621 223889826 466499501 459292805 399392909 427364017 387910330 982224174 323183587 819993429 232540170 584424272 864513377 124959585 897192490 242218326 485029106 366606885 318201170 303996045 267311470 188608240 971930696 523230875 933938082 172237359 688858049 793689088 114949850 50969198 22881760 797897245 128830047 916288785 718887539 868990675 15639481 403859380 33604130 116455681 672350448 620436495 426097509 884262136 68213810 3737874 218854297 540344307 478100669 597537817 855910130 641323505 744172461 882192690 985070440 162031652 737754151 345683577 689440352 974513240 609284408 28799360 847911751 942007768 852327462 74736964 16791341 631068082 679207502 905892764 581147880 828663062 481234003 578312360 906844378 4486251 360260259 648682237 953706486 218543986 293133185 169362928 420290478 379355064 743714444 335196752 497382391 972920598 133320571 176655114 403086119 235553871 936590272 667877591 404518225 287089143 122622597 960822693 77252281 578330151 83258384 730069340 305531628 88076928 292951348 270547683 462672711 284493401 390265023 727628998 387101990 126250826 969284964 493275178 874821896 585805711 299539401 257636436 362790634 562022585 107051404 442525246 152598375 60952310 260014835 314668100 641528607 997169655 805290519 318276109 966107394 32912669 693946139 747922319 764166865 48560138 333156591 275073266 235176952 961207366 271538845 853913137 360445435 936155824 672794612 120043936 868504692 273253716 664818454 86920412 617817059 615592099 457079052 995262024 939174682 604192463 66685395 439904537 483178836 146798742 602143935 55251833 987734748 587904112 908501263 719980007 321417313 118342629 359471351 465821064 637704093 151709259 412290244 307166377 923682486 728454784 823186527 203667998 330885093 923271076 378601203 26946172 888320028 84442462 521493832 515343938 410576149 554827972 392318367 661521896 701438702 231185277 68051214 960712172 49937758 848113051 814852960 440583489 852881936 666550608 137753485 268546411 265909846 725239260 760059750 361683821 759264478 539434494 994741168 287374419 810175344 132549840 994931226 294082221 792730445 72006793 333204402 823122004 65730444 524566204 90188420 978349210 735855618 99096340 161143574 468978238 380466558 83878673 3054431 833279326 972323406 850142513 232023451 364070848 715296335 867140207 467133640 341827589 269923994 930988059 288146630 572242499 679206513 114303901 938155319 437253652 528622788 123674125 122383346 275046577 490217803 582847149 922674356 391516556 104126302 243078444 58884601 197960578 709896551 110966501 946389874 24080883 433499669 760328932 366514039 493367199 337507010 661836266 867211502 43943446 42732981 60633482 536982188 407539088 708810950 754780830 892159060 920703015 356684892 426642026 372385582 421287342 967677844 166262037 230593451 726558119 126019365 940325468 716221073 19531256 294536349 771300590 536828709 255830200 417842560 592187564 669955217 27061308 176375502 949779921 723166182 664934840 14671389 838609859 772493326 152715966 259558275 698479542 229855457 317003805 533039756 238780533 644789892 724773128 813782794 301959857 393273262 672373839 699437759 248629322 973568552 49879590 130284243 879824563 546925590 423448517 964844386 869369298 576263240 254521083 697296816 538698757 447546597 337129813 532050674 507160818 582503388 439045706 2193229 449438426 389420223 727125160 55601651 196116115 45972139 730679847 964593521 367060434 670748339 950546966 222029973 491926746 304106120 702586356 524033499 839707136 628587417 557484645 877934865 859560335 459204530 547801799 52857190 444364967 584749976 54355555 819220030 852855483 600601910 406370384 762499006 908954897 435851440 656053239 402818330 527402337 674871504 516296410 294835196 140446582 516167182 974641536 231251574 293949354 880442311 13672902 243138007 827240672 722020131 710588747 998652370 338824327 668983022 306181302 246657209 337847378 77774815 123207963 918584881 438273112 66454516 917337474 418007232 664923549 662998413 209403509 781618972 322556418 307936378 307797735 142785156 531452743 818091317 183838084 766307691 87245434 381394842 567352206 795235772 30822144 117172485 152284931 661729471 782746810 246880035 193259964 97158913 902110882 345537510 430528313 58613667 987539085 786289780 887225343 808605193 816959025 85936548 459498645 774158403 287394140 182095336 854699228 612781375 363496752 727473163 163405950 357290031 790150515 782222795 460708722 238870622 675899504 964819289 570005937 285606289 279704827 294250135 761443873 486914343 873997861 951727059 840119274 959285671 114761738 149326999 754276655 786984535 178672242 289393398 745079171 898732785 932057111 590930749 246096767 883435581 407497685 166268968 520810574 572509758 660111314 675690794 704097548 773275438 990004842 460250112 959154549 211771315 423753534 123079314 980077378 479684820 208610158 240992677 243159834 626972797 453407183 669073791 644566700 945771451 647478363 205406189 290472224 467577926 635165976 802420597 167493679 256138649 537794537 930440437 54689558 626895650 296504331 949691935 23116736 826297087 448085878 451624707 330619186 95730826 770104189 168691138 280536925 624806327 18317382 939863622 624410480 723431414 986081918 106544525 394801670 980635762 259901477 808885573 434662773 128363221 405206232 274397145 320753820 565659244 642620737 563226296 475216090 158343832 261174783 986560941 457077202 742699068 60218551 587317175 323953186 780393551 834566309 818551903 167596263 473279408 532307962 445635031 348417244 862471968 707052316 830660581 477469175 678096420 370719709 346857265 643429457 13851172 528001086 694135973 187520615 74804437 648989382 645077154 436365396 316854391 568729149 310233309 518191539 845001650 208555930 369896344 961680139 19539276 527834831 828824866 50868271 900940255 186071673 203443071 170865974 457388638 277543233 640784070 828635101 871644805 22329844 908688217 600094748 710238158 891853781 692412990 5107627 853288020 940554341 6712301 913302302 1995561 619055273 884875966 52301290 499294986 842971444 328122607 337810433 90514574 639084931 768842446 171742270 429130918 705437636 532910796 302194040 655832664 872515314 569073411 51807227 600977278 938712488 135497208 269440486 714538986 193899834 723089418 154668117 367536334 497781056 97308147 680913279 38332364 620107093 635880199 610225277 438881781 194273979 754485167 641304465 661070227 363638262 315963616 986503044 733971504 12305019 674836145 631982490 702721908 306899265 668948053 55420338 280974173 63524590 717579776 324953785 529712130 123524414 793387853 271605088 492908526 108372837 301600353 252914518 560121208 73418498 753892342 929919617 985215259 854325972 459601984 174179567 642928084 394014620 396777149 225635495 692295440 753466543 560593544 576408295 720100861 116085927 109861472 271865116 826217997 82916800 27298840 955346718 914854142 438158569 345210085 495250565 839440348 321912864 619565085 144767248 378365029 608217802 503478771 808237691 174252768 901233413 155796731 385566249 949246790 802202156 459129859 191357025 775974385 30061548 476768846 627606169 770162496 348738570 468644315 163504803 288296596 217164054 918040270 618702785 487477174 580105602 607658638 105733138 761083597 95190234 559308769 705006530 672296311 187554801 349845211 513786568 237427508 788986679 208156977 152382207 266131932 953656973 400527300 719718817 496341434 244182868 573013998 687068354 736799480 171031836 872210749 116645765 757938970 592935536 176523690 79712016 625805886 529306749 545939572 740555925 485107321 614731041 613376498 858209019 209274845 311083916 42481701 338240747 99342088 387740826 656597140 494261316 15483289 793628637 597496309 39523552 926944765 199263707 818114390 583292059 869836866 222400985 663388641 439942550 877182061 796625515 168101547 809573825 350929795 520780122 250157823 622758297 686867287 390833509 284619701 304327964 251397480 769926217 770492695 537634664 957227651 438770583 641954862 716913105 280706456 779176315 288932098 602674078 729496704 97911783 250848314 612069314 681314393 48653575 142762947 445622100 518785644 353887785 397471684 584545794 825150364 261360835 12376586 782403752 618893440 764137958 779487316 537210022 244799115 340199615 130808997 522129084 590744128 151255510 171739060 388679669 113952186 297614490 820974327 962985466 177358979 356724281 538316745 176982405 240827276 925811035 937148330 275776628 112729361 442578266 712184526 339782226 96184920 15270651 912162708 893144641 590425247 548936035 414533465 361730430 652666675 688358676 183375064 750379067 859097312 564785310 508625332 68819138 222024957 678609472 155180195 317355857 654029020 236989674 155590049 166467112 597631162 597260512 688085776 923953619 215148105 328797881 294987041 518379825 693097612 896177713 5990977 357963926 684814344 484783620 77429048 752739447 472072041 803433859 475687363 564109529 502612197 795565573 668272025 934454772 751962131 961096343 132061 998730405 702308646 185529692 542363184 280865969 917603685 872734222 246945595 799972590 610859572 102694294 94410830 301659223 371733353 851431739 20772760 614284950 790420874 617070567 759107805 929178203 286795858 936299024 219547049 450569675 880669949 600127548 745310059 726833593 771110592 94042643 272497295 961228276 164483481 739664106 789189572 900666909 938178286 258499374 39280803 213582598 528675529 745393569 490621660 471904195 50797846 515398294 7433929 166157489 491142777 433622637 779402033 365061680 559961975 368970950 845123110 787545070 349544016 23986112 922525364 956070602 75321995 317947311 495586490 151015317 904733887 356591295 418435462 315702200 396516859 740529936 302067925 742213252 859119253 266595116 825196048 114905495 835090434 824631695 652347747 952886878 215061062 195737685 497247087 478469440 675026763 846988465 486305353 976865739 251891121 989384973 344654133 267280577 433981805 919737325 916549932 463407854 37870852 478695783 262687702 609746494 329158996 404883303 31413378 523555860 783125515 304090301 898899492 328189612 582902801 996271787 369704295 904714408 194118781 881739950 305652348 98094068 299692056 717796355 673930841 227531443 635822256 350676066 548693650 141661526 34648665 178510263 676127989 23476867 140725130 595615818 469430368 98984941 674920355 195736472 831913397 831889546 332978660 637453308 296964412 41836100 886467143 250472095 163482852 973085382 977135334 106427983 379357834 352758386 575571033 447878265 6323176 229310802 538776426 671268788 872012931 869452620 57823206 562640735 233683027 14107888 649104187 394163186 269948334 206079350 910626027 674727728 259137597 739717039 406122694 870290396 279429555 964607454 509347397 105185910 381055011 317661727 501315860 862119772 900413175 225849290 928947233 644657304 409901947 2559850 668051982 508740871 313671532 597676914 489795782 447741638 748979711 328538680 324996088 131009775 210212996 390493908 831805755 546285523 483267103 294825836 300012170 948040189 262108349 781338657 53682202 530899668 882823721 646741586 981743872 657020260 211168227 825915068 23652353 623451455 797610840 537295691 370295359 840161978 533907306 925834109 592940583 657119269 563216062 289615839 196553911 456551261 801464783 564114279 966230465 860771784 904676341 65062153 226458323 881812429 808530478 137324258 269100198 459002415 155629683 272913726 624676553 97509321 485598549 444741547 856260471 492960427 913427265 230626296 184556655 433123770 536005018 733484400 301903031 354428644 169656962 449214104 70935939 659731837 938200888 861567782 723373971 60489531 46566303 477400626 282428789 342721372 902091371 471478720 958133512 443105691 380848529 642956747 878250520 131166189 928146177 820365422 465106192 436834874 759505590 218326204 542616618 101941380 120902463 572249516 129997816 390825807 568605927 500491283 937171980 538306953 603248073 349226641 935549919 666622717 29450085 104537470 22720120 937891645 557802475 147338009 533379297 283424282 518408199 867509121 219467895 212115590 165401024 145227470 954144012 632805718 251979845 615614687 68148538 563146142 330410163 915259218 21369978 402969341 895904475 253896812 779852494 74438568 193782970 993342072 563660030 797251495 636504898 307042369 141107594 906650711 316928218 75718172 409576129 846380366 488492589 944900539 269673035 446569160 725422105 392792200 354582418 619225998 936907992 931172354 719935448 99277917 489569658 715801123 526109789 109131799 359215730 150600636 467758500 351746469 837680114 346327006 727294531 821273693 18573492 253686860 139221379 388575623 251092618 959749482 753431242 305304105 116321671 805804883 26536085 780709619 237398189 931182676 938305288 14310663 657854130 370840764 291500851 838738416 344523272 242289826 558879107 745212438 406549939 783532800 197991657 122351709 475808772 765770133 17017567 342399073 115711149 613512807 835020836 875277519 842987344 398930405 769486781 389978679 974410715 656510230 37598871 113852073 361509910 252872465 826769875 311884305 413859564 890154891 385186562 124028471 37313165 865151764 294753615 288044597 350419440 642859628 903126284 221177257 613794797 783229463 273053719 169735570 274271604 986391099 706616437 606324988 343426886 223688537 419397242 677264650 122186610 717300914 197711552 661213927 560160280 503493837 679815270 996678970 395048496 235401955 441674857 666617183 735153674 951458029 514910562 66507632 637195173 234094132 551254703 941826555 193639404 896377414 569006261 145851894 533863659 567756701 992465905 88499124 432327825 584238784 429095079 967265087 774294776 355809521 45572672 257308371 98400858 433209163 641817887 746292416 116257539 167420609 255299202 806752043 390498344 271324835 686791224 474707452 25416094 892615865 978911083 281632929 680549278 762744051 398792078 329950740 750671367 838537751 574944893 361598906 587356899 987201682 562081263 417675237 796503772 705626489 489592022 12328233 831499903 556905852 399636854 850844510 803444175 492557138 257477060 842969542 59528135 738211304 353162004 718363127 611308640 296155236 821273844 606103419 170164345 136917340 459492712 436529414 614455089 347793964 930891441 69472492 899469242 791158742 461452708 688635537 578088625 910996885 474757354 983504540 437700381 404140419 354903369 993415716 19998061 821927966 451148949 448343946 537064503 735615025 53936140 659061808 67402197 603799052 548584302 25783908 815274338 216418780 91700252 179076046 661242505 194405801 970919070 688021294 390873927 664774092 424485868 805807529 664788165 926077523 879752595 323064323 308369492 502293972 441704063 864721366 985503918 181384415 974412332 820557378 630688151 29803046 876954985 138864117 8410984 393204836 29454404 106832572 348773206 228514263 833333529 38246324 766681977 74500649 802495155 96997290 49174636 776557604 254037227 852370290 396829103 580332892 154508622 488270670 275041320 205807298 535828847 876923642 936516847 350367010 585888667 878822859 340334591 28604616 144510609 743279073 887857660 520294886 406389376 195779564 804377133 808393191 450010732 108783645 149216952 322125298 909842994 341221756 601299487 570121458 528381751 321368640 986814462 76721208 8942724 27282270 107415707 150599710 181820814 54205426 716624210 967505873 386123851 806424173 358044028 836033806 540846995 79252485 833620313 955479371 57585041 609863294 536625648 494387734 868951358 548699207 686751485 348298031 716729970 758157263 712860849 476373900 933771229 852225501 776325650 729850211 688766897 970104346 66400350 668106661 861150746 755613102 607519898 207832032 149617708 579425154 108252613 856330577 688291546 846727974 863993148 683570937 243942861 30929478 633686787 669085164 691105411 946454381 83113641 218971928 599613418 459873751 502814354 883461274 49180401 165377298 161051964 608116278 755257993 923051417 465497202 674396489 125265920 192844253 638258069 891132776 867298012 304610120 601759869 61664946 953939367 806492256 995482577 866507198 302214627 945895588 748051961 723861845 525860610 37113375 453870086 475149958 671693409 93108394 132992783 479928758 692653331 346888843 746355888 512755956 257323007 728664390 699487433 702015649 237078583 722807224 495580610 557063254 723927023 37712322 968154653 829945147 814839179 319473266 620504120 587289192 96420116 360725473 334124228 505903141 965040092 756060524 624561048 932898836 938792471 761633001 268148524 860189419 607776980 587301382 97237260 612877335 94157577 994611298 530169236 80179113 859124303 6375060 778979098 82123224 453173754 411396126 979996125 436262116 53756651 398763114 458495733 797481598 894267115 193993168 347343169 753027695 785046885 325398508 178977503 654737952 71907877 231120724 427839647 849516160 760617650 201267842 266540077 77332231 545392272 688432444 952136673 336411166 545143809 887621634 458053087 799250324 722394464 931355118 805675276 926636893 106454797 916551794 617902291 234184774 816877447 809779013 890270371 384141663 628308480 157254408 496181419 342358050 689335041 368585582 739026967 226807405 562578316 180145844 15802097 218192757 231091519 22215388 867569422 636920886 121355915 441445001 864806938 176751337 916363170 93101642 563035003 516251179 552679827 500295432 791170976 60362033 451308712 417935112 134275480 615216175 706743421 39116615 35185056 463815981 79270001 308628643 873111369 470230004 943786278 984242724 363517185 689423446 22056738 514986432 254377006 324661036 127514333 189753914 577508975 27972376 420710619 258000568 182268556 766478856 526319725 434519165 221806736 540919596 945254720 597942502 951552290 948975404 945442779 214266560 530264400 941921810 864158518 588470141 720328079 396755796 807695173 278156151 958341124 816341837 687208898 338349557 850295985 729015504 776707459 227270050 10303292 366614534 705296641 890945854 60754133 470695723 629292012 332631432 716299653 258301543 42807519 695557973 45173247 415244618 809543760 919000194 704396235 543343137 100577423 52499590 559905906 666961466 911009157 167135630 633301842 776424907 157231402 245116249 753488108 571885974 655279276 251853148 975780342 540105031 884532529 280838777 53371290 201042465 615949273 779477273 957243767 891853365 908933775 235794483 514005736 372286975 891392580 757705654 243473446 121846541 637246136 697029862 490118581 753883203 394123394 929506886 112019155 224352978 542795209 321030894 217379904 591252240 581457059 878706697 474033971 141310578 219091597 243284779 291635759 352389907 773470907 981701623 382599651 465329570 734550322 65833494 870978270 709295795 551564202 957944859 627010456 970035073 217679951 780596061 287267060 580231563 676261700 755312593 948272009 614300944 588163818 879417744 412071439 486838000 741737155 489016965 618681433 478065096 966936656 473540605 228790229 937870356 150401001 698742036 351094190 878162799 838504862 528968113 369665730 881822704 96475580 314130593 851242991 977592494 894496808 374280039 114989087 544099325 137688816 631311055 53556937 333226322 493231012 3788675 254045699 700071452 556190943 101489945 436184640 682837723 621741907 703361396 303098185 951995417 627302784 572389039 417890160 216694803 696998958 264786201 890476219 707309418 245449291 822517825 285586800 59660455 542916832 454673028 532956004 306179727 391850408 402058554 321646273 311077784 789341132 767034884 427720622 665513896 823873877 354125628 670802789 433162279 584986969 794741698 770524526 880609094 221780644 719866015 713582883 750671975 207950098 470104600 586987683 147465322 855241520 997056502 916847228 872101092 332574047 136500387 812077520 355016911 703423638 849331304 146667661 226178674 940204524 836947803 876990927 780141837 585902290 548219346 626789431 210974454 288617938 392711816 509818275 295569249 91000723 527707963 604736850 19336011 572323756 152970597 33796166 599520033 160653757 60069483 524572112 336583655 146976626 733422286 599093176 911529966 117563969 151884230 354699353 790216454 409943522 228147345 126050378 288325865 64128166 988469505 980230222 233258593 974126058 712277808 26731874 822705666 771472561 877192773 993752311 653118591 40881701 628366922 648203606 107383167 419460824 167049315 766208098 228523961 269550480 601037835 894597252 723911927 553524339 857196427 162715416 535837557 835264726 405790939 400242595 159805051 66517265 565019608 496517311 710494989 779821929 614683191 207297872 7518038 494262389 34673468 210807479 42502327 151231174 887067557 624227233 332032468 817623112 481530088 274198881 77312593 66658775 76144105 801325479 515107572 206885964 165682019 889544425 106415692 760320789 565732040 295028439 720368617 858408156 234667219 425808123 697802392 143839943 678513773 971108300 362157184 844612739 308011534 603809803 999321568 345133440 544001337 625132764 363720634 315125201 506782696 175224285 726422385 862261096 578083985 477208340 993187957 269761918 561500461 582922745 565774163 105707159 459697857 556874496 564332603 896257219 877788069 848669319 581730629 122708789 678208885 873570147 212754731 283747001 805032226 510907542 640647772 449996731 284376339 275307603 620819440 4257762 262779793 885543764 157279508 370499422 610342825 101304549 981295237 168937655 542614313 286828603 181011374 521858776 12541861 891496499 179238569 427979476 978692333 876181186 893320142 630234241 930948075 875004720 454406635 438409900 361596915 550842413 865727717 156229153 26714094 385543 700809030 391798539 67625478 239270449 83075207 562261808 680127932 292015042 871687929 559318128 230228529 488963288 573475745 569413427 301241263 612219509 954784346 192725281 201026319 664983631 880990373 825043260 32021894 262711371 140472185 86337173 374869571 433670486 58453815 93303962 880704105 825602150 122961088 897358103 879322308 405642723 971485630 288826429 718807503 279102106 836223929 576316809 889950944 143604345 737090501 562921983 900126249 793320697 125241921 623334674 745348324 382582360 750768175 199408882 113500344 27089406 778294824 28854319 824402959 576694809 616829217 589351337 445751847 432090985 687480048 199272169 786224605 766588918 911457002 14250053 962972179 389196253 656721319 871539283 202620991 746870165 883067461 920653075 838272435 942927241 184727625 851083424 10493073 656194703 566273759 172447635 700248897 177208576 802225726 811509903 330444059 28304540 810721563 834810838 314133011 3026312 789864820 69261826 98267930 345698090 43329612 27034907 402500710 323035750 230413482 63857049 334978354 117727677 713666569 448268539 631560956 305134265 65224475 615604287 814070273 820022465 966794353 612240393 159985993 7009684 724725431 338936604 374457315 410198070 753528567 406054183 830757874 652249936 876063575 319505489 377310330 415284709 882520849 956291455 474921790 716455640 32675467 608228205 204470629 668528197 983041780 603505696 553871953 215771946 795245932 964033316 665239166 20657751 760181652 516387536 311048835 39651262 199047688 171186362 323825439 103445730 77434151 678276599 224409605 721201429 472315929 880752924 853704078 754444820 953960712 934372531 477855213 574303096 610375530 839203279 598116722 524257236 124802041 861155185 442905269 428812949 564115314 409847037 26321310 267795709 155017794 318838422 855622028 949956174 63547856 494088362 436275424 998654866 65120021 320937101 363902172 808446771 685018163 735092967 902779608 244959325 157056086 556111768 92866711 546565335 142426646 174036659 516733311 514659104 559270476 667050356 804294243 640343025 966480753 681503095 307504260 543816725 618337600 464200323 745868892 856553382 79793617 289200776 923244566 815311461 536153159 145448531 969682667 324141617 128191472 457639922 100830488 88665794 81917807 464678425 121891761 651182145 307520380 783617276 932233992 328457354 859488905 57242629 514203516 610034518 369766761 576841911 156735104 13417388 931579793 414931065 262658865 970104554 775025857 396657634 462939898 670422463 853253792 851715767 660069952 927777370 99442881 735911938 970784237 991616965 60936539 890869188 184017180 581662391 514459272 873905964 883834315 673998020 226716916 409771356 346714794 982935046 446977566 671901697 270047684 202349315 172076527 160949083 841196262 423643327 368337410 543907825 505363033 401021259 969288331 782220706 407492051 789990944 310202937 806896856 465017402 49754652 174202898 423930053 103295940 176636282 226857249 263609932 990716070 567920991 524548973 101107152 152392444 351745432 712920444 574212212 739485828 129154094 577419035 567103325 693064500 8094423 30126173 860126308 113875122 555256717 386234346 292289175 821645995 938487140 764521315 147973328 283607933 527149756 584840706 603363389 523180006 186379612 499711366 701390078 225528713 93886363 463404555 801496776 541677311 258786842 997497868 944007776 840600834 264647174 661423007 426472573 821547702 871763989 434661731 555077270 124988320 579141603 578229142 436401536 607499682 558469391 138274018 320460810 604937774 884100649 16066961 164016474 399959812 736698010 875248745 244069387 275023354 744949687 663137908 704199556 897034628 30775375 197805041 826995803 918699240 841446627 189968918 119009587 626980765 392111850 725182892 292236814 239517691 221801791 771239725 468459405 510411031 604712571 415870930 416689281 881415528 794587665 718219755 653147747 521756809 949444146 692772759 236544724 551280046 935130784 677078363 716680358 150915576 264494710 695643952 358417266 405552526 561544383 844816007 771444952 564654822 705416101 554871931 968796855 147492158 335735662 719188775 981106166 144522300 302136015 914343008 893043204 262651205 228952935 199926660 411701414 883420019 488278420 623436119 501696394 706042046 66919125 345579860 232562424 38090525 864218007 371364045 624521447 181422738 454021971 6044113 136926762 975918934 479870150 125269697 514958461 900393291 53825887 592338998 482764927 865033771 401251665 589744261 919190915 848759817 838004878 224244643 776101821 48090707 454762559 401731670 399894488 398163971 237589357 694173755 89360771 441767050 444697759 574215922 115284892 135115360 871680749 895719758 695586357 944097778 842744368 490579774 407079853 455588574 416414988 770673006 62730732 28181609 920792668 924472490 444567096 270743759 56791266 404594445 87914094 360635224 264169046 923737936 681681371 138121108 174752923 293476120 33701465 317943875 586452004 287164436 149448822 132379549 107888481 924354667 448139376 106249116 609767097 118268803 235737152 727800904 829846190 802375440 250108471 808627356 832277199 695415097 858102409 304510121 589903646 712536424 958209226 872745170 604807420 694143237 609216075 790994201 749976267 2328039 170403854 915212536 350087141 462030982 669956344 696448542 442781002 161396546 444370286 368044544 43487700 740145267 885472787 79805784 673222388 383643969 183815455 864559360 313636252 193600958 27443956 863733994 279527937 127706109 927125563 155179819 809355666 416505971 652462277 201544387 246162510 415704213 881359169 633370615 106028485 690930240 435839378 239739746 772283756 683223037 229156624 362522169 896175779 308183615 15465555 107732508 151242872 462671152 967470850 608349578 606350325 730324304 23809501 175133547 988854046 954389854 35442164 841273598 51670786 789750547 596856597 313236043 759419846 490303116 814060053 16494685 647052071 174555866 371328158 482174412 951374695 81543869 147101790 431468734 31161737 428804452 890522003 106538464 651786323 671376667 88719527 137098293 718496444 936278755 366828491 100699037 169936803 788893817 9179253 170077672 982888599 223705281 652794570 678250201 261285240 223376082 915065812 828283877 921420752 486435974 357022705 544475411 997168337 781344821 154806711 625862957 656485463 178267400 373130616 798460296 477153348 992973571 630697652 919381611 671057313 245670076 134922817 510966600 618611141 434397319 520473399 630264509 55069550 799678019 914464499 417368143 471669666 570435657 700569800 712718627 936329177 294237081 820939675 218456888 819089880 751039103 9230166 302551055 878523961 479290461 162734709 77247914 544439545 606749466 24598193 885436756 265241904 807764872 976413549 238792399 492020714 191511156 980765001 778431111 46629810 382332658 501116896 163124520 894099002 854771376 443400933 938297490 417777123 436841495 219784231 937739690 927261310 23202548 260670205 378682664 116897851 93308319 619364841 219739644 400797403 922877314 77618530 445944608 234889247 923517701 212867518 249163628 205525605 289126863 389188767 682715898 688691363 609766983 20623835 616959917 442860513 854193180 124493885 376327092 666766138 514268063 130398469 776898805 507282491 413798778 24201464 506306738 6240888 934106168 9518265 650721043 67126689 664241577 949865566 617465720 144012476 259519504 865538973 488469182 164974379 842507115 197936348 672067746 165278731 852696750 509652279 614932673 622382429 308965356 707083901 886650063 434315825 111704782 334312036 511653546 257189267 528731744 941536658 542452930 91934892 701099983 623459285 944943861 603547228 659706296 860678787 167112065 508309720 618167618 70952468 286295233 177500430 267583302 952610336 332373721 336880172 774520918 538165519 125096900 681278817 190035840 815127088 421413158 244565200 705854479 708903730 897896333 71730581 902476321 417468859 269745313 271515790 34270004 112581111 149742329 424434025 749247591 313499537 288775968 676337655 409160999 833237247 29351810 720251913 952462272 470348919 362979051 77592608 659954196 595584643 823167153 155941555 309818123 162784318 697776999 873161264 146663924 749915956 360290159 709362613 688004716 807052367 511950524 323958840 416755541 189245040 879444846 123354203 869575666 238772304 347410730 8465299 15631740 958959675 411935397 316320083 333266573 523703591 545708543 595549470 272573230 670166797 475434296 603532209 314597088 967950380 108192982 947060307 522511214 874375777 183800879 471353099 114457655 380559973 858891167 434544391 9769641 571411613 26076617 709086553 913576951 466531230 732828322 728988474 92673498 660327917 441204072 428171011 756932695 784294321 49412151 991977603 725215700 783664710 313034128 573945981 357406022 48805368 606504343 102777035 153818296 79679331 240194445 174998990 594082496 488956495 376397038 455376712 817451377 612296453 890905506 431497486 209614712 985016710 979291953 92146746 867078507 590133970 790475800 775604836 811532711 295165075 703770286 786576990 756132231 977868093 819290299 326959888 589263313 336041609 855374193 766529211 993102329 246917590 931675402 739549263 832990575 267412409 984247010 416767646 29603917 321515293 754321423 741211143 533469116 547067404 533201995 196586270 446772499 907481840 858354248 821352209 588037844 532578635 876172587 565630801 801264231 653436209 39985876 711411578 849080378 261544679 397232769 769836941 919105020 756786579 446588935 874840694 69280287 874078681 10302309 266395675 170089133 512577049 485550282 59852746 48490475 939662922 662937811 155126537 279885804 610153087 113590518 622178441 435198051 89059628 432826013 325614370 564745196 391048675 79871075 459946799 472165237 92134435 366784576 156118675 185638328 444349667 266270492 855426604 641097894 686300190 655377879 72740917 414059966 964571226 572435417 229176105 801809137 905023489 328021003 584400819 824883042 353528846 713950026 659388642 687616211 442420496 931325481 65712268 379150718 717163231 187034584 360595506 554814428 571728784 901532243 938444107 26234231 739700311 229237365 292061953 780510414 887876196 117873914 872402378 641218260 93872129 479806738 381343878 143231186 264959319 969275222 88080626 472548129 778633856 746909719 744057837 180323227 336632450 384072246 332997308 866663701 247185107 400203080 863754479 234724853 589667955 595109376 667975356 341360087 652730843 869515503 780169780 968086848 334768696 261177456 543995397 852809993 70373413 626021639 107392357 407546944 689876670 820771786 375710057 634517193 116200802 500224055 524224140 453923014 919354185 405576012 329560206 556687111 963492994 518979533 648845651 952649262 318597153 489196984 176990115 693895302 88279410 974433332 229915989 459548221 263743384 134191744 946370319 738866642 501115463 927577939 36614287 928915029 387241180 619411684 239048836 330048747 635651566 558901729 919137248 51530008 84721560 814789181 674664007 517193988 874072540 110525300 957120443 579384852 32437012 5175297 479448060 201624587 839889896 282399522 35439119 653959479 21558414 208760876 608173925 905502315 565527111 659434910 506743683 558489610 608249191 605513698 284314365 882411219 616425729 605648625 536104174 845336717 875878500 688349994 173447830 70493683 381781141 284907965 518103020 823771581 96205351 738072792 887599335 379181441 76552772 613814811 367187016 138225651 520687319 457657607 730755081 841501342 422844408 657361389 143347608 996480961 216963706 188182965 94749519 390972002 220966062 352425829 754146991 784736487 312011793 100793220 325411720 127763218 201051048 620966326 290233557 995904061 304876858 387205577 724064836 777964776 777406629 438336449 544233958 506687435 137836605 598773825 965531987 739459203 891056871 367871637 486758613 348276913 547835743 860904793 965543578 599784455 28503910 929274462 85746044 440115248 168451387 205814417 810542579 434881369 913543006 920936121 237543193 824586196 386335473 296850172 790070005 25085819 53951921 36606334 647133584 388499773 897425100 91840087 723283295 688507793 625739788 931370242 659669905 450531464 704111934 880517163 427855344 37314556 711090862 953078439 382003976 138899938 292217791 528429310 385591097 676035951 508391803 79694136 509824693 295824222 707188350 176031502 304516171 61889410 528482199 329505481 611373366 84968130 495936452 226291815 80491492 62069312 887701925 151280126 649806914 256481101 918852130 566816824 734156353 239260029 852223381 192848423 307159304 160537422 719615893 536874234 124229925 237373902 983269565 110571034 219135316 70466435 324295978 515431652 448475553 913172671 905663661 397431812 245520309 941488968 450755197 625870956 199154437 819423201 406948101 541729946 548263109 696008907 505038511 271287443 759788736 776212138 527738816 5942735 4426096 540184305 111003655 857574828 249934871 627928636 800757118 254822650 108298352 981851050 14148754 167865911 648222940 806214187 754510416 464557443 419384184 779181426 947936922 432118745 738244963 315839229 272989359 99288350 978132599 541489221 118040705 602217394 782724989 824935613 801219803 250051715 120478831 594469245 912563446 502276728 349438915 196562416 402646837 182992287 703081532 657737208 154619662 716726737 936885596 170050728 659617518 849672648 874073605 694058008 383865417 838815429 308822458 27927332 736781758 62373286 627867502 719811134 363493726 830189807 300236409 939675167 336781769 44362788 498958936 561292587 971315790 383487785 945424983 430975546 888366883 400355825 387598682 899814403 578168466 826503017 529338161 189825947 824261153 935299090 765709403 331462798 77964015 423218446 61415461 368797716 718252001 752393738 795785140 126180080 902929571 860839430 339023820 439370408 991500044 290437237 992120814 845416975 986551212 817281754 238185052 353965461 168528509 750052732 672674751 615783596 47978273 795910751 367484242 584615454 264319140 896059145 261134730 505857360 376919814 516205799 672963046 83066535 662919357 588887602 895826617 690726361 537577731 634644914 249088193 215833211 997485722 411375106 318475818 814170651 24118476 952089861 778658890 542595816 142201492 257185070 599800374 860667259 878976905 423097794 755525071 170340075 880731342 246145819 745862600 242963044 250337966 382152512 485386903 95197394 109189830 722154290 708834255 976696299 2377055 450469204 623550917 830510535 424555123 918354426 845909534 772221058 87618689 25500342 542395706 13666900 106707796 886333406 96698282 756105463 541951793 345149858 828767540 233694828 719542854 303581913 224178835 64684103 37121749 208120979 195402539 558867240 785687695 339877943 521664330 276753118 884481206 719242892 564785411 496336451 668838057 257844453 122405559 662294979 59587491 160603200 239477920 743192968 215645100 610112907 67085287 873250718 497043910 263479446 102822984 914904752 609035398 224066265 756005067 198804334 590754280 771772078 24584369 5500112 259648979 268905718 414187373 674153825 204898603 320095341 325867867 143741013 955316538 850401617 552271991 463864955 706084188 964414163 190819380 933247106 525076401 122394752 442246102 435302666 731177548 858689681 139244734 989783133 654045073 646717376 562103067 884112436 757864309 606488150 370929802 201828388 709497450 56489225 936110081 120164498 862589272 172259254 748689149 653990256 268918047 488347866 756093564 746463357 36544542 83826357 448501864 485532648 689421043 647814100 703779567 81175240 673191850 116895831 672728972 502944773 822319004 27564487 79063210 526541547 395748034 297614612 774985572 449574940 157585030 245244426 165258286 518802865 69445957 63437560 527947762 858348560 74244112 375429713 905596111 148519341 179130316 46209505 869567302 221568204 990593681 484504638 627888943 614032093 860911952 90994217 177246969 650455136 8932098 446688567 563829927 451865507 364058738 395096989 963635858 916249756 631500112 404699179 470340697 471225445 947934011 263886051 935700645 905787883 594509363 132767690 903067533 509846584 843559637 207771703 505220196 392421854 238558692 187877757 475032018 501483309 275817978 245453633 38271691 806776181 484651662 7725566 676343748 197254794 685850913 123979273 587797100 14456501 37178163 891581886 858431129 145120841 678034288 213281581 469574144 622232425 970059746 445945579 26275017 545418319 357224322 431286231 608567982 605102635 129319077 293011467 903761048 419981809 462434497 38996022 416651979 952697959 484949392 901742608 855977634 769741007 194335081 344940387 618763421 362964963 761997883 90630627 908094648 778522522 856776120 703921301 560784071 272446104 24244347 533270062 690212342 450325743 253865110 643786794 436749418 107398770 483593399 401466976 297367004 385453937 206916248 933209748 168999666 698443524 562577513 817795327 313697464 58273653 688390613 101462784 683707170 958830007 800027681 771015947 70290969 593047389 129879678 462629219 580251571 320993576 447209576 497163697 891143010 319171591 320790300 817592067 170061838 494994685 20853951 850208036 468680876 898186679 216391547 474828465 997662929 381280069 905263854 474691876 984584215 704300159 543471612 923885870 948968072 985274215 37230182 216610837 34543636 821928807 656044148 144030085 251174737 675421611 507336987 363891715 664769602 254523444 966744178 546310919 953819607 188948955 256984017 114386948 410524865 365366414 385712797 48129104 659182425 531407641 829491752 563677238 713935660 917317538 112393650 363471994 426566357 659931479 248715520 107653770 41167039 356759354 440495900 199032763 668142026 547050097 488443222 243184800 448479709 652133737 517006573 729909779 655937878 457426625 702910657 406431940 234621427 464474337 21459438 551244517 523384921 357328960 807273030 469346587 11167143 435985478 619989698 720078352 762492868 586902334 940285176 771280170 496915392 936817543 298997798 49806287 81865888 908668898 491481146 463264500 494104840 965214464 916360439 11223728 923476973 489312229 188543168 307604659 892047796 355803853 323266807 619635415 130412379 294397642 663589910 783788546 898140594 378002896 172726654 89782710 696839306 316137188 672561326 410903796 667150498 530766350 211122886 29356664 135159229 209374608 596852266 413625176 894082932 771777155 52367097 823116177 981530617 338933122 9595531 318490274 624322353 68022446 363076378 314691573 253514887 301756886 745865155 137751931 373856295 111481781 298091922 713306747 52309570 500736259 205617238 265352563 716194110 9716175 919879438 92364209 932544041 967917780 475168833 74491115 155092876 647087677 68567835 615369118 308464074 636681286 342037075 423743675 29494814 776389220 532412638 766727257 820537208 138578328 26714151 327290797 584382316 468238223 297609109 383522873 452279569 821202426 587173950 356917586 643971691 137869150 718001032 567273108 496156766 891639176 242638479 928919583 66291691 424000983 839431522 432041225 792373098 606404733 408037884 711910964 489165818 644561181 114069771 500347627 667037041 850143171 214053764 209690398 161935757 209189124 431277755 922754087 637490764 848790702 343476132 985991757 810422255 350091183 298009221 447113356 441012488 181663712 349932520 910158823 827511725 527865517 723186238 600257736 607465635 667824523 610105190 987873870 121157944 650034820 495504108 219188823 458194224 875834869 848123232 810499829 933714818 929268277 608689421 88972842 692152993 997906022 879865682 609047137 685872545 577921012 900286104 686243366 228520452 628602525 795117523 7744387 521519428 928651784 421947033 463108014 777790616 674601330 20931240 908162333 198787354 947018917 604144004 941631321 840410487 503252248 359557903 900652177 678493261 45528870 822653808 531392728 122065693 860751493 695092476 852087361 360296493 476571340 698039709 355130922 286990988 652299906 944682184 110288952 264597327 305556317 41713504 970148442 101448769 646226215 609455401 28305034 47416762 603147116 110103901 985676716 357089652 244120345 832196426 286917365 685089412 58115564 658734394 217297188 448037151 253663058 208246289 732345401 720375634 292023512 289147468 570250007 993155602 148406384 943628769 384598786 625443464 548134731 558121781 193300851 402731698 120428114 536035002 366118220 965335689 953238256 315280401 780015218 85284953 276677735 64463181 683130331 444558514 846842418 176291258 119218090 553318378 792894514 225063902 806207398 608556674 291268388 454275560 705995622 217953613 179354908 415984330 124764811 245913362 318245483 594543008 351264218 471403306 882954558 965521740 656133351 670153314 669650236 633958523 280441926 890165874 865738156 873344113 211595948 48861946 42993032 373164714 977030877 758378905 885628783 714996710 85440130 646464869 645907221 727242126 555502222 311362613 460775931 465624330 523595214 447076259 431005950 904926191 552368722 126041814 126848330 88702940 33710789 8133459 441120023 761420619 815804306 272079598 892673181 875589836 894345209 718140517 318464668 947155384 949933660 466208967 198660816 776096368 980887865 927437403 857861285 232933940 346206429 796415193 519276649 498372173 24485358 920029810 878603133 667233477 2345577 634148145 809611858 511393519 880030237 149012102 174424644 331620366 341410812 75578413 370703529 753236306 606995582 434599142 513162078 391635146 7632312 579538423 743931838 354162787 680907331 605980072 288871449 330007804 415094635 856377202 836862970 176845153 802993153 12325690 223825685 134120337 631320847 623934125 43185570 414307987 244370975 578119527 772988621 523130303 813562592 247544687 290498623 635765994 466639448 445012594 858996614 425362702 35170038 98387529 161361092 493602702 582158227 805860356 877018680 266846477 832166268 727135874 292830761 867699884 655891039 178273280 728487051 119671972 871736156 177147512 884102345 877382338 710843876 598481574 474579648 515594901 212511532 654820382 962835973 221770877 363077882 21107226 147755354 758441001 52139125 158595890 89832563 323549854 110510425 468342121 440054960 534527643 814145540 442838322 394054244 166928519 456000415 658948406 32015728 561901569 327307690 390960117 797055967 289371651 112650104 744449786 449272101 358354978 905753093 123303532 229608381 703572650 487486653 444401800 955084938 102574415 233489199 599186038 14696345 791175107 707004127 97324745 233165285 487945731 195577190 752869168 897509712 208998653 150022912 571364197 333901060 836184681 885938257 426612158 926560399 797424778 270111000 856783446 807533434 997861761 262124549 425089691 348980934 834293448 572632078 144686206 503371521 165511516 699502854 481048022 62237161 967867978 135972529 44830124 532721805 1671598 853110263 803678954 364606222 158158264 838503146 619068411 548242072 984467851 653076391 556956843 102657931 899076594 161638420 187058181 939610102 448299706 616943633 618684724 440198432 819911545 319037754 146289070 17286509 416939479 22159810 147468274 208757662 469727639 621814445 51773958 693235363 68560675 44456186 193946404 323044204 464729018 798240380 275134581 302098163 431203674 980188558 663223248 444520285 77913063 94442418 822748136 881071654 293100628 936162891 554285526 742845678 734551816 719081528 796714795 717933780 56804089 800488103 416067897 533407112 633171675 303012245 627194267 154256612 925564016 931516526 118306501 641566511 123397443 342253607 562545789 619073224 933370561 273762994 838757449 989346387 310484250 904000376 168191738 380012353 810019317 580499626 571421585 385074934 313968987 149204110 19470075 321064482 831023390 611554690 552560693 251702188 500155604 719320498 998404266 242473198 492637833 986172501 71702746 115407347 106167331 15018972 172281289 842582548 979984431 146722352 882980182 963354774 895959337 696423948 610410258 766157139 656776181 134896275 891970071 778639292 572500392 795222637 852141713 462093197 814199454 644418783 859465578 993964748 221382599 691191519 708576668 429336037 620528004 606231153 751227829 760640930 902204973 458274585 321631958 289101954 797294746 833259814 267192468 536568210 490015457 679829153 865631243 725437095 702127396 831155467 849690272 32208691 789478692 606043450 890765734 434847708 649037742 755302143 498899566 518598779 65495063 198251733 363161508 774563602 186366249 441156997 210732358 472536350 185065776 731399591 621901496 413803259 417567528 275515126 919974807 884327107 905852983 590189659 943750037 952887328 245082874 77495348 375348948 626381956 677063613 877057706 963909298 825519784 9471084 177964555 894015840 807456902 706832213 963213452 276512375 214616795 52972846 907501582 114136229 338537386 642013084 197597744 284663146 89094461 99723607 473009561 904812175 358995098 987758500 560549099 36359105 361586469 642582822 714225250 690758944 932601776 555298449 155319166 524070635 492623182 596748199 924119304 316238591 655321345 413072994 265017752 997263694 173001821 657802822 355669531 427458088 296810651 469253893 589940390 464048754 316924720 738569581 222160923 27794839 195620953 538416808 471424588 5338394 264548623 223787931 804578146 267461177 34575434 111799156 19794763 796997236 955475202 70525728 439172513 415555369 286406779 269145892 312231493 505977233 357805712 225908068 854179620 870683696 28767623 175381678 444064068 826707504 753104457 724999048 901883215 834396371 567229809 550237440 248935342 768862586 433831380 980508002 935891837 615265694 225641707 119865006 575938833 119059742 490497898 939723965 238559279 354569191 444391438 873583472 781635381 347098417 555697989 367744206 564887523 719076076 790161732 224254295 889149460 474333167 435798379 763238634 359132935 50780807 330377447 485055878 146888272 758220447 412431276 215403962 263978721 842579733 372036030 533639214 648743506 386618368 260776394 998863914 837070378 364975326 793402514 790372071 541904579 940034067 419295371 254591469 263845491 473172929 424848440 376679769 477811248 444520404 583703823 509369750 779386445 213210581 325162434 143177873 638129126 840230774 791461757 763295428 426317071 475531339 969454332 169806182 414973165 41623793 571363342 564956723 244613966 122248274 508495351 968766149 823937987 914222106 530387753 3294270 66471356 503145614 804265938 828752813 112317102 320597255 827251574 256459682 61862956 804509234 577183351 548102387 480202425 23924844 590545303 690140825 891302250 791891687 565425228 449043023 570733922 739146198 141549864 443911605 182209955 451026544 955665989 606805401 340977284 544223251 39501759 700648647 898138443 92607575 618603808 159682033 213276369 589585691 280874785 25686513 857399040 680692629 598480158 909666042 276173835 894428554 749936158 92746896 188057300 502193076 108138152 636826404 399801608 250291564 928582584 315732633 513691950 865370153 117043744 366930036 198342277 288563335 148774276 851226492 937428632 684337875 858763357 494063171 616021139 707666230 462702175 529528039 598041486 224677984 187653160 300238447 580382581 740585049 243930115 931349994 616656907 968483364 689983218 682386069 379983363 693392504 222398349 489164718 699820612 144683049 386812274 193153927 782279383 17515965 463636213 537348778 1945745 307413236 335929807 664956083 85016352 976898655 411259295 105700790 403445158 332562894 311562139 652477863 829934489 591149502 451461852 890190487 870413008 657007897 954083984 18470234 907549544 251601048 897996564 24763351 75503406 983912529 482722114 186773730 552522118 136029468 649520043 107481013 616196051 745556947 933097165 432389015 657172580 220287715 852844126 833644231 129962262 387687309 677807904 621378998 701891628 449099667 974308387 492691104 274413353 312302618 793439552 80544620 140610843 509600531 867746364 922175554 987084523 432307994 504974868 553205749 887958748 646868672 622000309 886969729 640915834 962601113 809274544 760043294 36572582 798200739 842833071 496545891 801182788 333777674 99390428 364991075 608206991 397808795 877485453 323365697 6771992 711317997 217579179 252223464 949151431 93847910 232198880 977859148 951633111 786617114 316651887 736740223 880729939 495871077 495013874 714864538 893646514 672911574 51095323 856400789 900173429 769419949 446208286 890825553 742777442 632214979 354876960 962391591 627868731 348728981 46277435 289572350 417715019 111926673 977232035 369514675 932711815 273226205 711652799 888976360 966501636 719589705 109884616 898921928 395131599 601560031 925007949 969963601 1103094 532992385 166358129 718915847 349118374 843894115 183168219 351673464 530101300 698259825 154522376 805657997 315516912 222150114 454318851 550699766 851068163 724014882 172875201 166894796 954104096 903209318 641123743 340078521 316659879 83676962 425491524 255548200 893602688 406770109 155597737 592699170 441739482 951866559 379648472 555889956 401529715 402131026 998282567 81818851 657252134 417551581 664647282 366217456 477596333 642512303 446301039 684650573 175249018 37953002 738316260 654935215 991941256 268436585 613082185 64681220 869029738 641089833 622797479 390401254 156843299 334984561 499152196 810959134 502868742 831824542 239378803 311688720 460307060 541893496 134884828 738712307 87321295 575836197 245762455 314418546 406879635 495220022 961609361 594381681 855298769 496851982 903326748 780899648 153889488 840735724 614208334 169261688 191749137 88009898 74417472 78065329 479186012 706823857 746467250 916976783 6657149 4046272 836637905 625166070 287693190 889516693 239506573 5072127 99423051 510672020 230105858 506959755 631780891 165861263 367817244 75559790 772503622 249697930 944421138 101446691 866253519 501297055 878118625 366685490 130865792 345748802 870367234 628454993 160594128 845755075 57995062 932419212 686279610 792138669 458781757 217195801 785242201 419611267 315175277 90574304 903598519 37974375 828489410 248874355 752579892 613424574 249354601 391418115 856640412 342593213 967123946 986502084 136180235 900292176 751867331 759497761 615019679 206824063 56213128 912455147 335911480 529075937 414395001 968096280 874958806 987400340 743560836 127917490 775700459 705736298 445401715 223267728 583545321 770815402 804751116 994502041 916875847 164915603 350069692 972859185 364656223 825726147 19609320 374639758 955296013 373562715 103972064 134352586 374788542 495421081 384221717 19427179 736940227 887767479 531379729 131849444 589959352 457380492 677388488 105418021 238754496 819056109 884041972 314707426 385042556 840813964 167459931 310573449 333949420 502153439 77264490 541505593 14132272 629221434 846298333 631737301 598476624 217454908 167234035 31880377 579370112 742231889 131754044 357113527 755534321 960720833 748601364 410609774 619756807 963451992 502117307 836436241 322062004 104292729 92922715 273214715 360881836 459617952 8443389 802769228 547999540 815477578 554879056 527984289 779212968 469664823 345880907 231399809 695569104 839455362 364225681 695777271 379984692 70084273 454358857 675155990 959064782 772947418 699787721 303744812 803586044 742575084 139897079 978610524 90514356 242468360 115359371 592846056 86521837 50981947 636127772 996295220 429144607 700728638 261071676 357006945 575695392 813712195 815135270 570891904 160000145 418684360 669322696 187026231 724939781 628411552 895685999 508885451 278608323 250797846 945702750 679574068 314624789 950985620 726228740 552228149 948109692 652157958 396807906 612611550 144463754 48434889 223323632 694388556 615794147 991490331 708953387 329154773 301000668 370411499 752182381 291897557 399294163 289353569 301536388 207921450 964580186 941860856 577368609 189671127 36431757 873537357 11230440 316129391 416556128 267452833 786516643 987312978 29999787 407090162 873818183 572317200 613727434 88209791 517545201 249622725 850446166 611193488 582501092 218408759 761895755 277226598 429257130 982383877 22133605 880559769 474834581 547505608 714249286 726860272 107288868 797089829 426503833 717364284 789087393 784899893 807289472 192638255 286709893 821577249 823095055 999068792 987833810 697258687 736862443 546393529 361564474 539369961 271205735 818583457 333174227 179223664 196544667 884581180 453371447 181838988 813483419 33765802 767821986 893133798 866030820 839097868 25834722 680429001 617707837 283553366 771795692 179426103 853949378 334071623 842097531 221500984 44542318 151850717 876991679 718466529 115461038 552214303 114945135 593644091 503539725 671099907 398254950 692968441 460491676 602261330 545576738 160698790 879734405 394944105 447729777 639397061 417468911 169603577 806520546 335835894 216791230 725068392 544418835 123786969 599767938 975897515 55362778 403427263 84683345 190944170 81980395 463736387 537466670 350795747 528301047 470424081 630106204 233394340 59106523 351244111 398695933 379458311 129754854 413922000 668689927 567354501 445638948 36566785 99567042 456993531 169044408 938834519 372547834 364364001 446209679 745421904 879478159 340354946 509402190 455966223 509816195 282906365 651365963 771951013 35469556 887471762 438213472 50211554 999799679 485758599 678086246 354929647 891868579 78362836 144201752 505855891 139248661 867603259 959687370 407750571 700002431 927182145 510629129 258808574 639766667 174822198 280016438 451835182 307607192 128817224 224982536 272075582 368816061 731817386 971044308 159018856 598151583 817953703 487660925 327724525 566408840 10097238 315829494 694143893 282731826 562949728 236543900 784637077 647905339 922555568 438638473 662082516 811780322 240337944 501391804 864550671 650088785 837161674 822940982 304657138 212208913 678587396 539482250 300830651 283376813 721183972 641985934 445258055 179609754 980995967 509459772 99598269 80929993 20793759 207037062 273963604 730278683 616620948 207818766 746934399 723378076 891775881 780357049 301804856 78904202 324974888 553203115 27496226 351778862 925870704 727329987 454825069 25142093 595247905 822045065 165980317 560939732 876553080 239461949 43222109 28939056 438896501 152140318 827927929 912764254 337259180 782496587 984503175 70857833 20388999 820040360 942996507 153301777 971211971 435324181 151131860 971917325 930523593 278520962 712335705 572050245 719059830 316273149 106396842 60091222 818942798 312955450 302270321 172371757 171265722 218901096 607402936 209513829 924411986 961559235 784900560 733428478 402185049 67178300 360217685 683085277 179482872 526828488 751318935 741295016 584884586 201560721 183422580 16943235 684481696 943483571 703582632 210943788 519319307 818724171 185269055 657464310 811827358 425824051 917054687 860945447 892540003 708433883 893104770 152469653 458880222 232252486 950920514 945916200 618530609 241592786 605535802 776854276 595736133 356409534 38503525 130566367 221667986 981391487 217856862 494793698 271114489 919179518 666346390 811789477 746188433 596079371 413680777 860655421 976658798 857592916 602223909 249768003 68968191 669482822 27427276 679483806 880023007 358777817 821198494 507524346 711967191 926263558 128882206 58049174 312844774 234009790 757578809 900296612 896699468 946804834 807505768 588895793 997132795 503097264 484547235 757900283 186882312 513794224 50220360 242816622 91748816 890711014 91456683 182243615 51413307 57457092 242515939 682770194 522405827 310448439 992137723 802835850 665776527 895260192 128820290 579405204 798106868 648621272 248425605 263097946 941203296 597665183 670306148 142237373 682950320 166533014 934959257 775356275 74611609 184318132 631123758 681782824 514281713 938435781 63399062 446596421 184531327 105564600 268337118 530014553 919640588 72535447 804138172 550645896 350736682 555423927 401338717 396675334 688155520 270409145 779466993 283823805 240122970 948519929 149057093 297955763 731998238 439766783 586670757 749026211 130862697 796323783 411059327 273358161 307786949 594550615 309116384 361785315 966076384 889717198 940055396 909746010 774401624 769653115 892016197 435472634 247963868 222393352 505856648 97639229 820003895 358986544 289074263 769514516 735953113 388201200 235644734 182658610 298808887 108501761 978052682 241272972 387667506 257411596 528786836 1494163 157704926 784095342 669441575 409731832 498448817 469467378 527316361 360519763 836750560 486850313 677207272 844699218 43038615 397331759 972943736 868445946 418601349 745905796 471878621 201315041 523744259 701102782 529172117 27636455 645458985 754900804 553864617 618730362 22414311 973976489 925031045 65449740 230625506 592903152 740200843 755241123 772374571 611577029 688873888 875841498 416660952 144217209 866759289 619528981 611927282 952315664 266573274 403080691 837702585 863878624 518554614 489587180 606289650 94295958 146131916 708408700 972962798 773571699 672543367 874419608 865844696 466887157 752455549 379634650 187998872 84156771 666105727 986840333 115372214 641469364 722353575 217746443 497228815 869940188 293198956 729911242 747916180 529445901 109166204 205093943 390737214 405729056 263026495 111028431 766013427 662903871 111572959 268247063 500920856 240532595 911541057 29557335 771865094 260288229 742871117 27057148 210495362 533805327 821856963 197420141 585196324 209642437 580427859 110782470 43450826 826408888 166757005 466559598 796097404 364594546 462039696 497113 753499917 967068110 468798251 310171217 713318126 674276756 379654889 698786318 800903540 751903497 89591865 341290281 971452844 947073869 105899833 878115966 758243382 299993606 976111440 841153417 323594920 290207238 698776025 6335504 636618390 163318279 409644208 441151212 733739335 561377836 875741186 870224087 114316478 33538914 445806971 905570801 435848883 925969101 894568279 134348010 724063464 691497075 706653011 418268714 359825552 545215084 434675991 407315523 243660147 905275184 464404790 449345630 554974029 967885663 308068773 167558074 213931923 865480579 113570376 929129829 774511346 599130581 411449415 868861373 566497024 570649379 193921544 586609806 772529297 516059905 558753445 260491763 983720695 214314495 907656766 215026738 230706289 747281572 185171641 297378213 817731927 758541789 311065924 970969720 345685476 389105467 163968082 801956446 80596745 406258131 643659806 402348713 664777741 667866216 577829676 871976243 35063657 192635695 93719553 499905786 151555458 384200414 436814566 416806473 439564007 449541900 215247386 940138165 170386294 418263606 242079957 412839039 649431643 649488361 837576527 186911338 698265261 140869060 361444181 880519421 260278149 446582350 441905903 168845753 376705278 468123326 216992801 626781170 942296385 588375723 951036129 386480046 136404485 613537621 389395331 434211647 98288937 866560214 946365453 441062030 250478380 617019880 247717166 102451442 884092863 599171818 878205943 540851957 913638892 864521451 694705250 25150819 202640615 486731042 153383264 890167115 121601607 697310444 748039219 433942070 608763629 253214968 218163953 769297401 933774521 769896727 333575175 996476067 506965576 862803207 516038202 138237096 504946382 509815666 932783865 709458111 901546622 983819802 776389210 385840042 408413220 169064626 807752913 499250376 520241573 518787131 336300437 848911466 405665053 794658723 166576790 427935650 937374677 710598645 15151859 283338357 927321380 943302296 808931043 520428137 398611015 69327480 98862212 404554313 957342781 488838198 573369459 623490597 737291014 615661642 345755163 801138605 102126123 791323296 159152669 689286955 317989993 29448525 329258540 644941017 30643922 602062330 663334423 245251894 837602613 830439319 433133273 228527374 425322553 253422799 706245197 944490851 381291429 920674319 74740497 172904435 941738934 306635604 47258001 315811642 922971163 819888062 64222305 132941225 265276250 837446922 471130313 478187832 328318957 455750177 23534270 614762669 295024616 609643245 983228508 996054751 663876129 599157275 277939369 93931925 795425837 368895859 215702829 862312329 543636145 168915381 30399239 989505312 12047237 703294124 805453377 577571652 343029329 600629136 517233788 776825740 76100760 540626389 179446104 222205847 922680113 492316702 251239128 372060544 25034567 982724589 988034083 129502824 765773712 466094768 858936529 92308304 986402125 936959886 949313202 392698677 231116619 481080007 7672358 404461740 753134511 962075764 580905620 875057080 159567323 354270473 396720159 918539604 590315844 483388888 288951087 791095211 90480269 256530466 663655010 352307743 561077959 849667483 683308255 632834760 444824109 565357722 836116062 35756724 645282516 325091181 69378311 24585106 771063275 640952176 615952763 248970107 363502306 599930526 885571653 410479203 327674206 141926481 552599340 76698935 636855721 6676395 79161126 258197225 548548996 612509220 312442932 432152275 892446466 494800305 514329650 989864876 677455127 75878999 499221246 159444099 115394859 617880869 28709040 962760588 59770852 419963546 171480063 715929540 438239127 18881663 688485728 581951377 824454186 998616846 808055475 195805025 68203631 906055942 884411996 83461965 372811577 968185567 656990938 254793196 473807733 486456486 832035396 899086395 598631853 395527212 9090038 308026236 551748738 378635260 203665672 608019841 447276563 463760716 403478119 519599358 889942857 747338387 585806099 806582284 619787023 742100963 964958760 966472329 835899313 702215472 820033049 364540488 798073175 109088696 184202249 996368565 242724503 205311967 97299571 395135250 873055392 742575999 833171987 206843166 796023439 956726448 877948169 184245188 445396365 787673063 891678373 590273690 151072603 186172470 486791901 337957042 972827838 574586435 887813328 883933001 754982799 722596788 236721047 907592492 410917549 702874797 147454870 950113180 307973264 584788937 603960144 789394447 344104072 98884375 883172833 649333388 793160255 240063640 639085299 121078118 944364496 578278756 782676428 369283114 524768693 200030575 537328910 751709606 3680406 944028346 510087268 106791864 533537911 924117346 55597022 707309115 804850156 23388143 121265295 810126747 125800154 501316860 757054908 202668381 21752029 974122993 679066271 691405899 736016237 286884412 499049164 635171842 756515893 995840660 866502248 85491761 344374826 822554222 789628572 76466403 920731045 354549228 674368392 547469382 403897503 189423850 20472544 170927555 880480273 355286677 677381942 171713456 630260287 871898783 76398525 125793055 44151313 957153254 778133686 88463378 983261257 199112334 515866100 926642029 683566428 946516341 639506628 917568688 305830568 709482010 174583414 733492853 999092725 575365078 509081051 259138397 710113691 305908122 44913091 867418625 76302331 128480519 312662637 578068682 566580535 172947992 504638920 411847142 250735912 414990881 353255082 783597917 282344510 353097353 922816645 710716514 601377097 612644815 866808294 627539484 867147046 754452086 253307333 929734745 466474265 71070421 311993425 348245858 528374706 497581643 960090379 960204850 450558112 523829210 781170924 323980688 294936961 888429552 744400199 206835325 284894457 732310170 396944510 583548626 972955584 203641487 76497859 878090704 500259323 208202488 890663085 640897404 538978813 910833518 122583398 422330896 87551163 420083295 894801663 426815524 939200172 979010296 899509209 381299649 434889615 406776880 265887927 410036279 13098987 29534508 910702152 117648367 620424554 481861811 436383197 626364489 890777703 473696249 51205075 163464827 209413320 627357223 392351669 336811495 197313087 486511158 485446652 62917313 581281966 428121228 564616971 794940029 274237116 38795924 992483506 46815284 537234108 940689201 105858585 516915931 537703003 878818857 706776555 793995699 395064214 378065085 367916452 413054280 892378548 700933935 478138632 164840025 778779763 349980887 633175974 797109293 576744753 998171262 38290023 541123256 222419918 131683721 576194795 111381807 148130622 318207442 254823666 135469121 930412925 414940214 795310944 301090241 288214365 743457733 176771201 591044223 676616480 655742055 87107411 455092388 714283174 646290036 674810714 863528687 221416374 569359707 783596189 925078268 17351494 621847401 686057495 659805695 466883626 356714943 705792630 979012776 13165656 95725929 922552479 476198945 707680831 314663992 464528005 431629226 332153569 401261326 57449418 863155216 266585882 935167273 757330233 734568187 482063584 417162777 224293341 885395766 386814187 991642613 440258461 136900874 125559795 667159620 724719136 339529241 973905785 730866962 641071237 225180150 611589361 888468489 768321873 292247966 31536981 67743377 446595077 673508166 125332492 723372089 349514076 237287030 979134250 552317710 158444015 643741041 549626003 238682960 520528124 798247043 949767816 880793309 640781543 373533521 78540481 604612761 406834607 534202092 747191642 629230627 174753701 760482370 136594504 445833223 394084529 798496607 260715937 400081226 175045080 128909998 986396611 439968677 413434552 511380453 559213490 949445374 360606235 945518050 455602094 196632534 956031804 100078533 218228399 430544207 768744364 279302931 591260563 635337228 180498449 998922503 759756165 436149035 250870883 415336138 738159418 445769626 823745404 315060519 161515839 329358679 315444368 113804608 679061540 227994772 706514097 716783304 682311158 186988953 296367969 671139054 523081204 960447899 708779414 958900845 174451123 158951778 636134401 189131346 263883748 929259862 892942641 673921994 484120806 34012629 349846062 921423965 85771437 667465828 307164640 404801711 263646853 11178217 16560561 609062856 708398695 143921099 545141850 614889100 493828314 58830723 506459179 623194035 793821477 307690487 70285011 44584237 153013319 332740294 998092912 231958940 973766284 958580115 973321790 212435560 969834371 115125039 656661768 608600134 614723131 778068775 405925590 453769252 443413617 217859299 359099838 462222564 513092284 194704402 285250400 699431093 685181918 626766486 752119568 545014429 471650854 628030783 890516972 685116006 601907160 799671697 595177548 860429684 787584597 315456678 992779231 570242309 422964069 338910985 892470374 915900779 644273815 877841868 166338647 171904798 293543114 862860304 404529533 296328193 613775384 954691441 417277447 330688136 381360646 643943373 535804814 721628836 556211252 712861896 249824310 13423792 287172413 572449351 572881200 491583180 697345845 466136952 719554323 383886613 234443541 471540081 961739763 393620467 711517727 516727217 579262623 666298330 750831833 3627565 765146475 869258832 151538423 230856373 562139099 910463850 941232416 90283091 766388735 925106037 400421607 965762740 492157489 239961157 350673183 676638431 73850798 713615606 121370612 167356538 827880423 206173789 661143598 985654453 125728437 616285050 405060154 4892774 914406868 160966761 274523329 137682229 77784707 826206615 126083653 353729958 873334614 296124211 246575864 239762195 732684599 801846174 503502739 535648252 36988633 828693750 763015810 612544985 163093901 338971046 804064304 995094128 230258537 486882083 113646646 532501488 596127250 85356430 962883907 414202425 221663010 403908191 963824975 905736553 985873887 917213725 687329208 495531161 114699980 889864005 340991890 653470368 454761737 98181948 580337765 295974414 404293654 480720680 935079939 852867593 155307177 966441590 35144367 741090935 786213018 636144134 354139954 202957412 515489444 78613156 560097839 406902179 204562920 186750191 576331254 728844736 770973109 469064553 343883951 677840658 638804587 835557705 602378016 255932741 330358842 588981475 938823212 372079462 853529565 184526863 455524501 251944616 316542725 904098627 596926943 913227942 100835697 287554388 781422935 201594035 562955096 563857602 502837487 80923047 76254813 753194944 872085173 721969796 612814644 566772950 322623987 550653243 974761438 500336437 670329130 111997776 66693129 419239789 343347116 208274493 979661366 340675511 448594470 527483305 245128524 257830243 481236344 941702328 3181207 164734671 737809212 848083375 432606795 328173894 240263678 766523376 764229613 374239924 982770480 756154525 132988117 798970955 576319801 942631842 111452879 115961098 27854576 850020872 689692369 938693793 157225162 508303818 589523599 231405245 456735273 39208090 36008533 987611279 171719807 211552948 963548055 210433093 133535343 277435554 37952426 198327212 490298809 550433862 171793006 199808054 835751487 79484028 840065936 324265104 597469041 782388934 42330663 559689035 543427530 634769917 960980116 182132580 174228281 491909516 96313331 644681068 146705632 903302340 756719318 28560772 760145611 965509798 686969459 922531401 854497941 168873638 330678991 200394134 53119562 595659946 974940312 442766214 758771403 614787133 377597715 884800886 288321910 213987852 98665561 408073137 371750864 694866345 282928491 974119981 573085439 727265582 193429254 534695187 312487330 774396749 342399987 191033820 465349070 257660243 665663516 42701858 972712299 248358607 627288444 638621445 115904527 588054015 519880722 401194280 231426150 194995770 380362078 44359483 599228950 307357404 952248740 13482171 32098427 845744783 773068699 533981258 574578814 870873335 132383330 533657615 769877593 329451015 434684051 489795933 613393473 395893017 540205148 949256087 586050516 827376180 643677156 625785544 183147340 317256965 145742167 106699522 429802815 44278937 577494255 331123281 204220131 60036860 452470304 153608239 145643911 461912317 190551776 91087428 735543451 672815575 992167207 449773303 430608881 701711385 239153245 524035966 748341470 707332624 666271005 344380050 283874427 681211458 192812087 700738621 360605435 30804459 487211204 182641916 997494861 200067263 766834421 722982030 17996923 320840897 809423469 214007832 636867005 912650473 340941619 951609890 767988961 414717740 230773342 32714629 321309015 180407308 524393588 988360815 83952506 106154911 742273780 729604061 224724224 59944471 44592475 834250872 331567019 27656049 188570785 770655209 965222624 368669705 694909583 170283672 38167391 229918946 873299520 560832512 574691839 247603403 403922945 769682323 713655041 313973932 419059882 692407580 975020333 692706929 861899030 702702325 796553495 77429646 184171258 791229368 302450117 618472354 402934902 841286838 360886253 593488923 583576598 236381588 87751624 298990943 88791571 743889276 407894074 237408552 20085626 85702185 726296291 504341879 507557389 129428498 877402394 595162914 944922508 517865533 879565941 527366819 932906837 639530924 84521686 128393089 869910729 723161547 752083560 718692197 370083208 1620019 431501613 17741663 524566658 15774637 464025432 147582781 411163572 319266021 119989398 437111545 814023049 952378252 340703347 886783655 773491014 609874392 93295672 127841421 864990604 442063726 649939251 89083680 839606307 576348179 439626202 149934971 738908896 688413646 393693283 308165868 809823990 862365958 260919869 491942587 530308548 802810698 133681878 91251081 309916447 192031856 546324625 655754250 451864750 407874969 165534787 776571802 891670825 698785012 307306522 3633865 93363096 893898492 165690279 374053799 222044248 552347149 481727078 891618479 227732094 49658234 94414877 19043664 717620737 334658048 119191955 585570142 777558051 7051171 5277184 73420584 883435785 924478136 468027522 888903789 719229349 79201533 40484342 378213146 390890584 840336139 602829149 663898600 509574361 4693414 136202664 75334974 677166298 379376907 267603673 940294089 470209216 208551085 629292651 899680924 973031746 717754324 117442341 795006114 419514480 927945951 835212528 392254681 732787686 989227185 954604797 491269210 928866348 58941254 510397359 743266477 222046954 224355742 39982877 204169335 183012026 283625518 829080142 585924765 849826303 264299842 266101670 49392440 314186798 327127329 85410536 732373819 10750809 354449969 843632968 299323537 175468929 277080527 903087697 716185510 684845522 202353735 862699698 61655046 570804360 154091672 823029765 317323184 362509343 64229108 87012437 975149211 259067146 645705769 94392960 385412161 756929741 710309049 245218227 262990961 174974729 856163317 92239568 757981847 767792086 427143920 265826260 200840445 867916345 623500008 380906510 430754761 9050414 361373671 147859552 740692950 201770478 793045200 99613627 219204582 548418675 584900753 72915008 381410457 711048293 55726369 170457706 690605240 433941560 390999442 552441177 504470586 927072167 738766795 893326876 908446032 41405671 907011316 952156218 296110759 993772126 98678917 690283976 166909031 953979687 511609000 66691039 267823714 391545390 108308953 983781866 841778622 702498621 185763555 32160196 681190285 838729452 882138664 330786470 730523532 693740316 398682557 978846974 294055457 532795110 786420684 806947516 458815560 532430418 627708987 851207446 93204719 512295657 452637120 509465678 35327897 934501250 487318683 569931932 864850473 581970422 519731268 98446732 896568991 944214947 626009578 131524349 354506285 231529742 152253726 467640822 761141648 341657811 632754157 808700236 651829156 911244860 895704893 136079870 803220390 165933519 79133073 73104474 825926607 230060539 821271996 279339577 501984083 888719967 240265449 39209779 850987343 218536093 445899577 847790081 853502064 80563755 257794649 330726951 426585157 744287407 179509507 398335112 681101865 400184970 159965937 286882713 788476448 998294758 474015280 262922646 172752310 479855122 957816611 619465529 900110967 554235202 690353306 871518183 411854817 705887288 867693341 218803366 568658849 100223217 575083456 552751369 873145185 730593082 546818514 858917718 703754064 922229147 473376009 984885654 887965396 464850769 732018390 55494664 250798695 145363670 258732590 952448883 966585267 342806971 456258127 65487397 584634988 83401830 340740649 129258436 750884807 821032361 18674843 400598981 214904597 857893391 160720381 228062878 406745780 765702975 516882575 281383654 367023815 719625654 934368494 761928358 768854528 481434332 43257911 384547809 787304294 277259769 720532920 819598727 628776038 853011622 501273132 165614082 884962596 237609545 113240407 636042677 191763213 460893129 900340555 585953010 97383859 17992312 127551908 720664162 332519327 543770853 235429981 661245839 426267193 198887944 971587558 136450513 388920295 891500734 263830333 980462757 513991494 537821162 872976986 18468786 364910827 607200091 72898989 397584360 89531287 984929026 849717418 268323227 216148902 944323458 217800828 213608096 750768285 141027703 217874826 788393218 228828541 342838177 261486880 683758103 366836420 673592891 282703601 841865838 784274080 420987583 350526603 943253548 246955813 943555588 442959961 24945177 317888085 431929464 334217082 595937608 477129282 782745685 383966427 584877994 94506913 332086340 853100738 727212723 537468145 64332674 929093571 619466502 560610594 404759444 952915181 170821678 866324630 580250769 49314993 71271566 108711931 850982225 203354684 764498313 535388049 725018602 485420475 265558999 412118832 169175095 671755253 601520227 396030506 130932769 441237045 110466028 291527761 501162393 13386907 384171508 862971759 460277085 240144046 256638298 130906649 12461031 151011461 465766617 301176066 48764989 809088017 134305057 354921385 212221129 964839703 832490403 666246044 874301417 833074068 229960652 718156637 947540966 287225661 802208056 535581140 378040158 887441717 175625220 816542341 935115214 441191602 638784665 84162804 333183409 300267451 546172213 641376548 135428985 164349508 195313634 5226203 818952979 731329551 492006725 834148331 495272155 308133631 707132542 656088490 490617669 535950264 566540084 459954430 556117997 372983281 845278440 762776352 184639014 800509148 301583620 256081579 607740316 796827632 357489689 928311257 841110132 889717171 361661621 919033522 648882956 6519135 207640053 303967203 86077739 440970794 516618447 104057367 49187712 7026311 57375996 242393733 333974662 111495805 877141235 628588993 140478696 419007189 841039062 289304499 696332799 627942047 117265919 540815961 964992119 215198092 574022780 675472030 756745993 896723586 610616169 160589735 32828910 56660643 452043445 173815087 326319414 445593292 587235789 965132389 279399521 585445219 600607979 8383489 781327778 140660169 304420895 978397687 239155318 213575357 191660129 463828076 36375838 243696476 828229138 358503425 672389206 7390167 201776445 199526986 757821918 3008906 280431202 576207650 41991665 249493632 317605397 878890643 769638894 684186230 551358081 554600432 475846733 503989892 90417558 274734017 795556744 251670006 431896412 433102779 711806108 337516164 86850609 45382373 723598494 135320356 350498820 757059412 36021212 687696978 542101847 785697086 892141084 382898691 427461722 492130258 648060169 994508510 941313493 869681154 610641308 788021098 113580879 162827099 807263956 302627934 316595516 291508963 417001549 309666462 257168219 353294369 512072565 483403401 42382332 303645725 499763131 565255316 487652842 295771756 678349764 119902409 352415670 454861131 464376425 509399252 966278482 745557167 713681851 391093697 894212961 988384868 632266205 339467998 598963543 518662228 273278270 38952938 518164556 338050920 536009344 236443411 107408562 396450162 553920374 800956240 934521955 474139489 570451500 359354553 897304011 674148628 246291096 203209272 367256643 598689544 815422126 894791738 983004568 763917996 385720765 384700214 456846154 761600986 241698078 236530733 765960935 260677502 221563819 196247605 425705227 834513983 1645725 991180936 991864257 597625961 26524404 555259061 60143948 88457004 474566902 143560473 975081618 256192370 851842061 756862006 295271138 826488639 520205597 80735977 653029822 231192520 881817384 500192576 169692782 164515000 665420753 472761974 865908079 909614365 744741369 91151598 509729921 719709574 786545263 2963324 176819654 242887512 15879849 741156825 516371626 935002231 890568590 352252748 69112311 45007393 73275449 445991531 533496349 956791536 791810627 796867901 190903040 955150302 820722527 144818411 343811587 125617309 888649072 749627524 162255900 655982079 115497700 128987259 858062978 144327027 178520471 555193755 409188098 589042425 596085453 377807005 867684653 659900147 307263017 989779901 341346730 791920975 900146515 818582421 545026476 513817503 888475614 19278670 384705298 86541849 733440925 205563837 728552334 749610811 370853977 882599741 886875191 291229157 856756259 468864964 433677269 752577867 366584808 686084503 381537812 45778167 401348182 953570944 993277695 227223149 463150234 463280655 720686821 894485000 336762588 107902022 394710861 837759668 234587301 658573641 277305841 997105855 396470258 839773860 966246063 34093014 73677538 154247240 135919175 506359814 628568940 715217004 811948269 255602090 193100355 707168650 113601419 396518133 610963631 498455027 239252486 434703527 532088584 107200277 407009871 31776877 367358828 187373954 485597308 372959929 619524347 28868210 295200589 246974498 574290280 495191286 569467096 342080807 562207429 19817351 395858009 210848310 181509940 208449459 400143775 392331868 724261134 623343639 868410412 911188157 626471236 702653489 203741733 332788558 833043687 304605758 56887112 167190282 487787004 42968353 255615407 22444916 412650510 963833695 985230865 398717298 421979308 509143277 13108197 912941471 494336628 971736845 355423467 859313039 583430193 662996691 347977072 359067727 685368319 415889976 745336115 400990632 241186342 413234603 430187498 766177267 831566359 844991687 677763593 15870576 15421308 967024590 138603039 106067017 854430785 868387613 297155735 25485665 383925657 140002191 250475851 111982560 972092504 73812673 583272230 806676999 738348043 502821911 815772119 868922322 285124341 988267887 319543575 850419895 115424696 798097372 283982724 336369173 7680040 551210996 18510676 224053772 542665498 24556934 569334137 555703639 59225320 955767240 883474071 66911982 557215926 981925646 694543197 81843904 309866776 593811900 892877754 849133005 933188573 795356768 706703157 240467849 47819869 612984284 740938151 497804624 71214376 761472427 786408217 626958387 805541070 672228896 281268319 18150369 603748090 279587012 822223684 321364513 187247149 413710662 625646481 705292848 492873278 583510739 957446983 65309408 292152412 195388051 172099727 572394560 332659649 929591502 405753379 214640237 849846428 355436289 649736151 444543087 354649852 925291500 659764854 624146799 88031471 728094842 247431259 294692815 758561566 551819961 700144278 290632393 264857985 47342076 493371192 785497110 63297491 942067836 493669407 362191578 934883606 129645444 132107538 651795454 771136805 495028248 533468754 622077319 594942049 539901249 50214006 395379960 784567417 133367124 670142676 592843270 239626733 456613601 717543692 715615249 853390807 160195876 389254980 784002201 263126633 754394899 754783098 402259524 404104583 143720321 355559974 214903162 54152900 772238726 552186502 958488752 66706819 217539801 134772654 772268587 301366901 656347287 621621277 183877075 507145026 297550461 456312261 34851157 304076101 673238929 286751958 958713358 615352059 906390649 361985235 359127895 775544510 164637115 375041211 729918727 713920933 560580077 528103897 518541702 237663856 777666498 946537710 224891396 655936476 899840117 370529667 523721463 106699401 445910737 327907885 939098860 971618287 469611382 187769018 116036320 924876292 822226455 147310951 9238123 57206054 752982869 505924992 125415670 85597833 159469108 443724476 434309760 150040465 378510307 929028194 242639238 184833235 466212046 794917686 154728173 94422483 826160309 902014750 659907316 968063226 957722962 329147581 426365286 613932617 280700128 166886307 516615644 428089335 524962886 6882448 726109517 954435004 644975276 464594633 966957472 731987917 398952238 778380416 489153412 630518413 48563712 602636667 894720213 330953454 856531226 107036847 80394599 814903873 620317818 858331588 69184808 199934386 898769161 952055513 699747039 499612505 411926415 961862088 670568795 455295836 313677315 846450692 881952812 376663581 792112700 126343158 674223657 591504434 758145571 133683587 610382397 206548816 257392216 392567061 277577894 81265197 377720808 155657212 630693448 450470946 682622272 212360332 699458021 611383204 883808904 924795481 234014 239584683 53545643 397554587 677142996 310507790 130275759 178316469 935796273 462751279 599088956 850765363 354270040 448171889 7023751 488881912 287588688 156585150 388804415 704172453 387214706 514710918 988962354 228456679 488528503 426946718 841606510 224458021 304221123 29963483 700208385 656017968 489674144 410915750 451449707 905732149 878813782 538559523 814376737 674938619 619316498 108813353 509155224 972672607 397427368 942725755 528122973 408616962 173283458 623671412 523038490 449977849 438510582 415950401 891819047 266463397 139148858 860449170 485524735 949626855 870720321 418731577 869367509 732698173 672929111 674610834 166652395 886409593 60710783 723788177 473362035 237988464 843255889 509492901 651199067 202712187 894887680 45855088 691066265 336280294 591546605 406631522 489911051 475637446 80728924 979855594 869684114 298777736 528791509 556192992 859556206 389104871 977529546 196150539 169806052 504029955 792806459 45825970 719903438 492703959 137214423 886107389 792391029 18947576 388686208 685695461 230465382 528779719 240587236 13587596 432195288 355168462 140969119 163989512 278863632 697951039 855609230 996239638 440768651 170724577 112323580 570489552 593481772 132301572 323105251 803026055 936607598 804244432 146446501 582850301 479994020 468870979 20154462 238991628 162646859 498111910 200642082 4096348 630906549 913170574 486868915 27010499 450659974 92853561 871532861 169762049 524849506 573086058 453229209 756062896 634208240 632888028 66741230 471963523 13443452 464865519 120055030 775856915 184803077 867094993 813862777 610595985 881885557 132909490 780132326 162781784 178283062 183937349 342482665 527986060 759046488 660286624 433715354 540546968 794462296 154376346 335855128 7645744 436416923 35844225 455659907 374762346 352165180 649229504 992078573 924226627 457447522 126014676 987088942 541774879 315600461 902456898 331830854 146922376 654607969 650633505 191432966 522801593 811335958 199266025 590566465 802657117 487016988 457917579 547850429 156473033 855957053 409103164 717340521 786161799 227692894 77375440 482838395 898272069 117435411 497183134 28550973 543382538 635668712 561237033 260991625 453814321 701614285 965496966 944222385 393324390 373972887 76083956 644530798 137273374 838628269 371408016 205053289 838799867 271150369 34877024 142394300 470100602 927791007 266759177 159515376 275349115 220348827 192683569 498513520 17260138 115102050 849767101 365145852 380384884 872411395 488625567 720468964 9898503 593395014 67540187 539658686 914714832 695602090 52415521 477221019 915484278 836074152 113692507 675479350 431429160 530877536 802955333 872917582 783111376 513035230 39244547 680036551 314321612 767683174 134948660 6327382 957671304 347702881 326693716 490376667 935671828 421717395 818794979 418838201 638456711 912163337 163433144 183988833 837674325 584722148 922136720 375592531 12742689 512916504 896392943 752263503 737906374 719953976 74520708 879075386 771857948 239215643 642762679 862375071 965440031 272133322 949245133 527554005 51878535 30074830 661161647 223182802 963327914 675704590 225503726 142268553 803426117 205922051 122338488 512179513 770640171 287136561 489734831 751974838 189685548 882744323 955313775 475083987 657092058 680831075 918868486 160856242 707644420 487792701 482115317 197155487 634212368 730333742 304964866 429586566 590759450 919912406 816394481 886410252 870889927 368380516 19174671 141346307 54716813 646419196 864870574 220852033 801051378 67829001 443004447 713811071 696502056 22640531 815500510 516961811 175123518 731333929 941714711 721026523 771484641 321695575 312877417 166740468 94882660 259210103 763674308 434740994 207168294 199400303 104146946 960997914 611146132 930453164 696633141 850948759 333237510 859944215 588689793 848264936 646490366 524884719 916564441 835823432 718050918 862872021 841273242 38756894 313101756 736544493 825216651 357923273 287836232 673203584 572227152 370710413 855716834 54699354 367357981 398268210 312642932 778605693 771721946 169737925 114240289 322649042 361550579 937771380 79678425 681244556 629674714 884448641 45758094 141531020 490059200 845682176 433762032 608596839 938507836 504932926 835014646 754264633 582991230 135286565 539839622 596733291 19137904 868684813 820677480 84522089 988877821 785757162 208139157 303321702 975209613 558231820 155786675 81695365 821041291 20396108 871618497 352947874 269697718 612629057 906732976 549696478 993411809 672215699 555920809 369132503 339807880 258497906 938028159 19867789 582239183 715064866 521290368 562939435 839111627 231822976 19560749 441287483 198760634 758623666 95352103 785359682 496318042 851645607 921606610 510772197 877019622 312035850 220703713 750811614 929528601 587812995 538812772 950954975 433835951 988089584 939901265 381830171 976396565 184969975 288978166 337000609 192113916 121490755 181848977 951553097 729298465 615093975 97751708 397977847 637199076 751488360 171246377 53762776 535414934 5505045 952708115 498806970 773336194 127826607 823822562 8523232 627804013 375059823 180124969 73660990 30169756 595772569 148074791 959514577 277852142 105054406 866848628 783062193 314048684 561846113 682352109 809722052 578964200 408706277 382005392 570447968 955845534 594486813 440106840 42411551 340628239 229048208 907054598 393211883 147385927 580497016 283378945 33209263 494549044 811220451 959871631 179798738 515068976 210167692 911453775 179366875 198478658 636077194 168606981 909831713 903771326 874829496 775836853 42930852 11247802 712918597 787344510 755387141 363136773 777352491 570417789 902439335 340220967 664035705 332448072 99445720 943672757 992802945 184906615 89415773 275157634 244145646 559859997 124980371 8819269 783200623 252308094 505340577 633669513 959904264 924481973 554672861 867188096 739356650 882383780 14296889 48686293 965785629 114580988 308489485 961905477 3982842 406450274 156357408 687969348 541875417 791810912 521358492 539956525 935137922 126703407 549646887 937044692 934619245 313382268 965777864 121720866 222899710 623140802 723280186 552715398 987692960 966874723 405043 782116176 835980774 493955828 918828713 475663903 702072268 395221511 789791980 424335347 531240647 916832481 843398289 191350025 971443394 987014238 529790362 519228458 142942432 842560104 330945131 25098558 731128698 842339408 30204382 682955903 565999193 642456575 822100115 803084900 556364634 727436008 512135787 679596063 471332127 479003158 204018482 385195478 933555305 686046035 141148333 336982198 287427380 505006924 848780952 692321823 873424855 627564631 479465276 5933553 356484258 33686626 167840064 117529909 476441296 930972843 221440457 821783157 59576554 730652608 275408339 93649383 798762142 987988691 277955941 512828829 22785070 883231125 691010883 216208039 605755788 155176781 408856903 117681853 990895806 776639957 824314857 869864979 20184472 704234160 21919088 239800834 712823299 116710816 480437111 862544893 29278947 179465 26457672 392443969 850923619 815990618 815647102 759648246 790151771 691286075 428762364 698035297 278183739 859842557 139618299 752075670 562043021 274272804 439977153 72036580 527524554 920823108 417795927 671429565 84633785 638521246 805457991 128186676 14765522 785859113 957188088 381770061 681716011 981358860 631928977 439866843 604561061 885536094 331910455 726646025 506374413 442454273 493762021 327399227 798813877 906209797 251813424 344217320 688248311 69502815 683895982 627418834 756568597 771892141 546331754 354589698 367184305 207938142 236921901 132697403 764726514 755204963 925135190 603482919 864106272 477081334 520448845 537783937 137851953 891635477 219633009 713237173 289294625 671355571 170727071 569325621 723263471 370330695 728197369 810849639 611562460 678320272 290734003 912716015 235321559 240840242 396993209 794360502 647017351 288545574 804000716 263472383 794694779 853716073 932495370 744276030 372995287 618690488 497294011 772550063 793148775 733788622 351688470 758053210 167657218 204198469 774707905 805148801 165123063 741443329 511957669 980475268 503780522 877297736 359608524 615372427 502483684 97824216 747892029 562674917 707042654 429953237 373177940 675695460 408225981 958314439 20991837 777842728 183113557 615594823 710335183 700995734 946115485 802752510 998094845 885666681 675086541 92260212 5131429 211235134 312308728 434556626 649289520 219837713 310542554 62356775 917482134 473172022 348105687 558296236 120273404 624784610 233760898 53012823 842643078 709090304 150935307 718664111 643825481 379241107 486746007 289900313 415991573 322425882 289265789 135546107 964834799 447724151 670831864 702770131 622304778 197906917 274933147 37876237 5811892 975740683 548585380 53366074 733720095 703300422 730972368 496117571 566253745 698912477 19470114 683413034 330039768 585946646 892019662 99840804 611806545 355996639 553236351 120838267 37746042 682217310 697768035 556265117 413329678 703183698 427428812 56429116 525716619 156522213 35924849 22759258 963987048 694613151 658397383 33572625 236396475 133908250 784305283 989600070 716836649 951347102 147407053 458417912 567666947 693190057 804036668 50477942 241873069 499559907 823108792 450207813 481848783 94846757 198553211 926532527 531301126 960932184 828768904 627975498 868205734 287040697 695290809 153940210 966867085 93333476 82436097 946852038 494290786 429663301 508228369 631053449 760455281 444520201 444698529 363598705 594761484 992246467 545537741 843827909 674732803 354852124 964971097 378951844 622800829 99925939 533523662 423977814 812171492 343350240 534256503 774901105 546445062 996274066 819488316 366652911 647552358 462057939 927120135 90244932 693231997 950466212 965467333 392480122 708513463 729068888 67539332 500603802 449700200 246611482 709393545 835457779 68783879 482319017 257545609 923073746 18951239 703754982 946172525 301347764 181609674 307936428 124240539 973942517 751331613 649939384 206539884 62069470 454195605 318457899 282414071 125400801 558313778 318768428 164147873 12394406 844437414 280331034 614313339 505461450 582376672 420359559 844007496 309163509 975227059 119461579 835359050 35665976 402244556 659797330 646116266 769708031 508766812 254677269 33358669 843354400 301405029 549387057 916703176 596329383 721486700 839291360 308909133 745176467 783493125 437320744 325569814 392601211 381619318 503797645 832083477 566698511 464034371 226527204 385567080 419893191 641087211 538300631 430000441 350705883 993129038 359287714 424594552 627637771 345594585 575054623 914355639 743440978 585432002 781658540 472987993 957444524 836446863 941076019 584417769 734753475 492466455 233428579 130662576 837276431 579546427 321134401 243225722 141783785 109657783 322213204 249415545 893504482 31180858 939656719 414849843 825856785 331058825 999480527 246783696 148439856 34134609 88104282 734507065 269078175 90194621 394122191 379529447 80852431 915302146 828621763 5508016 817157200 581455559 518093631 101950581 117563394 976831522 576098551 115047275 94089957 965440127 485675704 109584980 181486490 319817477 418926668 406622097 477197598 908161300 828796687 698931511 777663906 271609683 101545165 198717248 953440657 614480499 294611130 796194241 998157218 985234250 913712884 198597184 304856218 693911266 174266135 375242914 175505007 58864004 617020720 960889132 414985373 699997480 321687608 398662753 19477892 556288023 668952000 137554736 401152985 834766643 344371511 555192252 578525145 756105392 74775858 468122517 566990374 368149141 700338226 960394200 945185102 569212585 754448347 61689272 686428844 305847695 306491829 27634291 340481415 52665536 56585997 356165902 484479943 173551861 384614181 911752756 396302622 288167224 689051440 204199759 888745509 540580791 146842984 303803307 366520985 352444940 380829788 992360611 599305950 502829328 916276688 9927981 47711194 730233712 367363521 967964283 518394450 451917881 983236195 287183199 767601087 821401339 452619129 260684913 550059612 211918481 511253479 283142624 960464587 629940435 295217877 734253767 745080575 299613524 28258343 176174194 10514921 731882958 882298472 149907545 935696882 513523442 359838189 402766197 917108467 945706970 415121613 641743975 247395340 823014512 751580076 145417607 715043736 240023807 359272776 54553743 950617871 742707518 591711094 742768282 416947835 527307220 298411072 10395202 562260831 722203849 953735467 949128504 805898051 244488750 297089588 242155391 160338538 999731647 687753862 196227973 188329915 442432330 892603906 596837715 694519619 378853289 82684472 336143616 735768457 320826491 689671912 589803502 667963145 724422519 172973870 850096365 180585903 487639797 2173663 172721033 255203092 298255623 537956162 498666478 45851677 225926147 764217385 687929300 577015968 635584921 41379758 322662649 27009792 441637827 955844561 108602383 483465636 537888775 400615130 530462649 449115950 47969404 581769374 465929988 605136741 985179649 690354189 371035587 361186518 584629816 440684775 943707538 111653201 835391995 514266968 142344567 347888112 478003790 604023845 180745342 773124241 917773501 167407973 538195297 215442718 700101099 193499237 815097049 524506687 246356462 651124995 906999477 945251221 742636182 954078042 163555373 258259054 346540104 906636031 713135103 397911393 338712791 926713569 468338490 276680637 179078847 173495842 891896588 107364557 757985842 587992227 501697753 949964608 906855661 890365594 724445107 36223603 63686697 872088711 198686595 456988816 451516899 165470626 713900051 990019236 893901361 468636892 579165442 861633562 136484079 339781309 292158529 388476207 486795013 596314010 668500609 719109946 704930484 583687509 507268033 26253289 832568086 41187945 562041712 123675039 830668235 241731458 703976545 960485000 692281011 952196765 738283729 152613348 870026272 734176506 362782667 577025402 623908916 963069178 892873303 603948350 555456240 743853425 465340663 702515726 466558362 379495041 324173508 120866483 266335877 154141277 779139013 640263836 640728708 60141880 216995827 246345584 427173546 94171446 7584326 965655081 876030275 630071288 325079669 815495931 840552154 289995328 204808870 57191153 100951520 15256932 199481324 654293608 204920955 117287440 380998221 676838168 581490103 390150251 393816794 440808022 470524799 173350985 190270970 344552558 938452197 450454913 42065764 347609831 118553419 399680733 658175140 967704465 846071410 861602764 960226470 613418988 753840784 915717667 405515881 640998821 16441219 406150389 36013058 261679414 235406103 883715207 387108030 929221250 619754476 573450326 192079067 200492170 688541785 730405127 790713500 928091020 33987048 561699582 821533976 168703718 385164937 666477601 323897869 816426788 381264749 858423596 707675963 724229595 335174822 935876595 306023501 897133710 130056748 453666807 598870113 556174958 536888740 752302465 716255057 130061469 569758397 282650366 934541990 823082127 207993658 171092878 759399739 354095513 906807994 881345075 517608201 27266518 509294486 467775565 126828260 115683554 912382342 169027050 260154665 841806696 240248679 120827400 56947251 130780987 78194205 806539657 874012945 694208422 103218937 978664039 776989086 251355155 966171573 462228903 639300200 881448551 247823731 498788605 576151058 878338604 135987497 483891247 448614182 254291842 36442167 315444423 248070878 19824440 140386362 729185887 41407175 841377026 448728328 286075039 289468980 175332529 605834079 561807087 962606405 332314992 325574106 707038549 509139027 530217704 975310083 59243878 563265862 552940955 595360436 511423912 935449724 111190686 193142942 926248824 530793969 529630956 718868789 481121959 834130942 308800495 130492279 319424142 65946982 643559692 395183026 230596274 148349376 944086685 649273476 889817353 169212381 513658293 267746101 83943929 894246215 249512447 102954182 523064581 341390526 935530454 586020203 22695523 517997044 583897133 494351132 631194776 240571075 146585019 427868215 826901530 657875121 925451810 945716896 328271055 806185880 625420689 829253771 424439306 664279897 870818027 70254979 445412015 71643655 719040521 763671263 968553472 271208214 299634205 48209826 454989247 979019874 996998844 483886826 442277472 910357932 994757995 661371947 410848764 447890255 459816317 490539837 99927513 257095827 982485878 961018990 797820084 511167282 341423977 895909387 709703431 145185451 163523749 276372907 123258474 222606112 933746779 632258170 357274499 82026395 841660853 360164939 368776057 508209786 834726353 312098107 409904834 862953277 230913453 927806318 302154036 680189419 359686400 789228976 594624790 907660841 841335571 135299312 225012255 907208215 418208526 546307489 163478471 795737917 255248089 711445838 775118605 215098377 688873511 333318563 921850330 662636036 502425328 843026612 396630980 813901913 175624918 914601562 314795427 455226136 146465850 111202319 846822277 287415155 875641556 864737699 679395778 832311651 798717302 458893748 254741632 809104709 462810238 783279169 653340218 36703048 63272352 324613866 580291955 580444921 848355311 616986380 87509743 314687463 873144903 538749333 112189459 252386450 707823020 63193011 51428186 215921892 743736482 651850789 182175844 886144157 736419782 274841932 680555416 778146275 85786122 840183513 747408356 250291781 259652613 981690721 406800600 50966687 961186919 395786902 368221834 806402477 356238830 786719302 919297892 198100674 172722736 496303179 456372170 864638359 253813195 273853519 174375500 894850578 514603396 216227778 975302034 17646779 793221892 330259609 969719410 161168099 289912303 965632678 71931559 967417937 467094813 421418460 355465790 941704165 890862698 654593007 638385477 638336830 652884617 259785154 681519107 268513870 96955766 428939216 9949823 970054804 521530460 498917025 336198926 734216416 537629676 17387678 842370593 199265923 119076652 35474634 161084615 293475985 268561134 31381189 908252594 247299076 17281166 237484218 380300980 578332863 871181523 483991720 141158771 527838308 396177180 478766882 663809395 324342840 836383356 574520946 958085050 967502444 429649553 803652583 93525824 459158366 535081001 660492836 549729827 634586047 21512369 305420679 765660769 293418523 856500849 956459737 237584153 391076427 270761302 8397485 559169184 620156037 361578434 612054344 277576516 29552928 943138938 856903835 246802189 856144031 549642318 587935240 758876145 401900853 59660612 874402132 17734293 992807101 968760934 271978715 469556668 918279044 154347242 850500699 914509094 523092051 748027183 519705295 842548712 81947 43580945 308048010 731994223 553588999 295528089 718131357 619457969 608475616 264632575 140780435 725348168 493030819 254951014 218329007 555908604 50722722 721423126 657672124 212971351 864893784 874103703 588418169 677825865 140436755 403447362 101427011 859688832 912481174 42805821 885564968 17697735 202928899 401601219 541195340 705020477 725212159 483412386 183932980 142281622 726931899 927454337 757181987 573613338 743697199 78450877 235227084 645484251 708647241 62391985 90932445 704525253 971687459 581357611 838388518 581425048 299843953 316118169 237771343 134487080 405174249 969348744 180623594 193980432 712399562 202493748 707094037 389579840 290485118 268127986 213403164 301125398 953835950 798605886 677369862 840620389 752217759 303239589 282785509 591124485 934265192 171202322 318018005 749464015 613254916 464281396 333726827 533113480 924917913 644662800 653493368 958972621 569666810 256788001 579957755 11531219 403700699 966145252 600410635 192290573 226711225 449388713 121759408 34651437 887415227 759346615 672201159 379719825 75250058 718175959 34729596 489478207 4007913 163235183 115504651 833160547 81179708 535110823 600569140 423598004 119721158 75271138 801585861 470692286 337848114 533530373 503271979 552664189 656913706 531186946 867039941 71170543 793195681 55663252 855119543 899674058 370871657 830834104 624533775 145549519 851528235 724396462 365157436 293856911 743057780 163157678 875490600 952738409 509501240 773432600 61875162 384160177 155063034 323469602 232118175 479089145 325059488 661627383 142264245 290325643 468863122 988381303 32062425 10218500 970238585 814027482 963098033 363763822 784040813 719612425 85273645 634339773 737386790 745072769 428313461 787237767 405967438 966701314 786331346 865919292 908490511 215323254 41914623 901325116 69124108 337107600 971395603 957185920 36820274 844825349 274746679 672101220 882505356 672394661 610921095 31443649 578112380 905156006 614894815 307710045 905845585 61397090 914070298 940538138 304178064 161270833 780846251 962867547 935257303 687637294 67092571 604688572 531798115 472738354 355453639 144648802 743959261 628365277 208756604 678037507 460323867 784722623 603690991 837232924 68222087 245830623 543502199 171511979 673185772 825951794 551304361 543485041 9421557 14545958 34660903 819044914 698546376 655812234 636174802 367529322 570764361 182871012 556259100 569760826 348426406 528592926 563491198 541038535 102092818 133022327 654546171 878687652 7370501 502201602 694295178 490872078 920132316 201271715 909108360 128770745 885395187 558091136 609714763 580242863 516399024 750537171 87295364 154130915 467444456 462718163 42306999 885878122 423006645 872251152 244861921 943731109 182506132 382850170 233920044 423836342 633974739 951874708 752194521 974036756 935216866 390612976 464452461 79102561 567700135 381191913 181088723 991018205 530511319 70361478 495807868 271460029 640424560 711570425 839737379 978180722 931868959 873608973 253287328 583125230 981944412 48321400 465644864 45811527 305532994 176195892 55373673 309904657 139628666 698074550 524513249 497927759 660695564 59447787 53535601 568933642 372841093 536300101 21452027 640214811 29384586 146288192 928163739 667425059 841614875 224678234 342538602 367049790 844082693 518723741 227688428 371068309 687155259 616116539 677925155 512081106 915648025 736287868 835762484 519033723 750884319 640159186 385906403 495288245 359119749 963504877 72824718 189539478 843831097 560548477 677759825 195774590 370596295 950354261 330610563 126216986 520946825 365899341 912956218 55113066 81878187 405437895 765548336 405648523 357057764 115424332 288493852 578308072 519310477 321350606 237295017 456297614 836020321 625180142 252960922 737803059 430378924 985487895 54304304 874873953 46740331 699696290 345753639 592231655 267000618 469374892 191802806 85449933 261602474 281213657 592821776 960103613 665328978 583847008 350906172 483908285 301433525 282120871 678559905 714489459 108777260 683122008 38147798 984817229 413618832 472230560 296234640 331875723 31184088 513842355 606817932 770332662 842353975 239926574 383733860 676406901 100047153 744310254 953236898 408958166 503196133 287326199 931215284 64610848 671945229 932930719 817829735 350652676 591856786 866829416 940527701 451080146 265093553 474335195 479363086 352076633 572921315 270796422 245371222 966243708 910908183 995766758 624952258 497639665 592185795 120533594 209348108 560233648 440436443 114047874 584354990 588129245 217665452 483906184 522132764 186418221 407101514 936751808 539720579 796073924 378409696 55375448 93440988 539626783 557956491 965051648 811379278 731170896 893646796 255671713 598703909 473640261 119088236 212367059 674304693 7183538 721482093 275974824 77031285 988570316 438990975 256006833 612576374 679157529 106747130 421102042 77977131 18370953 945060296 564965101 96772426 270297025 119543531 485461304 664487881 897037270 680917937 220288217 243436 660430697 77007176 570185510 888406648 720019473 943529128 631417265 139171275 21727933 111287007 372518474 65934622 804022053 200311012 333988637 874175456 225624823 320637519 77398516 380916557 677045725 883247614 699429764 660025966 57303054 887488907 170790733 951239237 213313571 205447915 87514475 524814088 457412643 761973695 155402066 699260600 483784642 266259016 678646996 617989499 413291366 654186553 620394368 347108464 3763107 719483563 330236536 313195643 384347075 161142231 141037239 250058501 80773913 929446633 566434735 544262329 719964351 706367669 53845409 64170496 427180904 543750463 371797041 569253934 726212234 605916767 48336073 398984181 185759517 559519577 393574507 82262144 298365491 559348342 150548109 318611992 666995099 410675243 770150615 335614722 31620546 146940868 35100930 381916995 980965323 804090378 431255483 252855830 496571771 552938401 236678179 195249180 744971088 77854303 896211609 697564724 184366720 281389667 961549754 274214164 434833193 117312262 69539344 149059407 524919346 57072500 908458124 995281024 879468520 864981126 666578254 633420166 386905703 671055851 594063090 877624632 120544699 266242208 737366870 848664195 690096589 87740368 758610724 29962852 792990584 293544949 991953772 120537019 386975540 956085073 260360410 511699023 992365180 232401172 964341681 498900 566636769 926799619 801490084 613949700 820406905 12991705 901851228 347412154 631482203 731265496 349237862 100643518 290151771 69927862 653390511 292153521 959581753 715989438 651628347 790095998 688872896 966491960 683514695 585456335 524039283 732140515 447549818 633160751 710885592 265244777 746251063 687158213 875079592 997664308 217949539 397340131 635881361 802900764 669661230 883564378 781784458 501706635 834460097 353488756 73926501 741596874 908557984 166098694 596149550 869300529 682870237 389994338 487688293 213468980 798289016 343720031 961578395 963280479 799218190 63521225 367660825 682585975 302724249 999634459 458880798 834228819 360687887 733600844 51035054 888371421 483007614 843809066 687597059 552511928 283888445 558001567 323167313 338852546 231967301 785968791 887318365 479576240 914065412 424607517 523989818 290948265 640382221 645479208 942017183 740558753 911344497 76644848 662198594 996028894 123890977 733062719 629524689 299796837 907763781 982534665 308373888 216406102 382090088 557449860 207885914 120119364 702925115 771962228 205874618 407595565 963321701 619004792 672534369 830395781 540758957 868797667 149350075 397141884 756786017 177036702 410497021 9598519 27735200 359107022 76702438 696478590 841107492 471986782 464873697 594143266 677238959 98288691 935536778 154500771 197313094 221606850 795565771 334270252 112019547 923305903 159664352 964741221 907288660 68956450 379156196 600043055 611459379 234359572 291175729 664187117 172269572 583119762 381101300 153778075 910784439 643591760 873823537 801225648 666280026 495222630 706010288 431764716 7756789 528855189 116935337 474095301 96854287 274374752 425468106 25188542 462505107 482652231 948299871 962211638 56898509 577793801 174389887 208494883 929185992 911125579 199437866 358087603 388178703 795705018 990597690 425305694 173485443 85972782 31487089 154082928 759439521 62980931 109845374 605216153 786623892 679980615 416396825 806638014 838607850 27533149 381398589 163785045 133934486 388248216 124020942 221921510 930701507 479351519 907102943 863524160 973860705 712531971 141084741 638151750 828789511 516629516 877267506 443327305 329297115 52709713 345132653 547243533 939453855 966465261 302073276 203625000 221596577 401444370 849028110 842139478 332854170 136926732 277303511 941562383 292831887 786615544 343815601 663455718 718054861 949544943 529290414 614665304 464373578 188220291 883300817 803875549 278979252 223337666 660859427 379104307 277844879 256569858 683377918 973958206 174885515 863683831 35222298 864893430 376858713 663130459 623951874 927800368 196221422 712847994 64420642 981757656 983053958 647392936 348417156 726321516 227653419 339188149 640511361 137936174 297516403 849346941 652954065 212872147 115380410 371948455 602699529 784054514 675908186 69909407 214497804 64495997 73595186 954907573 633916134 323995766 903441801 17069446 59058623 305212383 822983921 686597629 732528084 748476979 300153823 63354609 922675574 567667252 498592824 203280018 698354450 295616082 697488379 771153832 59768160 659230955 199951362 723750129 854596974 111698998 557634950 51633935 313741013 942649224 237263654 847679939 359942934 592429200 626688070 806326470 743475957 892315359 637253591 173419391 842425593 695464316 817735919 941421614 31499162 186931377 813511834 787591458 337281260 914036822 921524196 793094099 860493331 453687091 239065088 192148981 906451997 878045502 629680748 456337045 706140459 206555422 81437064 507270818 651239349 841052870 156596972 205466496 60392093 950501320 458952063 431017544 725633484 224118593 12167008 268467743 806000648 610263511 474782416 222976494 889174796 584872446 296027165 740860042 280129023 322250846 117157594 90380202 345495996 211740688 848508604 965057672 159066932 20032726 679506702 28555908 13679193 266869234 952169054 918800242 951222503 827013324 711394263 348938370 123809350 826091253 242740291 434237689 274399616 698944838 926880987 675410339 132687100 940143823 550093086 547122607 304184490 989982028 167691197 585648337 404312509 137643089 967956385 277357312 634812552 645101992 173870647 250702109 881521105 759209143 608944717 993533060 471472621 680049397 140487459 316506953 966940479 553045198 805339747 933821950 496095966 133218595 643721034 49978321 958466341 682680867 367480161 235546235 218468798 177465582 272193712 134323245 132512319 981591471 591993448 813729450 267876961 896173764 419356723 602535620 699850685 727066657 515976004 529804028 125991749 3029658 402126859 879307213 182165432 880041986 972686829 568152400 978473999 950969786 898614687 935026748 966027752 40846263 225340666 770916341 57419799 879100408 859436349 842400253 438170190 870350264 997616728 837396879 658770226 31776682 115785864 238589745 548892982 796785437 334217408 903171277 359229608 432829838 970566311 592514927 624489771 497200936 425179735 531854991 299123983 699725161 259546449 92898676 894002491 198029093 877544702 175546954 571918514 206633425 911491119 142163776 188238898 856166235 403552494 970618935 154544193 223179642 954585693 319729098 469306211 790954535 621213456 643539825 942782380 867291084 871766022 987424648 961258517 142107827 246946760 666906291 254292290 146060983 462106519 204764871 343106188 842286630 58011444 993237443 31251817 549478588 966423282 66610638 497122611 304379815 983441656 260051323 448356960 469089654 950738692 769028807 736662743 984540330 623894083 721685354 191723 334773586 105484713 526441263 519666646 70638348 787025090 246621426 818767285 674409864 948630795 295246152 480650488 361732930 688023567 14258646 176230955 152449912 299394130 258077425 304467861 464695480 24607903 1042056 46056489 722081783 346901973 662804835 688167957 296666621 9612895 819186648 472035481 255605838 376690729 164248752 770461986 209926562 54908224 493183346 394969708 723015008 731269634 965012974 928443106 361806580 535362515 763956079 963109667 431908908 63036202 299149501 740400 267037226 478176827 345266526 871516856 953282858 128834648 841231305 837383445 689661937 103024305 693840848 897449531 755108245 368130538 219937144 726838759 509661923 663730260 535482780 939926231 904389080 820994483 591969804 360969986 166730509 877418177 23021563 620464705 872964600 498936503 275456100 911803806 550860872 153816059 264113325 564362332 307054794 814623249 211176939 560093651 769740410 149587496 44048693 770358191 90678524 464750535 619474513 404564667 430378738 630837006 793822349 390180372 531521666 764469629 505859303 66933286 783505060 322953641 604288229 134154860 186365118 767927045 672706024 698092716 776169885 254709725 429651932 526690296 464554581 195201345 797784237 88992041 658241874 284354984 157571327 507961323 122758830 538490046 203210602 561044026 899531051 75522700 199178855 538905216 384966312 338853082 950741193 516691855 261144485 273078725 743054592 763838660 228971026 269398267 594867235 560189650 386725576 960468072 586627080 558146074 737772474 364115748 561603928 959251932 185541059 837173279 23809320 778031052 382403223 80156437 260977633 293536223 239033265 90240456 152460373 154707851 874803643 739555444 502540230 16737836 612469086 49743394 72616370 120682904 991255599 302453626 958074743 6281455 296850141 132242431 809732998 676169583 774441389 375226777 761193492 574086876 279563731 928872330 15117554 704959221 916692481 711613880 787644605 156340022 230124554 179682831 353321624 727246543 106119190 9510677 262481190 373849841 577333148 325672575 172459526 34222852 57328358 132501553 390426009 785534909 138955178 569051160 358306289 856041413 920344971 624775358 340872275 652525082 297070861 525776431 344303601 813184052 104034998 794146299 959070913 372906009 835547480 114602126 18742638 706826262 867791182 888301028 980466804 239466124 72847955 726920621 464370559 192628076 338809522 754631658 197103236 646005862 755927036 162430508 522411378 9297964 595075727 975148384 38730756 299603457 188457629 11590001 332586190 809247335 760889374 643122561 912002412 321222900 733199752 684843452 373323908 44275040 129407192 66675288 333357747 295433173 218776222 82778813 250305040 929090599 276984451 978619300 654225202 997044627 147135635 287794489 332752443 611276934 398344891 819168627 46274119 134507644 352125417 354066111 941137168 502681398 885791421 316439380 572380388 748353663 60629287 111503552 49902343 845041861 932936155 815087974 456507257 871833949 966257039 229499386 15954177 760892063 779948331 893713840 820837471 617971216 610629151 17497625 369135427 781649697 596705172 543210273 17141271 374620392 617701818 907466820 111574887 467091458 493729570 545181996 814991388 929616733 677270010 554144942 118831559 581924622 405326820 498822001 123446717 734575599 971876985 468331330 496273326 125492159 763780391 785661234 902969264 950706269 177050313 624806985 340340008 522497885 548401027 254016304 273459032 606977973 855729028 471633526 206895643 522810939 203386087 147282581 410133887 787141962 938271856 408008094 375207082 794931669 232336336 863807957 314326484 207936280 813697062 755765780 270424177 738549316 224338571 987520501 391203682 918631305 448815233 405411649 820512695 556609736 320492490 332978006 836746704 449823252 171010459 103113164 493779103 199886655 645907073 87958471 399358230 893188084 648130283 780186437 647034623 853437939 914252188 934837128 280706500 831419948 233227368 72646166 339710003 219303387 993149905 546258041 367810356 289860390 94269564 244560745 889502099 638293498 223990634 450484506 222517660 516337180 98657236 222717900 395715923 945158960 307227809 368849629 628297176 256006161 845262505 133610192 733156364 212688893 330341945 730486203 406038469 557854073 246449712 492570381 367777007 648747884 884439361 540208031 41336611 26867407 206058011 594029020 575691855 913753856 453389387 793371766 452593676 507111220 156342933 258840887 271864054 344824016 510898247 275319326 260022244 225141916 101135756 967459214 236118162 785697965 485923384 177785898 690181074 282318451 920665887 252251986 456457800 203823169 399671968 908555701 57984456 645604851 196865571 977111942 688596119 157231690 356417318 425024744 26618542 642276521 879470106 792686849 206621042 901148643 587689120 285247217 260790219 773305233 458260151 780914839 829680049 302690508 64858482 899952359 82633890 560214463 565229859 391681074 628517984 155506384 379681138 574495756 962097888 139061410 950315122 351546427 618386158 37250924 932183993 308676385 542992393 838870079 415634182 495646944 247371455 628024942 424263183 333517479 335444611 51496238 646263594 571747566 325700121 285531892 281613235 729052037 508707081 138472888 286284181 236162420 634562529 360067388 464455797 898366093 174175914 731951957 803914769 326764172 169765550 681061693 951100396 764075166 624593861 308688222 389065780 733754892 809343472 493977785 594409745 840736156 955539364 371242116 642732086 357700346 420812492 975332914 163633912 444645595 571789662 572149439 439460148 485770718 746164411 303485618 692092678 976783938 13646944 339151496 63579360 192505229 573205967 318569177 50629845 157776334 587730480 593830506 792620659 350313968 985931233 23342971 646673694 317986797 131675320 373818137 540383835 280657639 348481814 854883081 552703227 871195597 281860807 131576690 754597452 78479737 48236062 767766152 342011592 916052655 930570427 321459891 811218717 993732652 301662081 831435823 436902169 248954253 424585777 805159540 186910438 869994955 669094269 9840851 667369860 516886216 806785972 627088215 879093555 133720653 750833277 354509626 706084577 176238394 789676447 291779397 614706639 587605663 788444435 694892960 691929481 492256725 569527890 521519063 72692871 314878791 144899319 388043688 990976302 135594304 952030363 888863516 333484993 150891278 49651687 353757434 657163003 800090216 980970316 81901559 369913269 137734233 854141281 387867001 331898230 21477927 261479010 617680262 663733207 429989384 810462667 850164116 402105577 965533000 593420658 637408980 469744838 421548944 838652547 414755829 290708281 684798421 949577734 497459753 157920363 204717472 198361729 898358712 541884519 874797982 355425969 632442258 701727397 425704497 206348704 472146842 70334359 98914162 272322001 718999971 459714060 183827005 662346318 455963316 905812093 338305218 344471549 707486411 866808889 43952609 154510094 681857421 273109387 160999016 414865270 434339522 341442496 3837860 154855984 245634306 496920567 189743687 300668301 352681178 907404336 763130263 575214472 812339412 624312176 517586125 915191016 773654289 597464011 618514811 206728681 572427646 29557904 957505436 341380165 287018532 198733741 311332862 63228763 875363450 409290671 991758784 764381860 593769296 550571270 367699733 919780894 636310618 649497782 804920573 307918134 400274274 966635766 137998223 791969576 532551925 748700741 624884973 721716571 680640882 998165503 887356716 523998975 365939403 422942384 685204970 131372521 866030152 584972936 539262384 202112480 699155041 842011598 520054589 344200439 557203419 312986610 255751960 831050741 908864823 555010580 22717530 393877966 54649847 598867240 358094563 108113507 791721831 347419380 467040084 971258 545241752 592058231 614107391 124500922 158763487 353193333 327762836 376689372 271219257 971888646 953551619 895155920 496802032 167878207 418935099 125787 802602013 378865699 285580360 381418065 588524418 836940679 851269166 532475812 852023836 855602948 885369756 263776216 193228689 138292974 786662898 359979626 993596695 435450513 391518132 41082424 766241461 5523956 864090582 706673269 479018911 353182731 909302668 171673820 12964099 128647918 598831829 808875056 317201150 473109000 725165978 653076568 184130404 697507794 411790309 293336822 875265320 747882380 244940156 685827918 713382383 120336949 368976418 909760773 102048129 203490462 308710826 288474593 416242587 761565880 274399299 325937985 894408056 501592876 59287988 709002906 778252364 345966025 740089177 484882740 551701042 690179466 837808969 869426329 776549107 274881896 37481373 126517477 992035846 58709141 523146288 554686171 529220617 496116154 303616140 108089083 697763171 766952708 182141308 817230519 510380965 209838806 236433039 895252004 484495542 35407730 315805919 446902348 631365056 608001819 615574339 252255997 860499677 132130686 907545005 386798301 119094834 780902107 1209674 22090952 738148188 31427214 284356955 706430525 419282736 125296953 964333522 909431292 625953468 635994367 914601364 732214514 862588931 882509839 598852165 322839578 503822393 259652461 365967151 934153649 969022578 100389831 802196297 551946326 166723973 247811588 478882229 704295722 247775097 453595409 606235361 421767100 160867786 90296110 989703077 292103940 658207947 611290941 729016507 181528775 102249576 637714432 47376222 579733395 52828308 785072046 668496883 615858232 883536281 504989570 319888240 777628111 937939463 712650345 902865141 117645975 4658726 454737861 491331398 912306593 80754117 441351864 796825701 643733841 101357312 859676244 117212790 800593405 877954274 43621258 730043775 570673171 671006434 246321093 676079851 905414696 786474437 134500313 257531029 649007756 44881682 630739617 59217486 930641436 725582529 128669579 822587460 892659496 158141784 699019617 325457443 507616825 920823477 501479349 13629950 680707750 814171189 354570351 844870490 475394300 253381686 970155468 275361326 377029825 616414358 932935041 433080355 249595773 585955235 323546291 531745719 689385662 7992664 592843415 679679957 431931922 554189364 924382830 353928093 823462912 586897632 618042691 355294879 831155172 139465071 897900509 243983514 954959739 477849818 453958433 96373159 135539822 180256781 1023203 775710909 913954348 831145862 362675292 321266875 662098437 188534219 337500410 510268297 871047823 441713574 27570180 68711860 110772042 240937135 785643727 596728936 798765732 859556927 939750524 931187386 591454788 81882564 289768233 626302238 391404230 601263962 981070930 714530434 483544999 317026538 55828059 965878710 366905776 925620389 562365322 859026461 327738467 952357623 507167363 946907258 552693607 338572992 213551535 623295426 754131670 116195356 460767744 787828482 740375918 36553144 526898129 461114880 892540703 277681090 953327763 53370515 157852170 87526340 746446343 8463605 1527134 301308187 180810706 921303443 722763874 358654742 545116985 500094269 401180472 605768516 342406246 339698771 150146025 751468416 912975228 924921945 418679540 881014371 375178628 201131586 932484952 950189574 279626299 413342734 922246002 969723597 41659088 432394333 291352064 10880147 566233802 824499068 968516910 102549234 439175745 329827478 145205809 404206770 700417751 630963244 552371426 123410085 147380876 222299607 696877982 611810624 782788277 568425874 453720653 395606557 516900704 202077845 594729877 926843802 969719020 990394567 821076395 396776326 181887656 268471953 566260344 524843469 105135191 165475865 260330989 519757151 863217724 594835318 866088609 881761604 770814405 646521001 111076176 822323866 47628838 764564749 273344976 831258763 716389277 864489687 354878080 162623497 108067305 667089624 457280641 861501997 778280423 259932532 122820924 829354524 47589948 10444118 849819702 641612846 959451450 858896528 452337788 475136988 717291849 521221682 591993843 436853883 134915547 573941619 221078670 353741930 954986718 958685977 915813367 149985132 86114976 296354259 840225531 92056695 925529937 487178688 126476866 364592 683784403 956943977 70813807 481083162 129765704 802233375 5837443 970082455 821713775 876506592 256736516 439390393 956586451 124376573 342880043 849404586 886983603 579712900 455177748 546693841 489850860 120668770 195605698 140203862 857890140 224547633 973186013 974309228 833605994 844535676 803946942 831676196 552435476 281907216 11672597 341183379 665874304 27133954 186715259 677500429 204889885 888954602 538129816 750616933 27132178 34875466 697780769 794925989 581316538 733191035 172367098 832102477 751449809 477282380 804098504 682357588 882223278 198784137 136553737 513317691 884423900 550397895 497020412 928811890 310933372 342811062 358637030 968472748 259989718 309072404 347246825 857911726 806795071 176632449 67323251 393508343 817524086 93010328 917396556 969508820 796649780 632009772 793044990 998728793 579727401 689410016 987078073 802871313 254824395 330722718 234732538 472164883 336389660 750155571 957248069 124004166 312126216 648448596 251553263 901520386 475721635 128784652 602642504 928321034 16389987 900322806 572806688 605897875 861577448 872889200 949778242 827975251 632419966 762332970 379773724 73668134 842635982 257652793 875281836 631089675 390279662 675129580 700472529 123434941 83803407 919241441 34881634 632725255 738203312 501953034 752984728 904384317 824696433 955697051 191577015 676611553 90139272 169623594 726018675 184882364 808795491 976191103 136664831 957197351 104023977 117427213 519891025 797276691 361390395 656805438 556374555 99374006 206606538 215449016 583185385 436829189 531787238 414419716 817334483 88035099 397290540 551291294 841199723 822654299 22518253 573055167 788165862 501000720 388329611 839832025 735263518 466578660 268362118 705625768 199967778 658021591 956756842 542069163 730691096 86443356 627267340 482454766 806302549 851018788 100111207 205912751 937643452 556775995 642308423 348286630 441226016 202559149 869638870 947331776 873192175 382013509 344979552 786232759 90571023 379726724 910530703 268644294 765947062 389542899 996888398 221151321 58503004 205854563 526855287 798040290 621018599 361736369 944991782 392553264 380991471 729081161 685504974 728782190 725049614 893428410 709822768 946969808 928564302 329034749 674615504 17708643 802276692 496967897 698802352 636924331 366219895 564156045 752592048 426759538 404016152 47845369 863066438 527980282 51984845 616994446 494592430 465694336 37970514 461987434 303307135 58929169 264213910 176185402 280467104 469410174 573818382 130267085 169798267 42207095 774346274 417190636 503366603 897530989 458605581 991314887 844957303 172559982 562673440 817135147 971110781 654319346 760445219 951114072 811464345 213974176 263881690 744951255 518487613 762668527 240608939 19297822 505192597 897661820 758226525 72169317 473663062 94046868 403141121 727629090 736474730 853629178 290518129 816475356 493821544 889740930 643455780 723183228 40477134 737259273 276037801 236371877 194087968 231833238 262235393 237794320 757749765 393959993 190566382 99350407 153341763 802921680 575544297 539038819 267308555 269623148 116125359 354541513 983379259 755126276 277147625 889762078 626805625 537316909 820971049 982276254 371097058 113640046 568365089 943355432 723904183 575923621 833697944 810804325 405737116 131331881 184202499 596854962 211305707 607787447 690618948 360674946 495245633 622955230 802984624 571376823 621808191 815219036 522594348 367302068 625627539 516677667 554439042 548481049 30517416 161798586 477964688 947117368 691608171 345178014 659014740 230538634 239539352 676893315 536071309 798969804 836573413 273603763 410259324 389869875 715992229 967037711 269447564 86087264 260050599 671685979 217730656 860645964 212906746 943533869 716449781 86901496 925910026 12462580 456433297 833486128 564392125 600610569 728095487 14398992 401293971 658679104 100771537 494191476 400236283 884057975 133451781 315993616 46895076 107141823 23060600 459284772 242530246 51563955 183747869 912456421 206788474 899660709 981808775 975778251 279848799 470639044 671479542 691560472 583785904 548713045 265381476 188277169 444965368 453470005 247765772 861212246 721034152 255503305 806071503 191712313 340636218 956558794 269922490 991404528 184613177 678675676 567581777 407288158 839597494 345686746 656232833 817896609 120606315 15464936 656973115 973713942 567468919 147878858 141903896 89341630 214482484 106027631 952722633 785556666 409441416 487933484 232714911 782671598 328192114 112496240 547403998 51773894 943979502 862611252 709770169 398398323 40410317 646496292 60772934 471031 521795789 927447723 88800584 621966667 593280486 944243965 309778558 538570961 433673211 776373746 235193195 221338615 523159907 140529158 861225888 280156488 724684553 245158994 644300897 761467526 65224385 973461422 515201486 843727444 790387380 248056791 799654069 732991449 37614383 854034486 871292417 115928749 328208061 904392062 128812768 881967070 950072914 530080056 473797896 512424223 21705610 453959445 701226248 645288163 62718598 87544938 624669312 655436497 691134905 473389183 26582501 838603526 583959566 562490188 865464304 673821600 925409686 326493941 693034801 488749185 306023621 847726463 345703514 361991450 135906541 768397312 431245587 624978489 471584128 19812055 921391611 975813584 144972274 224242688 674106236 68624392 798848561 418375730 74437741 748851421 688526349 767433273 204923071 327574610 483292514 178378125 210774553 496023781 863608913 931696117 450032016 696806143 518660907 121647566 230671980 717435078 518748823 63395559 701470887 746924056 979990972 646050761 377315306 116644932 634924163 352112092 169808187 539596227 317882166 779220569 75165091 13927425 425328968 401565492 224222377 334651054 721431508 404869570 756252828 569384307 279949059 643702124 283586220 139542755 615983749 651145886 973025294 214771950 197895523 539244460 210216027 505448037 395548749 81359730 731193248 1716638 928318811 860979341 621424776 85820489 644869138 962753130 295983880 428855370 978256499 661815673 639137293 153347300 818609323 843059082 360431402 546403003 342460774 167447380 182022537 349006938 688322127 407202616 546583926 917141520 570599670 929026421 945065830 969570002 485483380 533510009 150945001 322939264 964209835 567323321 641706001 752960675 386704423 662139618 631114997 522892079 620622840 484969794 205896352 709223014 907014904 509559401 542308013 291887276 863933781 728384779 881707574 703911857 390092692 866560073 99461928 770890105 961202161 755202353 286322979 767104666 214619551 227125618 584723098 252166344 83563409 954329169 494141009 843844513 306862924 473085747 234857622 838489348 822433858 19223912 467359484 582125106 997979599 330786168 834789696 580757323 973753271 78025849 991021154 379424747 478288450 475165461 239377374 97193841 670342762 113309588 554966049 480812807 634845099 54012225 920551568 863679330 463033944 700248144 40307021 142251419 709944323 181899791 738524967 87217249 97119490 718493294 833884987 882531213 658293439 891162070 267751440 918380132 435565015 237893060 10269497 33463373 197078611 903625090 399541968 752626844 83865116 170551494 984154164 344015991 633468190 141380120 594690070 600428174 227098713 284816221 333088575 763967136 138567777 607269754 843327900 692645574 838243209 471973224 180925496 688255324 461383589 941430664 758191448 988923001 926103035 428941083 610481088 229366468 583024415 985501773 526512801 58508431 997462668 546344012 154742240 890663647 542394232 903543604 860825485 935431536 418093424 37010569 631073805 606348953 790758763 140307328 363349269 147856998 475472433 539107856 855052311 648534987 872809259 325366784 334155014 51757458 672650780 865693419 606376468 469274884 186396302 922073493 396577862 904641292 448375740 458561468 600664895 12947622 618612840 605071618 316860287 359953947 933755070 435168124 106620322 200199250 477700946 286025543 759960514 439053354 192150497 170968911 884851916 198551410 286898131 865936950 202498038 805570726 158684346 184762726 277828481 409168630 837093555 349350303 482821701 165925016 354453209 445318750 688358974 44920678 915968517 784369367 958912417 92605049 980588988 242107343 563616768 142694125 572879280 760787455 899889003 627968309 966227762 205280546 306975376 876593640 738190294 826269832 90772656 198184216 657638194 502964916 783505750 44046132 128609463 680972640 985583677 462070990 865596639 101119979 610864519 711278657 881752761 510350066 933554571 693790051 718574783 741131232 548617319 753584660 121438173 950284118 369118603 228725563 380131621 934781701 927348963 471581491 447692340 333519548 100591613 645498619 996980111 193567274 174366604 169917539 971441516 309810591 922941758 89790360 141651893 843096998 426195631 974235760 88419059 825969050 715466096 92351291 141276072 681245710 449787846 652290558 586952524 392997489 402790644 594241850 468800078 787255406 131870196 291012333 521411762 508008735 424481833 455455838 148949187 525170928 3749537 96089260 394342975 632317038 738385092 946953307 13645225 833402848 117149381 178967113 378208546 807903032 312471504 720582888 304939439 173860229 992202859 788772153 115688857 965433399 202993934 771663817 374019481 31317204 845446525 527353705 404813806 116917111 506606897 998932492 844641877 365843215 459607624 396453278 345071336 167466328 176768074 264861976 135544836 380158753 603677736 343617003 842852487 263804376 878736581 824885627 500431863 58168501 620556798 565183188 426832194 723999605 26637564 589768953 698946819 121802478 439068204 29692338 829094715 971434500 516127362 520538653 420044278 45796610 361719816 229734081 316479890 477560487 751372312 365913983 249511161 32137535 838302695 268253261 111170992 116896155 990054570 352610479 285680920 959359044 606131003 603388191 736582991 652735765 273385103 87713733 170529151 327022033 400374054 34180320 62152260 249619902 385123749 893313991 172574806 882991896 249451543 422142097 914682013 203079494 80537423 725064122 166365513 222021245 976693337 558972626 374696548 282981139 691266619 261265937 346409318 95545571 25711988 569718567 982004026 837665714 555517418 222360887 918304828 842415981 605972524 301883158 721853927 494218548 967903275 246514981 846990325 762910903 135886376 663274795 473821212 405778991 545370929 723801608 693036240 539624102 754074964 371984519 706953517 685779824 981112401 308799916 256483942 18863843 611090529 857039011 793538337 863309775 686545857 248513049 357368194 196971042 977757698 616072814 16725518 33424000 899293378 987003999 958925026 479639562 867848404 337444147 515566555 253364210 159992263 953032295 114809998 887664936 484545104 381491652 843708259 37725554 301150258 818681471 725619174 850358543 495747890 805977248 503410802 704021334 453556557 388202412 23647110 453825367 443048241 448971184 401111890 304388982 793029739 482955117 285419278 641987180 610145611 299571330 737680141 429911886 556006367 319796575 95159508 541193907 779128867 779409203 711627661 63136900 318272347 779659924 687817920 748509153 752081956 25767701 470590966 356736051 237850737 530567322 485295905 364510748 208715139 946087540 479002061 967122240 30991716 394349197 322055044 906126552 604025604 521402664 776522767 245324365 90149452 712677045 833229716 437006868 302705565 348892399 7739382 118663785 29022912 875704275 450583937 90832586 480458001 497725343 949903518 872940706 413385032 32553500 572664622 644525632 499250016 24820679 981877326 393847475 949935380 942309709 529868689 593358009 516881121 839035814 403783466 587867523 527532531 46900320 437130952 21419550 561217843 527875564 682750233 650201008 17893233 253772451 959339978 134766760 475339867 548281890 217677282 557366324 369529751 259781989 957715763 940860108 927401578 495332290 739395255 483411532 204596392 711734689 392280300 95553505 437513854 15589932 742121470 222328287 864646936 532121750 525597873 518595841 524253922 375887401 583624666 482201402 999014521 439837897 302003254 966052694 163121847 896770638 964753575 764463768 882313008 716847929 379983064 586785040 615283431 349719670 458733833 18732296 661861464 709761898 889059794 664495690 251900414 46548443 562395601 947899331 736077104 441914710 871964060 806833016 416204494 203702243 346726024 821212372 753743114 268416778 116439055 264218046 670706477 627952644 395551210 807963364 47719347 199162951 815449548 564205844 440243837 604256639 944206532 976939491 728738718 337479290 683596311 575312078 287887926 920488743 418000538 616565256 816032976 874424270 334009200 262956679 179847165 50327634 755228932 643262541 89196730 105928404 466286621 573374990 308293667 175004818 130092408 297698769 571432762 441120201 530601181 258709968 710422003 266145847 276294879 272411338 833021655 823509147 105488197 43010979 394193896 676251240 757164317 840630773 244028431 254772209 894059304 300566883 303293165 322163359 378669971 45616279 654176554 463787053 596965316 389447291 901502232 951725334 620022562 33459125 920373199 44742082 216526180 157565349 936918787 421717199 698455522 864526235 143168752 512028481 177449563 932864167 564628200 619785561 609886963 247652942 570650979 488996605 210584146 431930185 242066771 943167624 158379547 14289191 875936679 85956845 426327478 431975078 521391640 752317009 87033736 225061020 273996455 310377487 972832320 284509615 180593722 292564602 658867734 873385076 703910246 111399626 820225476 987055857 915486010 284359287 485158036 864284156 69334718 287999228 704515000 526409515 369114019 345533507 590613056 727058818 139432846 394872642 699820976 592696124 883899778 843937768 221511287 143457762 614614903 216269297 445791457 12740896 651897583 858878291 875363018 647809809 194659557 5378403 815336459 766437334 912762311 345294422 910625919 812377846 840788204 810234065 177681191 209014826 35204166 423792508 750324085 386930999 796906675 197861091 983977668 840995040 694678904 507371512 835982110 191808538 303465864 382652735 425336971 136339071 12355242 808998534 940981663 994063620 61998148 808613991 589545714 886465771 333023531 57993427 970299120 501912588 397297674 354274431 959908773 825977055 402142989 995546276 390722090 351674998 619285056 496133092 883814347 191167276 7697112 52935869 963890238 982684517 663224869 547091850 733599540 303898408 523920722 694073876 540006809 717588799 444857895 212040034 798915457 485138698 925547424 663920125 289765442 774176382 214643386 845339947 315625032 598758569 512342838 485934808 60462837 866162573 885737863 790682098 16599877 855876963 255772510 282207702 409537587 93536271 640309260 947600039 847680192 924718397 130220127 360833680 164168015 808987529 931434172 220918095 805046947 679983449 107350931 278833404 859600932 860739795 298837733 213554552 627839249 793957387 827376189 296754662 47370385 321584456 774161995 240304641 778554246 794764198 291875974 633745527 756011664 936705553 364146457 775071184 981898215 917675905 601524462 470591542 6351617 208819554 158084367 603775855 553725302 913217357 266039989 98076949 942536812 309957709 533618544 240475936 790076517 243771055 193227851 260838694 125934921 134716518 366557634 197910588 165117597 878702652 823437723 925016936 314235021 588490866 120783079 707763143 650208482 816818256 234967689 290379158 39363607 346320138 744860727 763898042 820936165 138254082 830821967 742106984 352982522 796879698 264754299 455277629 285983717 909955320 992344122 223337110 166397321 761872781 516707277 447334393 863427032 836430862 675786634 614176248 279261794 63323298 591672670 988691193 885921308 642534747 335449167 927936582 816082914 999319141 860883116 164723063 684765713 97287376 74999157 131254925 268062644 269392467 551384358 215278669 515072867 639116369 834499589 401219028 171646147 511846069 141901175 471736879 25900603 59037470 300367783 594744381 297360242 86686542 963398303 777455837 609427787 388310726 259231806 703412989 261743273 955579340 310810966 235226059 4930944 737332525 991281265 510433480 243314122 943128524 172748238 711441918 403383985 493586913 110544320 711680482 96312171 421393744 329502623 477026867 35858718 385844252 676184386 465075925 459584645 795142084 673307925 427794312 299148138 984499375 201371880 77761932 418455002 593802743 811308345 221005767 692406680 839844042 55310384 403615928 674785596 374427858 302660107 44251852 830725250 544299873 247903152 27724485 926069755 213190874 94944838 561790639 449578365 719998975 786150656 883144047 351690691 736492002 698606250 648839256 525121329 540931699 681243618 13738458 943786120 703772945 927984499 127323866 892200262 359252560 489762699 720984066 155031988 811073986 636618665 510682188 741033236 501227266 545398793 418928223 252400969 441053411 895437281 560651274 769687912 367244142 986945564 910626575 502535975 645182990 258837169 968852595 563884020 32608889 218895804 166227332 817129147 192134249 880972608 719919432 393690907 874052489 16556592 878950444 446128245 206702649 235210147 261903021 982346997 375887127 308931958 577864868 364686031 711802159 52952852 690935759 157562145 283412559 805480437 264007172 670147536 89385358 298891982 611772108 325421118 831050922 529362775 433448670 409225967 66046853 866206203 439208272 555832521 643917844 324689144 629829523 954900929 493885729 821661962 947352271 2857667 675928129 549787080 68081240 607808545 820016511 800103956 342806910 281449812 329081734 775902098 302341774 66723124 114351908 111538372 980207684 15609407 132509428 988891307 794089448 378733061 51460046 415026311 177983577 606048891 821250974 813270783 227202044 946385279 563697707 330506376 517413994 696229718 259463023 280690472 695754863 451171381 189158154 778517499 618151622 537300709 127482543 248966699 629228331 454345508 187362086 560531914 177369694 707338614 166907546 295143588 544294064 473674845 125972264 219586232 326188309 910199931 492221983 108021458 66539501 272248544 410955902 83236912 370190582 602823388 272578457 422932389 456724003 746627114 300106854 208816092 888987727 98222253 932659430 725808975 264372348 863300629 463035019 46431622 816120656 665967463 917750371 677972800 630169978 242074032 295738888 683947975 323160783 299889672 992364447 252917404 115417376 754056685 350557137 747195921 333651036 85068510 547231993 672983729 170216177 896717543 873910984 89726095 628489156 142299738 505407347 370133566 998228807 538415441 730078 289706886 739154620 798973796 926083857 267699850 797451201 544638044 255113468 294313419 312876774 239536637 906265466 104791031 374918768 72734101 785245159 78916324 21007325 269531583 698796875 122280812 842038698 413947317 621901633 621547804 754355861 582850691 697432945 353611519 570076056 817870906 243039949 447785776 830337354 571860538 455122025 116740063 677312022 315852665 413509122 93442866 965537430 741710337 746656362 748535525 423758938 848317930 121708419 114297116 691670386 934140927 923496158 536613819 892938008 928322597 118034313 7079077 179574072 632166520 238068617 737478406 598155165 939853723 608499973 343860256 788334906 463764105 548408753 463626471 694721414 420244925 793392551 738724241 800837222 100532730 360738139 102560996 730329322 127328505 285839675 358330656 464937605 748405386 647198109 398649359 250923269 102555105 641073397 672895966 391952608 943725082 811238565 579271665 214901977 113062091 284710908 900648632 716009440 963777688 104814340 545482329 262132724 695835337 196051105 746008800 805671181 752167140 263505747 896713703 560684597 587624113 767957461 182546935 519260728 649007283 223677323 557272357 95934163 814112332 210453285 893161546 6251972 302754523 632051839 513461760 747917262 17265049 182071779 376277011 566323814 594221299 143393550 305146194 688953389 425682992 205908770 781126409 893633350 236892991 344799879 980292968 589484428 590834009 522148760 55339850 526418778 559392843 59778718 658513132 15350019 719107645 557120905 571220814 532682175 506280073 831269504 117964602 540205207 557945008 275043895 730959614 67276836 897144497 547640730 320224313 666502090 721311504 767498223 937063756 717463115 841684460 144171992 713947070 198876257 780226508 671025457 385633504 125699625 778216290 501849650 923286721 403508326 714923700 256120234 72892816 708878104 691225983 709177223 648502534 945183232 908328307 354990511 616133378 447994270 297483224 246600143 999684446 577290407 995855538 626416255 120757047 634734640 156995755 588380097 900154670 921513896 733930022 207770098 33111025 71184305 87824642 233963147 847738929 757194522 50207770 740879106 336010310 836851898 233120399 761609163 563412086 696601091 245316817 318223540 379944190 760553586 912519276 420245730 93435781 557451766 510654 245808163 721733576 475005302 928711691 8972693 633792048 722122711 58344328 782375854 801603451 585514854 372187389 45900709 665064151 950460377 29578170 280448158 660196272 933554107 991705593 756546 335630624 81993897 785854701 720297450 530870576 553660631 597254053 517833926 198886212 43735608 887094817 977756960 980264229 476482651 587609629 342808970 803069273 252566436 146129738 633734815 123047988 310717591 326153733 918564628 862115701 331467445 930029118 893580104 98519631 956306776 120942452 212337374 432863927 750207577 926465420 32226497 807572336 790864550 617121990 123231015 638324713 355644388 79217012 294809821 610498800 661441101 457099390 440918060 609196988 655084126 752926070 140236208 174051589 547178932 279355623 513357241 225868742 760821128 509637909 317597682 32187720 179650025 703408981 541530783 312090609 707032470 31627126 962670526 527145587 266762336 63028829 369120447 199612429 735503466 107999389 261732162 34206368 466015370 800770013 949694857 962459526 136799826 851241131 907688960 291036737 490111960 455434157 190331203 418728722 66251947 319771411 728233336 50234373 877561096 138540542 117621541 166135425 118650359 876209412 529026678 128709061 788479597 761187548 277889906 68624196 474039983 13073356 645228052 676130574 921225892 316876088 421511627 784626081 959677639 377082643 885071067 826043630 255962928 156016169 861836197 710396689 545716315 178163268 126869329 186985804 124746446 171837943 692700386 390566388 282239684 389427791 991070544 565009550 439188610 173435477 965223151 276837699 251091833 474954198 983189175 452832309 499292519 707233797 184316520 405913034 22107370 511588691 104757832 136639476 79169814 800988283 58321503 903808779 527547524 472252259 160010927 261247693 13853520 864995299 319005911 839417924 374464376 804565703 366757150 317954898 111160281 396572990 732040607 312046080 338833816 84397596 63957245 576811083 931291573 933856008 189644851 167231792 195194286 831183815 925537507 19479438 816684336 554433651 362959495 138432057 735710067 652381705 633384930 436579836 671100513 812348764 961372140 996594412 407686861 859627504 428739126 859480520 644734403 380358372 995239875 107057848 728969854 514493024 703062278 285597878 826738884 577052086 984890867 138566113 714180198 376649147 525075742 74203866 847142833 426954111 123018908 736400344 227510244 521869452 406541593 571766925 123120095 858131245 746039148 729351324 150353707 328224161 880949308 336171132 276239148 691609703 133182981 190415612 144467583 346990364 612973114 601686591 758027858 392663853 202724635 398933363 415294386 599810393 794704883 167187463 82781548 961684284 561176631 339212207 701660546 883483539 786527106 130518995 612150395 575198802 856479229 369784491 657051112 945165373 700461325 952433476 638472044 525248040 701120523 828165303 872245740 113000450 767586825 433653602 770721502 500766417 878158898 932491918 920020112 168953534 582042071 461883983 680235239 195915850 10438605 17079665 97388654 823712926 188996380 573973247 817588902 680634434 267321682 310901761 832159790 347507673 89720184 478058249 122547477 425132149 430635952 520218957 941194516 180239133 562014595 383329725 671840323 819199588 434249912 559773260 796297754 685711526 561674829 230343434 852688890 631671085 665512853 927741875 163899861 737300238 880194585 364750852 224238863 976879711 785570244 369874573 866269513 922547629 826171839 762782123 32396021 667754735 894275005 252904691 509286563 957089083 353000303 556960581 648819447 425919845 553692283 75731891 466795724 796915644 12430669 311562730 378505160 441265699 457088307 865886948 971700965 357998347 82984204 817585612 312198015 570938397 567142077 729341462 587320760 233883940 830096125 167728248 392225948 188142286 596667971 709763090 122245016 84911450 891696922 188100804 557798320 440943933 710040368 660597722 15461904 987467893 92139102 386326718 266520757 796036416 36712793 435674938 248792751 434412150 999507676 853486385 752957740 876574169 447947562 560947553 789034699 793675226 173201579 418860164 73612645 619961169 750367239 998449075 661667696 375198330 598129072 724333837 299892838 339081709 108324774 75216225 443990006 54487210 374128384 668165351 163697046 277978743 767188426 484939807 218559094 822360776 534954265 301492002 307290331 422078700 344103276 94569025 327757769 497549726 584201199 87713844 214055618 876753409 481628288 648053360 347736032 45873327 283448537 763199531 48564885 873068561 609486664 696796936 595749175 769688948 237473365 718871968 428994060 225330704 880790075 936352432 16795806 838822198 491261428 763496741 348765900 577732181 392782813 319133420 796950805 632969346 417779714 409725668 136493897 751807398 133394355 993035351 376628254 922357896 492908862 200231222 841646042 882851354 136584213 565960719 416280188 156938579 160750194 780065103 754565263 929319718 415588305 907932156 25212912 814197508 126355962 658557808 709381628 234715048 950687218 736367406 90862351 12425980 610755621 520780150 257084639 701653554 810747877 754364666 866425983 804963653 995495936 468817962 872603270 986010463 1200065 982848287 373200308 539006604 506241002 9739921 765912206 239991310 7424086 999857636 395611926 610160682 561223863 206062023 28495111 141612173 826645170 48561463 264566977 989877438 658035405 150236185 882643157 425660443 85999516 543285299 131500833 576845044 843274425 836411613 838487669 572611181 518881958 265839838 540669255 357289453 456945233 32451545 581581001 657327290 671365800 943191981 247980650 736067630 434170811 154120008 724650784 370389140 42950085 157760256 17844508 852897545 74850119 859956938 634376768 207604013 946279290 648801069 685191854 810575764 148349827 910917830 534420197 942083316 410284029 784326850 996482996 295039678 896377833 645887056 61993688 933689626 736006685 4216153 659680088 181868464 401248478 294288345 102162601 707869467 491987687 372568393 938419912 515946744 868335158 664864620 171394695 174213331 436920847 514358463 709266246 804808830 914318657 821014205 461526578 185163925 182278586 696268435 335377379 636141009 602761504 597034674 356644199 626382569 922448322 672424379 827664779 88309939 660320313 713985125 219228783 495370319 395028912 959387980 675242174 227001588 503767978 824204883 605555575 677682471 215229493 216649107 487344633 399019493 958857031 211709262 773493234 585730210 660061751 916132501 608797541 105872702 229239141 4409847 900797515 913062571 399900729 268989104 180465213 702488719 661842151 888215972 298800596 533671850 605450548 981005250 815664398 906131068 611712579 201752269 264248715 294186049 392874043 843465831 12388284 384570171 66599398 176067191 160483808 755904704 558173943 962568668 295475267 802737489 495656934 918089953 947422236 418384599 740621176 786546405 736939749 749927747 781388433 501193200 411770468 372955743 619663435 441473148 725230718 702125841 989115747 422624164 880101557 690065184 986625229 591840474 311034370 796018701 553412765 578005085 993482161 661583306 545561461 214163845 665849531 955133789 978487911 775621070 844713206 45994491 735917122 467947535 747725040 120771597 973666725 795280960 187944795 114934371 379393232 328897764 729352553 780731196 90313339 312302971 696288036 714393744 167293238 221488591 78704725 292019315 515968373 246379920 948917296 372049522 668032637 898003978 263590853 698201215 236134755 582987778 864840587 579020725 837105310 604277193 975208190 887473269 203969028 200597562 75383729 424271711 211297368 111298050 633070837 267476520 961098127 457944660 28336786 57110990 287856124 922940465 818447291 881406498 383169839 275971717 579575135 382488122 77373820 602706865 697842254 339601719 440055367 81573085 583344164 843104856 663067247 452568851 438161035 752613808 192262365 862576566 414492994 279397556 794611636 553913475 165201171 175340138 809234934 941567099 5436270 784339428 460120198 691539194 269763088 416109222 711128719 462344415 565264093 943403041 593435073 7567959 94840480 731748028 844796481 899335327 6034701 623306882 577183158 108856555 521116593 235008393 424452603 338360729 235635790 853327171 387916546 614597606 807375794 876831764 77092885 956248996 273093016 857383364 718602290 898318080 994023528 342537273 462739033 104611271 829339921 719764243 86490121 750517318 241324800 715702667 996817382 534719661 282547693 703977757 355773669 471619372 72026311 843036211 485057345 652474467 371165993 292114873 324888994 150489751 1594209 660478123 283789480 717744217 801621949 434603687 29980027 103889877 940225396 744056759 106250339 540483652 683787844 439460624 868873331 921373484 548410882 415369932 804544695 934160751 374637276 2100016 865172747 857413826 885147715 780381201 486646929 160946617 352665524 299829221 303601555 594970444 68414388 397444073 703256175 673342184 182733263 648034538 750513030 252740645 447604130 713842910 759457644 962730927 383424991 718194566 130912010 382640554 78653142 768095400 649888557 806807257 624958151 169885554 645088710 930788880 462968276 258226807 37647174 866167452 658057834 423743396 137463677 48838037 961022318 573142745 374140812 907354592 162199971 666660659 875976006 859356750 142273070 646882206 540455412 371515679 3356096 552988070 832783916 694310123 979573944 168599545 233502318 286121591 552866065 357949676 398344678 338633008 294553005 601484215 704880441 648006572 987468259 978261864 579181165 190653706 998146872 990711941 54155767 898152580 504833000 155629578 528806998 244266501 494122877 170631880 360736885 737607373 817468900 716854350 645541466 35257192 297169313 574134304 122404421 474943278 285897833 855977355 599768502 622387208 510375674 524769671 512636356 83027704 483848047 326141243 980097290 585748080 611354013 224573909 768194094 991606259 954867901 800749386 471012855 603869411 712226969 495337098 857694511 960363231 362461610 658866476 597009061 453474140 772670257 484686694 753726574 481546329 91220116 874229051 865303725 663801779 860902860 753642143 287908510 726868022 203948909 566953771 17180771 17655820 442798188 811041932 32527478 331778973 939835271 5682899 308178923 519025624 737218781 983126810 824429341 889358504 29401391 927043780 269011194 130875534 887493720 90231015 876671925 898887459 74627164 766405489 271985731 864872473 299570756 83804575 586850208 231527964 410820581 37718205 147868236 954670092 846348939 252360230 410651008 532092922 234506656 539697216 538549033 391829059 181160993 885799348 663608776 829881474 492369444 242741306 94013613 114136999 98770051 457665337 53570037 841392988 337201627 41175401 965024900 544258333 919770846 411173720 589446090 791241284 695257026 749624098 904877846 499764033 793256941 48294376 37533494 212227981 224340178 318387919 770087412 944026308 145868875 312815354 574248429 990683890 51539130 440881680 347818909 141613074 291938805 289924253 370093607 288421075 145338123 810624143 769276658 703277419 183757010 283985586 230394591 96572842 794853689 534603007 389939851 742332862 279191849 485410535 821711497 274631303 778493578 420874950 788391073 614007796 966081699 477847706 183452119 213907676 540617153 713860540 249808964 829848385 472311199 996120645 786001013 877443271 898741953 782786671 645100344 940385496 644703920 218238414 13706664 780268179 806291143 28610599 444324756 318142252 121762193 790942807 623076491 86889246 228163293 383694372 207305238 385232084 424356929 567196246 205110968 742172882 129549593 958580025 931182162 402686311 134435420 774360622 804144516 69987852 617489939 985444687 847489589 197894460 546979893 521938458 319406946 353247134 498011088 666962906 847429586 296151409 468738918 377912186 151187781 728128114 269674453 129837145 891166055 582430774 696011453 785436653 713394800 492123028 515440213 203013205 376564911 334732193 239262908 353924027 733842547 258394167 247191026 277362919 107189532 415082317 831742835 481229879 787303922 908406097 111893748 729293439 360196090 815444570 788380708 296472328 522260780 668644963 434812366 927614867 400504291 949673929 955454542 711918633 855409832 178998078 177449521 766214692 644940100 77454298 495758148 11003178 178902489 43052682 544331472 181805803 237066214 662681828 143506244 290667323 369219996 346060674 226135161 375806825 776933241 43851021 704262013 554205591 688191895 266833822 829650051 328360685 941731601 484789020 271836481 698492240 363931189 424233565 726157602 473923567 474044294 961831333 725274792 721135108 390807348 478330597 469088618 479125594 21124981 724427318 375965936 506459988 883205701 7114683 132670240 66077911 237719500 81364543 343029785 827388709 740648365 168284767 568938571 421648068 402456494 954283550 417817693 671285099 957542212 812502650 436701405 186794117 440038852 368721558 234967679 631721159 839490375 594831608 384635891 327416340 47638598 75212958 680178372 205492410 132529008 331231498 822934415 40036917 130016334 549329629 46961004 842845002 110649773 561812247 291348040 117563591 144809193 339144568 19743498 650834225 944996231 13302290 595110485 402849647 486892308 428317847 270978273 357828523 971764041 383276273 616589264 840666512 483712355 649030713 531765624 920785982 88441012 952653899 752656442 832088466 761961336 950822624 637293199 597658447 56593584 302516819 183192025 759047520 560127073 610401394 616340107 74697910 259946962 324404165 737783839 699495444 599705505 153309284 962117534 445516647 493537446 15040695 290852515 7473207 342850252 794239388 145653156 700512566 591470008 631430485 911028852 465001470 456901435 413727991 680804614 877962769 741578279 122776537 930601531 214565613 597867511 998470403 793990376 43945136 36680945 248237316 158341971 433693121 317970484 255718968 224605320 678292527 902619433 340740398 103760876 177800324 214327859 780857311 744474388 732847863 43092914 106960133 921561799 696149163 803997285 743958844 357373657 598818561 365650901 648619986 250051012 467284225 493929530 677413844 417117054 59362287 11197550 691468481 251319677 570984015 392529618 84023325 937351461 849992015 619205317 465513320 923549687 996989221 982547610 316662215 336951313 587388487 677112108 85164057 370641737 377091555 836186782 483314277 61863594 376303232 755356179 900946835 808909412 30605594 133593123 356864602 267967217 629948325 131924579 312518693 189375607 235496910 419713658 607313236 759256055 567538602 140327742 59119034 605425309 724216507 672930834 112363057 474010746 266129138 658887166 75600944 945804113 176226415 218531497 976623695 365824574 828067816 517755408 763405528 587647011 956563560 489965667 486172022 972510135 596920332 183207204 755780109 694068374 10469722 26503990 4728855 634140582 804673942 95344116 65728079 835941943 305344069 862559439 911294943 143482811 165705896 980538381 902677649 931511518 202537128 305923242 61111713 741554908 737615474 23299942 883339504 621335316 300604057 454009438 738659406 128480312 584965147 955939956 819061417 165115329 674349935 88236757 855068429 150744243 425224609 247365906 590669281 984999993 885896770 14474369 330998708 457540245 464185053 98289466 199191146 396614641 505021905 10472744 807559966 811370419 673620097 298446666 431493281 278797363 41146464 605615989 22468473 988441949 816856331 589959076 60860669 11325659 484181391 884600812 706493001 222621896 196636689 795256504 325394392 909582405 726578506 477325066 171665435 140078926 389989197 809289545 583801904 627787381 358218631 553950596 42700705 985744083 441185485 420498376 352199560 359197775 149698429 149289954 980023102 797665437 30886766 380483336 686249671 641544409 310791392 350024212 576401203 510920191 687668184 878657178 425638364 659542526 540607160 790126412 331975852 865062580 180229655 578546179 801289880 298107759 990353447 595503785 468259215 957567440 395277642 166679314 438314329 742520577 220628043 664875659 421828953 738578869 86718859 980088216 544658249 233823526 292012559 250066682 366730480 283428683 880084812 204593133 812871642 566039854 194364896 952496804 129420706 919775789 323581845 686817104 269844412 835395636 320552864 648227949 174865560 494872109 426094633 702949656 950443681 816030068 138460036 344941414 562251769 135654882 776943232 117847015 253425879 375640536 551756316 915350798 455254930 259116258 513732046 308385376 891543280 253704514 569776280 637197016 469983208 958099494 884592799 427703335 753154435 298435422 961154991 100289097 352141748 198132324 913252249 524118188 884974368 65561591 694437965 641271747 452341549 178998282 968253124 981873265 787749811 679578329 582646542 724882702 997438890 28166246 132662837 451902846 885185168 571565476 976990087 431995075 260464634 799726660 83391970 952640511 939342676 829669180 312323108 684183746 667679810 630556578 984041294 598891164 896382256 484557024 715229213 60242784 360559308 900576499 613875743 832796377 83935440 779571093 672496074 696924293 173819241 153872241 669308609 707520553 551236179 536633639 40230723 42767008 375265589 393264611 960050499 482591901 666869942 63898508 683482203 403090743 880188313 537498452 879523689 408074252 389055264 886603644 371548565 427495511 330162001 446215106 584442171 995907210 650359006 626876233 911297456 403359276 820017359 448968831 24318219 853547294 499653670 629335877 920885414 722366501 551100170 968122513 67712342 401616076 876303472 218805968 530236419 157023738 395429745 311815538 167638792 875400766 801093807 699352631 204232090 315114367 602535787 571404272 22112840 970119686 982489412 404273507 628034282 919799756 592278842 34311581 693381979 267820529 966080959 78424260 504435053 65559610 110191485 477499647 723893955 246330706 481244653 608198588 768946853 153410209 652719747 846659633 577020842 395792224 619658773 770500369 325470949 17126261 258421988 210398844 294421555 556569915 750468406 769412604 37411824 896856030 518057086 985928243 240230642 123945145 746730282 899293213 297159866 115786737 105080608 432656804 696088426 931169757 882337303 672715123 429410831 198883316 942975403 77402891 605527142 435697983 878923181 843053046 258230810 956413093 997565247 889505834 368672513 167217279 352771129 902168736 385720926 109671295 113167609 834936440 905043219 551337453 643527996 909455469 349265877 447847647 652588724 129269301 476360744 116484133 243162627 327873984 420117164 243473543 937229696 420177181 56116821 245520278 861279779 106529238 926578133 909856118 379852784 664549983 121551956 412926549 891740291 176001751 635640720 468959344 618969783 463065550 442385925 689444908 285285919 927944493 243264980 101335613 24974895 723598727 349246971 658913847 8961215 852956906 144050001 761267552 891796417 479698142 761628448 515619232 179581687 100416263 595343062 935698055 55680099 108789018 282045493 910862512 780321511 217142187 402278936 602055582 575769337 592290127 845090212 908671417 630202281 619344925 979359338 475553754 690252716 149270706 332297017 299927436 176547691 657617906 992160 662234023 746126399 48203595 366134735 680246873 611282145 423523552 228329621 829459448 862179393 395008273 966815702 564517495 359161134 278742149 124608146 906120164 754907016 474542869 259034691 872035543 589843695 600068554 347263549 391374631 581926121 532754146 652182819 917802785 402881375 959702409 398408144 671312240 93724313 88590106 231068627 322551854 92857070 193968604 159823526 810159065 793259581 100246064 387018665 259091260 703763710 624924090 405192579 523958605 232494865 751618531 219047620 799601587 359155217 869274237 59220984 983618651 256222852 8992781 545693676 633364808 904041025 204164183 446128277 716990508 223588342 567006767 578899890 493589379 237689155 111303953 838076394 468170006 695519705 172804386 904407279 506685573 41369785 795983618 207461144 753843133 559137548 655505200 39386026 761574085 229881731 314617488 602658224 380564620 808531167 398341654 455335150 119186957 461992594 74239891 430948426 356891046 11589977 638748316 513326905 432906384 223505501 471825011 320373560 926207310 247312281 71950497 243292767 869446905 371962761 753947134 425659449 838361990 66178735 918202007 339843076 693714175 60267415 2652234 821975441 422341992 580604528 67907662 211239146 205283495 808340942 309431638 154970015 993559955 785557156 893245639 842296445 885752954 736164611 604596085 493623362 724571058 119133700 248293878 451288339 630445496 185401639 611944470 507699092 548103729 670859935 313051066 484443316 717378279 671569446 430947213 78742879 122069309 91024474 984328725 798617944 199179396 394020431 856706346 910007411 859815231 107067608 271442434 51665286 668818250 367432181 853476695 410371505 325281565 202669486 982284977 159573127 109989733 597862825 724025635 704033678 19010521 567794820 347991456 694397625 602194955 121902077 273029532 11817987 28621882 232227761 439449413 681653664 121562988 734130338 676301165 477003987 317903148 60436172 326578432 659933019 815629900 679644966 658916277 746705562 215745624 922346899 344770469 472066746 744657980 379427241 820662249 532132957 974825495 493362888 468750236 554991085 867962384 849997434 283372705 437922325 206714437 416015492 252317708 937665691 926172347 910324118 217001566 680232337 16401308 162141228 430701523 147378195 567483342 307436354 625276055 466665834 388818174 553261887 512579620 552034003 123216038 977155905 638692722 372112050 230866478 780017967 921705371 2011013 449945244 322270892 373907011 802180100 252094211 233012345 69513223 840883163 891441938 552234806 28538791 731731072 259861069 441037866 339049886 172859642 25792022 642351242 628317716 787909853 983481270 808660187 586045226 695599752 217830361 863481716 851651354 926218276 729818599 920430471 84425539 947890766 103209500 423981341 295572423 358962513 733266311 837725531 946710950 800388976 136293422 296109651 797716572 938670906 382224617 619707299 223558091 267073650 598525556 730308205 107246237 927272455 79620266 939312536 84021205 71606179 86862631 423086982 833383762 735555132 365251465 962826000 637753979 329443935 229411177 620263584 935643286 338010229 926944416 530497931 383660184 781656461 605164612 313825324 39845299 864748978 896276354 518548981 909042802 749573656 588313320 299867530 989837359 438924203 732530605 265255554 436455821 179011756 40607213 247196005 374459779 685331243 556445392 285197275 681226318 530461620 150580249 513098753 421405205 469184532 977188831 941439604 908061225 669878645 61065624 329379199 203718421 518345313 300375035 165484144 789065047 704018931 520858076 608538535 770419857 275572878 393725387 194343768 194217245 89934586 908334347 974121590 781811549 881934990 282335577 568228704 486894717 355743408 426545514 313932070 445841775 431224935 918715091 810998557 798921968 365868306 401125247 641262116 290531754 836811649 579596862 871818335 772721709 603061049 652277695 109779588 642018339 796805261 340046423 428892840 906708740 382084323 998740080 73057275 162539608 448605908 346372047 786486001 1088008 709450898 372803762 383283210 848037785 825455853 771423979 945608248 816165842 546041459 473255640 124040363 226500682 465089738 390885069 317503834 218334862 716055087 289830118 945157213 432038848 800800988 839871952 543800559 632475632 625888868 312342397 275625135 922021897 197578745 850825118 317533226 471409518 881556448 852963653 62430646 702129498 948313481 2239250 431594486 631269259 416325713 192881704 154690212 409050254 452828810 22469544 523458278 996140513 717418242 113564006 585163671 718528098 106174991 659497373 539676609 641598908 701430807 334710602 336799281 898724524 764995636 667641147 733888081 637970302 640972499 578634561 2339824 724536062 949143487 79256548 542665777 144179145 346294435 92612544 667642171 894471736 471213080 480159680 117041919 813087836 324664439 137489102 237940220 381071787 778416917 754252215 810448855 167067860 142367343 12620830 669989089 514245615 45942676 579478180 876410953 874961710 172329874 24377751 674923249 431524908 599588123 589526590 630782378 86081169 761817809 393437651 267184103 579442802 773449651 428810203 251459318 476881704 542717234 423622299 950184197 352279575 447917826 202486846 343154205 477310034 891791755 901327100 691494492 897283291 682943581 99652904 305646723 638061129 326515743 464040291 652163993 645451213 496724465 262379606 546161833 222507906 228895023 503362876 759106626 571373324 930830440 990687882 115345905 230572858 898934671 633007905 531613895 650325179 745903581 396658786 258389515 200821980 233840462 132729271 343690512 391784893 64315265 206786297 132531783 780892844 57464869 396033338 474501592 186698242 107441222 651983298 921558712 558441848 36677322 377967499 825798339 23937149 903207618 475266907 828828287 459909281 938126738 585428968 102788058 517314497 244966935 719610361 852363798 935855843 714462666 490657580 606052863 769400907 348231359 566998763 861317565 144700046 268946854 370027264 871382927 104578937 689807892 588673185 124391077 166728580 353212204 902415263 954455095 883839452 973078550 888968059 734266178 244711751 537683830 649758274 781453099 605381499 81198979 227264019 907537795 522255028 268469303 280591901 65319113 282454260 894313518 102486646 17922258 324117169 976114800 711396132 760504251 969286521 570672861 920720451 114240368 620611817 902152571 311770729 979846669 218085124 755511216 669619938 767437320 556728024 903538584 352416454 314355274 974440837 979116278 70264993 999793524 861780442 658158091 708281826 818363217 14872394 545235334 797017165 858953913 131344654 676837440 527334275 440243253 732458363 737834149 933993104 191297149 128326548 271057880 329762678 371496926 855867901 957930543 231345524 505561137 126370581 71721846 835564161 855222589 824423553 82807176 637509148 396266434 17150261 536748328 251742081 338404678 478900413 94137400 533292236 626606804 972339634 853373693 930073924 203173932 371738926 572129144 413965837 574722539 912523970 138822078 384699604 603333162 639381101 140034028 423238909 641514798 577578500 126912477 952786062 23841739 407479113 812917618 412966167 424155913 634316886 902567546 676007685 403798714 637209648 918723909 406071429 195034901 271805446 537642042 372728219 89840686 678831416 776811684 274087233 73328155 432331014 963547766 366634321 165348220 719186320 48332309 498419570 495417366 255666569 254468943 130459601 109033040 672670219 148022730 375799023 693438453 442384241 912468053 390542553 111955628 79670224 156464496 30616932 274644013 726529372 980625763 703018022 432292798 675113837 203926168 294110782 617535945 881540573 8114365 239005469 95349254 596271734 665547520 632738821 395085906 856900840 265336487 972095506 454622570 141007322 747307835 781405198 688540057 991539376 536480166 556490176 999063149 243305803 956024141 408434559 384760710 173313797 655493244 562585623 298497873 846336235 262928795 291788978 471863553 175308125 450389958 720315596 791202230 723795675 170649673 607431276 305592435 123340270 237567182 526002680 879800606 413913526 95385364 431253470 167976023 274909040 519825340 493514656 501614319 761667048 91316121 49293038 331071108 628477320 754440378 30385473 508192609 638683036 279764565 390331884 971725171 434007525 369049520 446198506 325194127 547585225 722498745 322284040 571206248 745729104 90497219 677770281 809118152 575395676 285435711 359978816 582634400 68171777 561059117 948428422 821998012 476501323 381758765 875501427 857434083 960534017 432469971 883432554 628061668 268816932 945516344 616835537 768497203 972186782 31404712 575737863 717741848 89785338 975803514 726734245 946957104 760263099 974941163 387577424 30238056 38878430 684922571 246284652 11181515 525314299 758215835 468272594 996060885 390975340 899073132 551639106 298682383 336704461 241784307 380954744 977859602 931738519 54597897 940475977 316626195 463438073 106148031 405058468 718394352 798331760 88886101 663954915 564601282 576551911 166894484 470332851 425893505 486685513 520834603 427431656 126706518 299683260 305847465 753691430 932019501 208123572 484818195 160954203 181604198 103969407 989972782 132695993 693562318 50708641 247809902 806033939 624648014 246978695 865856012 923522476 718340681 23776623 148226839 156619534 835409758 845683747 794044477 737551698 267622395 483119133 879461970 223866119 100189024 863451414 238497653 990442026 155806751 880904255 260146866 352320221 298524829 42797904 514881704 411271619 922435877 532698924 883538202 419302616 945456316 594091105 903494600 287132221 270317466 454427397 576171329 652073919 913880393 21223633 753794316 50054521 151753434 548781235 712976883 599063833 508037782 913710835 181676932 869909107 447570958 993489525 783850507 282901883 695788658 371764011 698354650 54362178 445152819 877724296 596793855 919347965 259389630 395531967 725333285 629352544 853844137 477742203 232003115 817897281 205682052 306432 653253411 756585396 501513194 369885906 178816833 197575245 580381535 882123686 657131247 568976386 695731395 797771196 851747173 450510742 749128832 485371951 268116318 878105907 308511352 920035917 672493741 677983724 968114796 396381737 326563814 702809853 897141876 506748102 288376515 194428522 351507159 674623078 678530811 782825189 951695984 776198462 585030508 976884448 412528918 997943444 527706872 620591854 242626257 560847484 666663257 111056857 163591116 119200911 717641992 392056998 454708263 295171024 502764876 733559667 78290514 547836557 146295898 966480508 622698505 656495186 582076430 160741702 590887533 591357930 468367014 368911228 624228722 883693315 404188555 664544646 871371055 772444313 275699413 558498065 782209516 950808655 566645419 420183326 47471485 436190332 908950402 665483242 973473822 652742918 599725056 54241423 490568043 29223204 594456394 535994243 418036096 706296762 866718337 479540872 367680559 319994741 715530216 423170060 586675055 914457036 19756790 527498336 848600277 204174176 286023554 818368030 379638293 313591941 602080102 934394432 715095403 931351165 929917924 415405685 285430062 344602447 131957284 484547423 40911553 836388852 796786640 354147882 63010624 584669271 589882678 423981063 22953013 617735520 987935333 822374322 704940669 453751610 400268967 138827098 976850011 455537611 600552006 127008994 128991280 312438239 841267354 748247427 684073651 369050804 660024748 146184683 634602255 464011842 590217750 363018716 588810272 838986795 179399034 684889326 887806929 851029476 14718909 790199724 468510004 96706590 950916321 9559545 706677646 548285463 750214550 23943406 309077765 140853049 320679132 257000978 554762956 114337475 458472238 165273397 348422578 840459914 317152920 43041712 645396990 605254059 13271154 99887227 605356299 693136805 128237676 618991431 755902024 714730524 57297950 931679345 861389966 427046633 559005146 259136089 909179759 567097952 269660385 534184818 129597091 634957903 218332399 705257193 722960163 280614111 183456905 795054718 18682629 950379585 740220258 728379025 674104922 235031254 954682938 617070857 839131434 407869586 305292126 956006800 726087532 509031845 280360390 308219563 748822005 980690519 383998387 973209764 659547017 589739817 17297853 973579260 903924920 76253896 812869487 744502665 179945901 343486180 569348467 528875383 370731891 78213629 627219865 27499834 591018020 250065239 4276495 158509064 564266271 962127531 301099651 188041437 666743259 63637266 138190521 847450644 994356685 458634498 712137947 274094296 800002147 321496993 53281486 814518470 716497488 228533575 745951490 483265693 207651896 290911067 416960600 770107207 970664345 104551483 790506717 778596190 910659584 217264638 729445115 899003931 220988849 55283217 553847714 515932778 690864132 783432271 447024239 821296104 543451830 416716219 302561910 598842413 740725208 710733994 290930644 508669863 383003555 950732836 973820673 676906608 347315502 791910920 718053501 291354097 186345975 494380468 241073094 579897543 66091618 58380571 150325012 138553573 372157916 117971516 990330262 718085970 276270877 466468099 620746476 556552752 932298605 511373766 107528040 333119340 740017657 81199406 229476727 188607908 655572593 500117789 802178119 460734858 673333490 494709766 82895869 253001884 346938170 290909306 614220693 782478702 76678019 274512613 798732277 800133544 418716858 630630051 832561857 847498762 11958762 532747733 533228350 455574536 222768296 152103684 267922210 441941411 197395970 811725398 633857539 84849874 285011873 792463307 472109817 121668242 913507780 839342201 335714609 435198553 352426368 293876743 635516440 125979885 595752474 21270774 397566128 829662864 540042952 579972481 597281883 170504389 918510714 413394706 240298696 397877531 532140265 416996676 835918874 202096004 624310117 709009198 495146106 520454817 405585975 448334784 910619086 332359596 851961268 818978182 511048049 127484344 472208204 961665259 518644819 10317454 362396796 397150888 511358058 805487589 644391544 140699114 918908925 774007558 562247169 14315363 226266831 291351314 57677006 914330085 466558662 195476089 685423613 521255630 357776223 4104058 4126526 312551603 357739684 369937967 273137425 381952969 950671646 725967750 270407700 847814513 891969727 288661620 238934891 13418477 544290407 605357270 622858039 46515367 260723292 176785308 730054645 167230300 331585164 468379515 655454544 63616161 589947122 958910274 364229620 428987850 797388528 638983970 439236547 95262475 482078996 644824033 753633528 108039490 448141981 879827604 323330014 391026838 923003362 782120903 333811076 479032009 213292457 615216466 587761593 719344255 383818088 287288872 756119605 922467041 28092828 715051408 526017420 554862839 716789509 272900835 200847871 784584491 803210018 390256557 518039039 647254759 856772134 706801359 240578111 289970096 333352984 917483343 565085783 852214662 88256971 497890072 815469540 187662099 397265955 780272040 530116103 820811553 861578535 625543546 918755876 650305905 84612662 447801484 447933285 89257818 653828402 106793641 103461512 270591818 89143197 772038550 303352375 751457599 692016260 917807010 762473572 758650291 206150281 328371674 567571621 518218359 179891276 719077602 84349962 565291217 902697493 289549109 797976651 535978128 539545205 285987859 152085370 3260720 833085388 681158317 781292109 703124946 42726624 163802761 597780190 372738066 518016493 237488637 982851595 197583428 444808963 261235761 167239305 744926404 158904343 370874228 876438053 578398537 364326116 416711118 864165282 853103780 321030127 277112542 470973163 321053132 673938731 52526591 298947846 129079628 598506630 149261416 747982783 311959506 166602970 718638471 360294535 122322716 350907295 602722484 769571495 695069107 13331509 759060171 60330188 537228750 799760559 215857930 390780660 341627676 449198124 700437859 485024029 766792901 173459788 579374709 35731360 100984767 105477428 74415353 522091403 506264869 414410935 694853210 227931887 652829159 770199863 535123976 535309561 22117816 87884751 671413650 73903996 768641596 459741941 61305093 479745641 275808091 1669313 762740452 89087417 772585649 778183832 675137730 995366737 160514863 24236144 398745934 25973508 428700415 863556937 93972715 661195755 577562440 126410486 935354702 762051774 625198932 954411047 8954116 41569974 786676370 215041553 468163908 595411014 927944494 722886651 388953762 655679343 542882767 494535001 685629839 552343692 928476638 277852483 614044565 537072891 71200517 712344969 498662538 698219383 445276437 665255757 194101178 511826866 868169418 732286655 228501712 402720430 989968317 547228848 452818375 895862212 594697824 136796471 995549595 653595439 619454914 783829064 779615908 990350570 548794912 43495510 963579606 881687601 640640259 767484299 229705531 458288242 611274119 279877718 598878448 489825302 946057562 534083237 545622165 917306437 554549933 539956175 562348800 81470638 848285921 209536921 936780226 820503347 998991170 156254192 380051290 884061091 664755761 246566647 323684429 611060357 9203457 81610297 489480408 109040520 10237282 938676172 637690293 100260446 136972363 599377074 953707327 315354017 424662418 733448678 8225994 212994633 733137381 563651742 80263266 904420429 45635665 312421663 777531361 786285392 544131383 880281396 875375752 909877151 531212914 970793028 295614779 113816772 705320289 85997115 511522228 757118366 62532999 648534874 544906945 736813607 104615149 772606565 305948869 325240048 519379051 996506686 718845265 284016935 223279517 306298028 560969707 246123601 148230583 611203672 447193296 563935320 136704956 985597351 179328817 881071207 957131896 213097493 36744268 718807860 179560186 603748606 939229815 73960394 245382101 397843981 114130628 63108024 545047273 476361671 643963956 84191504 354964724 439996619 20856687 871090562 19683383 228322287 257675981 309747883 956852427 665701120 622414822 823105645 344947896 445689063 290152483 247912700 499806046 337192490 213561464 817390400 796849789 613038188 103811367 281993187 157726375 298336342 755586942 114956659 171738664 955339732 573105885 153098905 120686658 263093652 727099852 8820226 625514551 758206049 383726888 324947276 361145823 843158213 576220014 990741570 177373424 967471603 48027092 615793556 69263898 612570885 621925053 935665980 222736982 120592979 548669414 844428824 796139233 339057003 23761424 521937012 396546417 22707199 328480802 205793970 823554883 741199755 786779792 736485149 305112069 955957171 227367333 703062692 180416984 720310479 227953847 747341853 767650862 317752953 351034834 494990922 756479839 545527309 860008472 867737726 727219313 951607539 887104077 596761825 968809163 709315766 74935963 132763782 476506972 163420067 612596831 584549771 878926015 636992242 523214030 504008812 14924512 260165992 673336574 979080210 702532743 220144618 203355732 498681403 2602960 505518173 695797500 947054407 527946592 840912564 248164320 936371090 130418798 209713346 702505497 612031366 680687557 780133530 496420386 690006737 281809518 137255229 480213573 889576971 1645658 37351084 61951631 550001586 685351349 751500767 658935163 166633686 110356243 224621954 410352865 943810267 621278079 675399909 323538933 604539033 417195261 51771682 280701202 251120661 696356917 565244976 334462227 943817366 702397850 540414645 408341939 681898583 784683214 695817683 408554636 240070375 650102488 789402219 848845491 628105724 389050434 3920985 33345197 137328408 11740834 620302710 862277997 876531654 621596133 403115563 475486309 147569251 772446614 540642950 651301509 368272604 985911895 199353677 390380980 113007754 373185828 437310725 265955415 712442063 79131677 936876718 726837427 662442169 326162758 383572073 912117836 267569159 938315091 503010445 617487201 158931791 892322902 27538374 790670493 825471138 531221066 857003634 95342675 811103651 790299605 692645339 414103213 916609550 908817891 503148861 749833255 166100947 733028313 317068975 222672379 543789538 387882288 298275824 569143492 274145509 836459268 212787043 83915856 331969913 419205569 741680657 274335170 567655462 106481073 907111519 754343070 65249266 289728397 307068347 359291887 857742074 171247369 300987219 158313547 365576752 494494615 289682270 688967609 269822901 160005130 996400885 474752069 926966188 198822498 288213902 114408585 546748249 501246764 453337897 798233226 214051233 11880628 962556728 151834919 261594580 860178620 931123265 776686263 474266329 168237237 526867899 572907033 312533231 645099855 946728554 463386804 846298152 779772538 27605172 184175464 422589731 490708039 481998958 965059494 712707755 666613879 422024369 338528076 253619842 800055254 557753662 349318887 592864301 653722732 269774972 826687174 598475051 921342354 83792 617643206 54812908 413360823 639044164 299280503 754942189 672272012 47758977 964086738 915417317 686485661 221484378 961137657 452217390 622803599 877796438 80928276 68263600 706058002 865241765 925051993 974201601 34286868 280438532 408377106 823340835 13527281 449643914 422049156 169475643 506343078 28220097 560854689 318125009 619290330 927728346 672264568 101591205 392948701 498194722 840328608 946083099 24985024 345559276 464632789 859123377 898182533 957081030 252228301 661464813 95798316 179364347 476210533 288345241 948007200 216263291 689679652 617827539 247336102 669642169 443864705 716709536 672616873 720664274 124706969 6614306 539478213 148189977 548194872 37438211 709345895 389530324 328211267 248040073 621087226 709034006 220885834 563264587 239090039 702303435 588079292 599975696 878024640 419082580 262840817 475138598 477591160 527392070 265154676 201035581 684434391 621582858 83040958 189816804 32900302 667162675 561396855 161277984 409098358 581062191 118727871 127784516 987684465 559521389 383168330 509412024 674008325 931242106 123618457 895913057 348422321 249977810 198113025 21796413 344076030 726440758 806929492 378565697 411169900 526431250 398766880 271714765 18226457 874353541 362791118 250455278 221300299 615669461 111395927 317573419 54247010 95564356 340896838 570121643 134805511 258131721 801255216 759560854 986707232 821725232 501634446 172844424 95851565 654193629 197230712 33919341 169646134 773095001 961850136 125608404 439053272 32781406 343694493 302110738 45412706 963469689 860613285 997389910 49509877 938659403 46152694 763636673 458835043 238470347 740657535 369124277 579120604 469080520 136629030 842414686 385936129 594450443 965753980 232901374 302377529 941098504 52931799 616595540 677078556 786552872 328135794 271658885 864915170 851260798 913560750 54388228 207330432 522061794 269311721 376705423 895085353 320433468 154956949 894679688 348796427 954343657 573661721 83348724 591645127 673205855 191252094 572138947 686362084 615370210 870475087 981616092 981555818 583728490 825419533 284131121 629036439 968058418 694027787 932217243 526277328 824362471 498151501 978891598 614060576 927801945 949215700 345803741 565412076 430647455 128260374 984339157 730421839 938280098 905887563 99045577 648525915 986222356 216650962 960458477 145822182 731584123 172649592 381850918 394611665 648040646 888537492 146841006 683287585 6592776 232798451 724125773 557102091 716700899 680335765 977719134 896912542 683504023 853758723 333802173 88987905 23980718 306677303 894566989 513739942 776669787 179151429 264460473 808866970 613036107 578752020 104809617 77703610 40977995 900330648 115610320 343715167 667450506 209684185 708478547 37701388 602600317 140486692 407161596 265068764 458117894 78901361 840082531 42845691 506700249 732031654 854744939 864342020 354372547 607744469 621528989 136977893 923921200 826160790 737404284 675198958 67232561 827814375 501605952 768649186 13122586 452697256 444839356 253978500 561502573 617591153 556050521 34376487 62756358 558438209 476750677 805176059 639801363 287929896 153891036 944286272 323376645 208013521 301596649 803863277 809530339 799920190 482924735 655038288 32575433 626212558 921201387 719572396 546504746 318154067 478188204 865313561 451092174 208585274 773902190 295711329 604194 480944837 815534071 48660866 30169949 898127150 78905762 311445328 514656291 894005836 234125476 853460153 431592083 959835760 424638632 496926366 534971001 649515438 48274953 328621249 779662316 968725827 275598154 787325419 208009968 634533270 847076688 247693802 480924810 320655893 996652354 77810779 15916711 424768361 423344060 323783480 105452597 982082954 927632428 905851986 998414095 594135455 755092462 64845274 781021079 877915184 670959033 684156141 863792228 840900488 520741095 793118975 748400395 211625950 519558332 352457288 259976381 420548886 583523008 519488345 305612092 809872786 979675852 264772858 392700178 304421564 14250104 154962971 828013633 555172907 512656565 850778684 952239873 82568655 674985610 799973554 824784645 569241759 28028755 215061453 387221563 681880390 600817551 344850664 920505480 562244587 921590195 841413225 22554120 414315588 660065984 273305682 510882005 691656870 990709128 647576355 280436307 139886956 650517934 85650649 513419925 280081223 863269350 746273401 167502131 690549795 841756950 183465964 6112289 782172493 760792351 511605789 370415576 512260334 202858903 548201835 476357956 493755117 302534372 469363557 595830409 856987025 221931830 536593084 814392192 640278202 754691032 22109572 498836930 623490104 461033773 596877978 561221962 920268459 668716738 741295699 872006663 291192360 445657474 225525246 927293562 972234805 517231522 297278052 325869505 941717401 730926142 208082710 296873099 663210211 575603199 526180939 333152984 453625002 480906047 883428843 983402981 402491194 973708880 336780254 749205525 887717530 284089108 26023135 549977857 29339135 311455354 760302378 686030826 700442357 50019292 326576890 447577232 712076470 958717900 982304788 344409582 758731990 173597615 911199669 656519023 372594171 778072080 206461318 528264662 265941475 701691391 909651864 52355026 849769359 868970967 428461303 451140305 424465342 42499546 213147741 442674359 581029098 602719864 776141192 647878633 964235811 891609733 84226100 568966807 649076876 761183905 6185267 20091171 992301219 797265577 267515665 417063418 516123679 680027637 454523410 178329126 405513029 603714510 901228293 297222332 963318389 312347575 179768607 528593069 978719284 49671152 229346028 80918531 766312185 584655045 724244967 627659634 708447080 289835910 595064138 629117421 463370381 601542533 651580722 363003094 777926740 514464501 385363135 935196346 276715870 906389195 609673890 390215982 827159483 528089419 909685432 728318355 501796793 603443506 823801411 560940500 644025770 859768122 605142346 711634439 693066053 171462571 67437961 713079042 895800732 139131113 187774389 669667632 542437893 840405475 74365702 155004380 688684904 512917761 774077604 528250350 502372065 418826378 45548308 874223691 449263417 59765956 313594202 250978312 699782287 283974082 391514282 734072635 125438503 392391376 172770667 707418466 850055191 659342940 346673502 367113362 942390653 180792821 465749105 249583892 568069949 14751113 131760497 604636363 918409804 258261568 978491600 602647623 201426600 375116877 301446881 813778445 462245341 283138021 409055050 400530713 214196379 702544485 857574134 590209444 989947564 72367670 844452603 684840682 201744000 672116412 141237835 567045964 393737310 270169905 41792520 504646307 589464334 537298737 543117136 4286007 915262737 744586349 4316849 275666538 591711289 260008554 132644959 845050963 743430955 723981911 362636856 481854495 480629656 679429774 13410983 167149035 974494910 96360216 974747427 921203757 335684976 354034098 890588523 481638358 331720673 688508556 388282852 841707126 498587579 943784845 358048624 567418365 209338676 326985911 138563367 457679748 127028200 921572983 400824906 413254722 555239138 169794694 982115030 511936877 719570519 770504405 377024803 548954558 900853301 490893013 17656383 631172452 339310591 456532389 630714876 209944918 322260304 283377835 57431782 562343931 64910340 517592950 781657503 83467973 888812218 196697121 935743760 580088210 869483425 887938606 646995767 399876682 890829881 168921442 514835549 151447735 609493805 487475769 641376002 502942900 137532239 803856770 552771737 158107641 70480418 363729888 5010419 95959469 607776054 45850214 467570839 563406418 774562743 597346158 69660194 57120401 819220388 205175808 322971759 484350987 48920806 354330598 872250473 297022417 460588098 573801908 439362926 117390534 903808086 485059299 742949811 678775365 19248305 805088997 126925131 281827974 256076036 277522046 352339400 518660730 768184487 206459992 262266808 208988107 30209668 333471226 454017785 343104753 497706698 520041119 501135834 292394616 564259064 150658994 805459777 657711016 162238624 895187291 833436249 203393279 654826909 826528743 790507216 435332996 498330081 598724789 782979379 412070858 691587337 43101348 179443836 664863385 91308964 383732705 261455380 426287380 493349436 645115092 126629712 438623744 686923069 106786389 684059848 490747717 885418254 127590831 595583630 329334708 291624468 473177039 71895875 850713486 891839780 246472081 606478700 285084210 368975637 483095818 134690911 967972315 278356301 338208511 212435299 157209502 315631843 12783292 94606485 156461104 679476295 786853551 478825373 906970029 6758468 386178802 920454654 930979598 352409297 749528758 335089327 982367662 276299537 118946319 564517108 732641875 867768519 997113214 826376465 981755769 730378565 766627049 67637418 872990893 529884130 596445163 110124419 551809401 117948921 232971116 457847225 527675867 249531087 25501470 921005300 248601687 864551777 325944133 683199601 866241789 185151528 583942877 746076517 741044230 378737168 373439666 314091275 702942412 26938642 644629416 221476743 837661364 74578076 821738118 472370225 432524528 196100821 495377078 538934328 848951016 123523618 368499126 816146792 197811272 562120289 588335668 173505204 862805834 375967461 731551685 596657235 978527441 551313360 94046287 938649251 807962637 749423682 233003223 574620191 740142742 991390091 237100259 813704879 42027605 807508815 409206822 310393528 172779699 692276434 138340343 411206339 834422107 798104985 396564464 10323797 324671378 920503774 533962642 586358095 999551659 848406325 594842960 113782881 717602413 610119323 90073898 334122262 136699243 197995572 518051544 17529530 640649823 125965269 497004601 394848909 350039143 709362349 724142013 456273926 673183100 143739762 900476544 527028326 684947384 792397326 53214028 217933322 576529902 565057686 897185435 775805681 542395274 72485936 828972727 457770970 510785811 381839449 219039716 331189540 709876829 720505238 686468047 609798907 404905054 171227566 415742078 183479343 82551879 820405216 166769940 227926427 715074500 11337537 272959302 353990606 501253947 298423500 221079328 532375089 8035396 485647690 525466797 650965407 477289688 408008938 383336454 779134860 833091825 570061700 56057059 446254540 115168424 648589795 683859644 283095189 536878518 50970561 720232530 230621045 838457249 51157605 383299150 88622396 925004025 489978550 996486584 804761521 654829983 878662058 784219104 26667042 335495037 158494582 142366745 62701768 315058485 607699550 117498050 488659252 740371758 138957480 565276165 403907435 464593743 615216513 578582377 406709731 405844730 720148882 227378085 630218146 131525021 584668053 721407595 618066864 485933827 365645670 400740570 923690831 465066206 382123599 818710653 803703249 132197940 332180544 500619693 636269475 612156909 721692217 200143235 804195653 279527071 148933626 494917374 911411993 753818196 121548073 694137804 33775111 701346356 272638077 826641344 284358547 680552909 614626658 10776103 320997752 63043695 180812040 433000786 869146672 463162558 180798212 648619948 75749015 74487724 930397164 982557382 484435053 560710076 248078496 100621483 185962336 916097467 111851031 321735328 904460069 901436355 538201119 288850121 109960638 607508286 707432372 91720351 604592649 729746455 715910361 564262444 715978974 68634192 533877392 440907343 354597947 188368158 578528919 79234900 36738502 914160958 207306634 157709113 220041781 757173740 216036679 299918919 588179796 964405236 522810395 146432321 626431809 24963080 820793074 270822132 832595425 496426014 880197818 342404516 586565373 520177180 407950032 54269164 275221299 450103688 992559647 531980992 559583960 652885400 157681273 439687880 999938313 652341801 804052968 223216896 941792831 148808520 255533429 740679441 157446299 385559234 678656890 902864571 639464263 955382825 587054255 396299878 989616928 928535956 58501538 801841361 118011739 191894033 627530010 646298834 825136392 137259162 625060035 519116601 112080676 672526417 676112712 245896031 452899664 256973754 165747230 601489293 545258862 67223124 572755997 774280742 158501865 300077659 657758975 250305735 531496184 23698829 732307113 288626917 979098601 739397348 771584172 399803102 202362519 579521294 852047657 633735818 436689136 757857326 650747678 239488378 260282932 564834597 735111959 492574420 19896274 329423439 100087477 170984407 762100594 930750656 601564624 510090451 919372160 562507273 749197516 798417159 271734350 478609327 179677068 832519272 795027163 310411793 947640139 766601289 257752298 849815050 311054793 827182941 917072126 445756511 440302032 144922748 311087292 893203649 909338185 176109934 624352581 740675246 351267398 535851886 20726645 480537573 676068944 527772463 198822073 254644523 114556049 33206078 537906269 474527769 967778175 277577280 160986786 802048469 711147498 467990838 106614918 316938605 4844500 505379013 531567031 935220405 394190009 939510898 437431387 34141574 276667104 780095785 529678423 53434150 842128253 447832810 856672575 355729270 485298236 141216312 794138089 653498803 647697992 52974138 525023041 903745971 822499401 47050629 327403900 59540865 846499686 211704902 802993712 949616414 349299572 987599783 103447177 757519940 645744013 857755665 957743206 791499950 758136762 267252003 409186523 929424308 198893291 987930428 849509372 654862498 140087997 71135588 683907156 595366846 979329245 243953996 387731968 271132919 492556860 510695819 778238358 778977139 553418478 80179454 790679033 578132746 764068328 604798181 147917783 940863943 865251816 88591750 341132630 211933489 945516382 416253462 717450500 355161311 813076720 296908672 896199066 91833597 677579710 174443819 321057586 239675928 26894190 465158381 685496006 406464182 295490002 412619160 219543944 336409556 951305494 621780985 233709664 686858386 409999925 315748800 402808584 611201027 951915384 272431475 496988756 445236417 194685177 984323891 265727750 729070825 688840607 770879487 908519606 257803241 659989055 60081139 180154610 120482943 748259328 14150316 213818290 263985346 640713548 214014847 419676745 717088787 446860623 742770622 326578412 478580547 361190774 510596718 312981254 788945192 414001973 745253735 956560470 313435418 896856725 448021830 663429308 250632229 259322932 352161748 21699209 3318357 234090176 222607042 598370568 769646826 950034417 30695500 238864154 235807081 679551792 324851150 534533172 51641512 642220400 936384337 695834681 134505251 423216027 238504563 241491349 839069333 256609997 606030313 277594052 873236967 548999342 232651487 524279502 451391368 524612299 245678587 16766030 771921775 177916297 22343662 759960531 475431697 811542934 695188828 774848428 724312065 616364242 754590389 265287717 554685014 978627286 63149979 210105794 380590328 112800917 482463641 899176515 946000413 400747248 318438408 88045976 703193967 896910372 562310401 72357431 733023954 104148218 113033363 841741183 368423499 999059920 680610549 257205011 435268088 395616933 275041982 631450632 585338262 417442403 177444997 582739265 143314177 894341239 606981959 337681505 958381818 121445887 654856247 720931291 162844245 268836295 978580554 64873868 402274131 128108792 94744945 456428066 475945831 892370684 804854140 873458563 349603951 19875426 172768447 905495364 15939582 674814181 371501852 820900586 401136787 864995814 190343293 832317886 458557038 387737874 720521941 989185375 584731601 10367750 56623030 225653600 479938890 756800491 864800220 302906480 415029028 627244176 777710745 433102869 311088949 418812763 705238109 109724051 483159169 116227527 154659404 305856914 185285385 95201122 158427834 984394381 776276111 10380328 173629749 109198853 497681062 337779564 303562949 46980115 447014019 625312341 523063725 342487170 442342128 160093225 243862893 607160222 609366748 112017990 157693717 547676469 848577085 603781844 266511854 816643322 522312851 24618186 661310084 431113053 549274651 419998303 364743401 876563249 323098663 256920453 338681536 381575318 94852922 418498826 452331861 54623267 910213329 783899691 628272773 834164820 991524733 818659535 308485238 39829333 787293903 798185258 327229763 677360112 374662930 628773032 990619022 2376440 74394267 62007425 52598961 263474747 380753294 69082795 523730039 320183865 571824464 83300530 657583159 663667972 828443467 121125651 443037860 386050296 79254965 42249893 45806974 434014477 656731103 470401182 122060608 813511634 408286895 448402202 792359769 767277529 56689106 700690920 674568922 705781184 723959189 286922888 621762802 262496314 630225007 830852538 20679404 169302962 729884825 807397028 347425212 921639717 615326796 894388225 854046007 522475629 688098902 362505523 382164146 276681896 358159610 278557485 368121885 523327625 258840857 371896704 978544884 484478760 688316193 6507210 391799427 227755520 486762038 591874273 230644298 36816408 709136138 134468714 583670722 804220116 462403788 804083584 587175844 873495890 308424022 776696081 375500650 942150743 70544591 569333881 812740479 529093681 330932165 401781149 523431507 924023593 606871106 450884662 672226836 36555245 930175689 951662853 606484306 25191943 469432911 694396241 390646615 274520020 295235609 779223772 618969676 828615772 327207140 870785726 158686784 625439150 172175327 903986781 953857874 633216839 390146394 640962766 774786036 798612980 530628438 302286990 945943522 518092953 247876192 227184807 805876427 400196258 708235473 579604694 287509147 689151847 573203786 912435890 83703231 361992529 113640200 286835062 576575903 818078549 333793246 221258076 971334952 500756171 830946395 430902895 969127310 901565675 462092309 159536654 104739850 987040548 482407551 951237379 833548180 480879237 541481348 111413748 434465724 234476755 405019094 609719330 202233974 708924771 298773473 39875534 590512861 434849044 465147290 339528424 883678644 18224313 755815602 910204974 505919952 456019453 850428890 933753618 490042874 441537036 478074515 31999886 508978705 505192191 99834818 941798455 46147896 889985999 222466297 329262799 177991602 408026430 738192157 457665032 632692739 438324000 682391790 280886101 449151676 849066678 191734264 787247775 666388400 710580176 867262370 497276241 308429937 676859259 545723847 603500881 507657810 297775294 485392994 992765849 408773346 626766497 544811145 532397111 153390970 629501448 115609780 28008114 34004086 396521598 834316828 610495113 261320881 115516144 176746875 564943414 44324855 965209034 211382790 612678054 532900173 232735775 876470075 716143217 347415119 435391228 888499958 978567283 419035497 943677519 277637894 911538323 237503681 239506482 726575099 896051321 74625399 112061453 459826312 604771142 927963490 523742282 254780372 505834286 603435248 564001991 843010898 446089745 289122435 270750448 591862747 407219740 323626370 57640702 233177643 309903095 321742571 621016100 704535941 485025686 624012774 529320310 299226088 453860708 823603232 247707386 552019091 727881734 707500355 961017875 952767559 444707223 250436775 652315705 262843971 543585560 75329484 888697162 363677558 159180044 70335677 399993974 521007467 977873005 625966744 154719722 130545590 788907334 61118162 717147441 992590586 571120850 341570019 476101211 968108911 491105795 360259188 354625483 624139242 402065976 399597828 391407067 793489310 112548366 723684659 233779484 967084219 131925815 731255540 323977887 363544137 313348903 245585017 527357084 199463943 365537358 936202675 963659927 757234611 5006338 461852017 524594208 774585817 181253913 714277224 754245314 43743313 929852973 768681833 411182302 100664179 449737994 724221748 44820137 142736190 710579397 503987585 996333814 863226604 696921269 155923464 60966619 530970025 839848187 475047799 515146088 387688090 687512765 671852011 909495062 457065256 884884965 356891338 590013363 242304090 718991458 25478345 420402423 87928650 70802258 52134149 326809193 435247156 48146949 123705458 542874990 164507143 331339676 103459133 552790702 37132542 618879420 208928378 354473660 737157774 503817150 475704544 353100077 200722030 790471025 293332854 601377031 414297950 512850488 860737797 471146310 632127620 382485919 22566907 811709266 525111319 509359406 960378360 867105862 985549210 726913736 567815751 983470044 561958118 424998892 485015084 119643974 463407757 691909218 244090605 800590183 791768784 326710825 636150061 928815136 561382906 738914597 285716307 731767547 624476863 228105703 92717568 367966779 515466221 504005345 321035664 360472501 796397234 609065240 141381916 688427721 766519402 109267623 37333421 802013231 125259416 711952812 120921901 695434157 720194131 632989260 691565447 632649268 863344226 827145900 218974213 666805578 124298637 789082955 974018695 564516942 942431018 520755742 80102214 806261522 943880487 340343211 937087667 982312684 779232083 198730536 360269664 31546305 451085992 547912118 581879358 415905366 831603740 803005949 17876715 978192032 961662829 184665375 268996626 297286336 373031982 312825504 121533567 178802477 948233735 981134497 773045029 159510838 680723820 585994274 216783951 952159021 525039261 628176187 311960014 793904886 668751005 458985795 256330144 569026815 708077392 151417356 561447370 347328441 782326823 546221024 653594007 368305937 345874182 208571262 516067566 590794053 114938205 5873839 816246872 962550697 874136154 21941559 173323500 219574981 49641007 984328150 748414955 829981666 13189407 769957188 472359804 991953065 457842078 983997259 215031122 770260198 308546985 558259827 857026821 162176282 480654028 335195146 749611507 429269139 871035629 742706764 991896168 990781015 979756785 34890821 926992547 624587364 823233149 977501224 23882373 432906985 248640791 257786268 979407975 733182409 687475588 907566883 39074994 264327045 621329044 758409571 941290425 951082520 519977115 351783961 668917780 600776154 712174944 175576711 812926297 992867874 83915330 621849771 244073503 460448248 181963112 374172847 772816414 554787032 619269685 417920605 117732857 649374695 351234503 329339399 687351781 618795631 165388028 760707576 599014736 632274386 553637385 32786483 531103254 742179924 231555951 777662972 206694657 937851022 345463246 465429053 985514791 941210463 60067535 864862619 906183567 472286139 824729480 599847597 100495655 733916161 554147585 611454670 793036792 51572292 131680078 281769474 423351634 556865416 514892619 253747927 353617914 482907135 513695063 779554837 353973046 584311681 907126832 316909242 91059763 837163521 909156144 310250357 149715568 194148887 896407472 990544142 395320207 448882215 965158302 617978337 694034377 427342956 937454910 757670273 703830306 549693172 545344431 807471668 629908809 597896282 338090338 713895258 907574186 57572850 874653020 439947246 69263146 230353432 617505268 11665987 251949961 598945826 923564355 671376191 65009528 62557635 182243313 684669744 670644746 95105391 423647015 498289362 530064090 876440286 758830778 762117107 341440733 907231759 240823208 753550710 125247456 723625485 161044648 408179067 815792887 555569263 360094379 724067647 437574612 536703421 228579973 521364851 338723635 665217711 836758418 866913620 591882977 201119951 48605323 459834295 717800623 89879389 557001617 871993560 986754123 636275310 31876454 488807759 365207388 832558265 839249174 732184460 531168101 776876770 737798524 361789304 141800274 936664891 487276153 228449523 455055565 307144714 525688563 779532921 610663536 84187335 515925414 655524067 373092280 599550831 72564527 960055720 292385048 54875478 805950705 592833017 280495844 466359937 410507191 58156247 786587506 337940330 704118272 206344225 464880881 573335946 898843197 615884611 290706894 788644062 275180293 435364741 918708350 227930734 383254555 161830368 567056695 616140056 187151296 732568645 122915848 293124709 652944457 516299643 276055102 639720242 278965486 525890752 918988701 111056470 498393719 243090941 724120559 129005124 771750708 935677017 675907699 649460887 818396466 367238927 360463911 966094802 431222477 424777734 360923270 428696242 265339208 543418676 183603626 505524538 619616701 173403623 431892307 667227553 780990642 955992645 111767241 258457267 117556376 834817794 784710547 627013257 264369020 435627284 27240027 312603779 876715325 639402367 284583928 729922584 195022572 462886408 183305378 498179786 238264350 712714991 750921912 190169384 117056866 2906724 635809250 493441267 198926974 26783551 100131842 570010689 305368126 893363898 521641563 911497523 882633119 471165097 979233744 838482331 261335557 777984328 589014784 828458897 739642955 404730912 738786669 691841737 611075240 519461277 812837182 550162699 543394751 324724652 36045848 771569148 250369919 949678259 397673022 141654747 841384691 571722123 542513837 486877384 84234841 728756273 485995784 791312056 819112096 4464324 881816887 140668231 745963164 607095598 285989180 467884195 274446757 90345783 125089515 323964950 376713098 94584717 258528554 844868046 304352372 114250015 685445386 204090871 272901209 780729520 112826209 473786346 706225495 52520879 937339998 960033940 293144852 99556038 890490573 325246853 347869808 270605582 254417162 236620320 518380301 891383546 157437030 743508766 48675642 622914608 402467527 273750514 73584872 769024277 141032370 424499808 648918155 960864579 547692810 468295508 92355066 861671363 900678205 945714221 168738133 49205845 259575524 426186159 33924514 360940460 63732414 83484464 475131446 383994592 143469921 108509882 387764973 978086336 279749746 411457684 331517580 491328339 244036412 953286745 907769956 565932313 810948639 186292007 818283915 394486142 567157607 914205439 531769390 72636630 103135530 318077847 889514309 98158148 37577984 501510112 155141391 747057184 671941110 678672645 980157819 42566869 776809225 808088567 149192275 110973503 67721119 521310912 850411510 74127452 150772407 239299084 94465026 962096156 620393594 193460518 209480001 781252991 59298691 908936405 294967768 40292970 693052631 884554544 773978743 865655482 919962536 720577720 227893143 873418180 233709316 422353284 446138579 340355902 80620533 337611079 21208068 925300104 985873741 499236078 733759131 946450069 19653996 555952275 717241519 848420693 828386795 108389042 263419132 349130936 869770802 555096652 806472698 805943366 188100547 827959697 122821398 129612970 552774953 141646718 233807969 581185459 846965872 310601071 915767322 570803532 393721992 934112369 355055290 341413633 995928072 114721517 90454942 782012333 676415719 948946011 630822069 457987761 469584258 93994401 797382684 20585174 841614187 641728365 55749446 320018195 300169039 418764095 906539869 905891469 300121907 390250801 985898673 301438537 848830257 695438749 150934314 650920062 18900566 435691623 708647929 192626696 483228863 945110217 481221482 605167534 718351453 697688339 199201434 851800787 363142977 523128876 938377180 404082201 353399490 791317462 45730196 322445148 79607076 902175196 983885373 597455499 936080673 567175183 904728544 443491054 815905152 874155757 934285352 447156861 219278519 595464754 922157182 535038826 48364528 17818778 268693 952571172 900230610 555767269 111163405 670391129 809738952 839060058 967660724 711293788 178193280 30553488 15847507 434511198 807196199 550593701 292214731 902075947 635087669 266883941 660891349 954547596 32962097 861041983 136872983 53023464 435435955 266471497 609044843 467465820 617435941 545708074 517099481 156574705 324341012 542069888 979999270 191292982 324848169 736834059 937069130 113625661 795724195 235934846 59585782 909384805 492350774 273022664 257555240 621203375 508426689 478289328 493827205 813824532 567418994 352031708 565562781 511091196 241036394 259195271 750414842 265342043 836438362 173647050 381487627 501788086 526117657 671776140 935760244 528973427 988843503 887854163 718093889 953917314 699622095 464329991 624171019 869840430 466817792 548542513 170855930 70768794 507221674 63711891 527025196 304169571 853181181 402667738 343142559 611471388 667208559 727962707 405447726 236544689 381039980 269633129 777312242 974436889 463221093 949582866 883887730 421732958 140978312 423380442 865008925 352977057 263807645 292843612 878402711 378659669 826470779 846510848 614486621 112410926 887522434 11932631 321538655 196740133 568360333 668461356 656018774 434704678 561539576 243039363 570972349 441474817 957468036 84884048 149676262 525271306 905578980 82678803 499852083 719973392 239656740 274220594 920337743 349291309 997522336 130315865 701754572 389828466 961967813 468490197 791857071 252657793 649162359 47272897 831373938 397553768 51988426 535418733 604526159 8961086 129628042 516436056 414636281 247352498 640064850 539801094 902583170 439946049 790864937 642937580 387862983 909275222 780621239 285501108 423001827 103948515 257142548 831056294 184827655 429122613 37129735 752294382 170353373 217170557 64041619 928906461 562351749 9551568 914468206 153375443 336089724 161077433 852942349 533627833 866414576 933616728 136412690 582776120 375702719 563724466 478954138 85744025 406614419 948460970 845133173 474842445 574931610 301306304 419415024 22462078 539722939 634843454 167198093 687204200 752325992 957197497 425283609 677036 361940566 113971259 95030832 781014876 112925775 291960740 690730636 822094418 207820011 183931904 910136868 53870444 13125932 24528724 13387031 403397347 21847923 731199000 142997837 664264616 48846716 618827452 429450252 572838737 422007880 34886185 572636792 393667654 115856300 948639088 768173292 438862971 997843472 223270178 149994086 565942844 625840342 779402967 982673588 424456635 483575304 601002118 212532981 320412855 559298061 129078615 541419693 819913628 874831150 209458431 941718874 246545671 582856239 958490303 720459165 405597013 467678674 19621166 638087892 870605586 410315039 310872277 781904641 558862150 428540529 971872704 838601269 891742078 135083757 452631583 97371751 941414746 471802923 253968702 325701426 209947425 737061161 956059246 494506994 570469738 146921470 28622135 126868102 360574418 916978235 761206713 498742436 691845843 766766152 261071769 628908074 654283009 375881043 141991960 759232312 850284140 543954819 627547830 479621625 336741366 990862123 743271575 73049879 460711461 38488781 373063640 887584221 447414877 188310224 266993000 290890859 750000257 575418703 780461091 320473774 285162761 415743317 154657579 743490987 475415983 584763942 895197216 354464583 819959352 956594721 168473842 595862362 439248317 824119528 429883020 413196761 455813369 898120274 722801962 690602904 558001644 207923650 820530771 385155944 349073714 583246888 383460735 865432085 201113304 660636553 844347566 560112415 762099899 707095252 604674016 408766641 817376085 94472871 734691056 118617476 499006718 677751862 324676970 193695568 300724679 52456688 474999372 911910952 844032621 692737573 651346642 90451583 583575826 618679375 111053047 861853504 401502387 741866862 557311709 100604484 813005386 282818030 671054579 803846455 840817992 260218582 74319630 644604992 927078600 976862009 564332712 504734565 271553525 791562344 97743862 28617174 195559026 69950271 526916117 620907146 637988696 881238584 834309136 762608592 968566244 508918701 820304749 582529225 291303630 844633114 741296697 9210877 325405934 265657533 253760084 313320451 201695345 795976562 780115354 336987937 549693923 85549604 896662146 111172292 948732576 527291406 99991491 246822021 562456320 254276731 597981266 18785201 294702533 546554386 473255112 986808408 223956933 223604655 689648613 500477049 657542363 108135150 401656832 424545747 984691373 699230472 248362243 524089825 122757192 746798739 218492908 772499130 329559723 130760785 395270707 787463367 686458290 453500055 709316611 497890396 90965315 318858380 837032661 484917312 759423993 418190050 187144989 625544988 974878575 836866107 842770590 834733591 690898642 444714986 129671674 142255111 381046988 227327852 362058353 325473647 480520286 843242255 677287730 816013742 832328748 724313434 512677117 752018268 227003375 686442777 915099269 493866137 88344764 889492091 548814715 69727648 570723417 371290264 121453866 478541896 971786572 315556265 559059432 945874381 192664369 774706852 24542253 129737632 742555014 274280434 304756737 562430643 522087766 464459642 133883291 33062573 241706684 184082283 379783285 179202335 352358543 945102595 256333758 936683723 4781207 474377568 962253589 501342525 977710554 381429103 731745487 563642424 839678828 235867143 617479956 623983696 510035028 273449323 319191 75649542 265862178 490585969 117444431 100573547 541626781 816382182 728322381 638601020 228501249 158410715 607787663 828812549 446518826 423971817 934203025 44164932 332481952 559438951 675552485 428355956 616301428 962175492 748603472 230507922 53094309 743762865 65893837 192723763 754914892 763844682 435020252 113959424 570534651 852890765 967084802 623672811 493382895 625075062 607184382 648506459 608150698 615475099 810780524 926740856 212589982 123569101 939573529 861790024 61624668 209567454 774165452 354303546 568653451 21619025 505467975 664513411 993403996 927863248 808770238 800657659 714683247 920128343 312315628 1800238 554592606 359651835 140967136 162345150 950045427 874164381 986329703 817817471 956008055 797318515 558378036 117512054 100965330 647999573 488708403 928246785 661586373 714693975 652107614 979838046 645140268 519120279 974062597 831062881 60270243 347532415 948175534 364887718 966392395 71653191 673587052 982199304 423162096 66761604 244559295 504550750 192263714 905484965 840124826 613158207 553962007 295353953 519075877 887155557 315119866 507096638 852871449 29838183 615990477 177010862 324021476 215245653 604101581 96093538 154626171 290804781 641362294 600549923 249349461 527926568 229549696 459187745 850172985 296186829 823244974 752005707 992712478 712261658 724157778 718742181 449220002 350489333 783758239 844247844 5078230 117039773 906661066 241403102 563196798 922712210 601391530 821466436 782912899 142514890 184980488 61193386 66034818 907039359 681365169 349399070 297927052 701461701 385833585 516111449 747116556 514793984 201596121 405058880 830952349 730706802 437787103 711112836 75729571 465702738 736593699 324923526 945002816 668311 525116999 445229870 94342230 612204120 747131769 229248960 352036204 379382297 276570273 332783690 961335511 982625800 436944564 909578656 148350444 761817183 239356686 151096327 126680805 610741047 374851052 635823595 205651154 190008955 980020372 595557445 567435160 9740910 677953337 606603766 658401729 912748939 568968352 807288840 90260243 969028168 141115052 981689895 267270436 670517696 848982079 449507486 80086549 614380201 542746581 56008266 57129789 672305876 608463332 443147344 994046466 432147019 563193621 284943630 152142961 581344510 851038491 76790053 198053951 509978945 297975862 110760218 195665707 612595278 645492974 6533771 575472985 613807132 683764620 964858139 716538513 1240139 543997233 476036386 279335756 484309531 628511898 621381502 39985210 947819234 916032465 694042395 174671489 311532104 281185565 877200134 734017294 74575139 312178366 402938372 350749631 575131116 507572210 687814099 278626033 617538202 69037299 923865317 573765514 752103002 672894241 601601037 33245642 469411822 523930120 753340932 901616620 337586151 897400540 103351150 821259712 710709511 419967996 93692127 211568895 510707722 848875261 492941361 22662602 953390162 945885346 747528019 450061676 65986995 26718530 338437635 427886181 21669110 792271012 811713950 173498573 971707921 387207507 202524069 582412873 278005958 1786561 320887147 779412044 281833675 366438993 962471694 93929571 304395002 904483662 181538127 86083983 874638766 236340721 723120945 678216603 634863233 422730264 945921072 315376698 506777700 414802596 340404158 809706618 108679691 924318135 973732887 42413975 368750243 623766135 936737376 972888389 729350984 214451870 676581877 290666928 998629058 17954761 792597684 458948396 950694940 415612260 787978699 136446579 50484145 114022909 537155190 593833663 749092473 478231944 933293189 288312996 414226662 877119470 635591797 924257134 141395586 106013767 174007822 784550996 214561632 850628565 177656875 401485074 578015324 744514508 623122252 337213856 9453793 639583236 44296653 479664926 643003559 619563140 937365950 362990761 706121143 336873346 284483334 364377384 44070397 892876466 663647757 662093564 870942590 4591056 402165968 137093148 97011376 572843982 943862878 86548028 634221793 274500587 593716399 700923004 903285649 673263460 278468445 611052806 715949293 271105002 669863277 131921908 930942729 527982242 156269027 905153289 562462098 72242042 962083830 389636462 524447407 754469661 707847792 146200512 5639109 16585453 928817253 285563262 294972797 233953123 194424624 595142134 877264253 435310806 613383579 647821747 419370267 268595030 242377349 107963578 327528750 436889894 774921208 597020653 636225911 107056748 521467066 98993032 241548857 800453266 916532697 282594928 626479425 127156561 757595528 107767156 245832869 808562732 630988604 418575935 751834536 969376747 621052178 139443871 416798093 603269009 220657952 541645175 291882517 2868243 654044857 974038543 179150130 476737840 580800037 252250024 952396882 500182489 605187069 340441521 630475291 26819133 713882174 931685473 173167798 559888995 906371771 751914026 458779819 359965458 576404495 976176728 764362866 548105425 789771559 733415821 817542261 426477282 452167932 844240853 242386261 941564176 452725342 807796734 142212916 154396689 44777137 277180839 886347651 118345200 174235918 93347554 772711081 57309298 937412439 990961493 320105132 738326329 379241429 272174315 671427756 341053780 734111306 768954804 435931947 230211304 946394147 960627502 25739215 883561418 713813784 252792583 294654161 913279351 275339109 366285644 323562674 258587160 569321482 612150138 707329050 493529517 421054564 483485945 205049514 966169153 210562139 766083177 592441144 837581411 379021677 513079712 596288779 502218859 625228883 610222726 852689441 184343996 331369898 82311902 713958418 538106540 426090345 450719490 707493639 851356994 4642815 301260995 113696219 666564452 416146965 837954870 99610720 802045326 892390518 21064616 564364179 401143434 405871954 754942292 609656469 78597486 648423833 198682155 261124838 147747854 679340092 645922594 584339732 509065672 843612051 229911468 164352552 15812661 288525018 881506705 139884870 73466661 65770677 250444596 955327597 382427923 472018039 845681399 786933502 675456691 108428421 471039723 192438055 286614115 120191395 370823285 539092776 776947260 39198450 661537270 939614956 640757980 923137115 680083339 312159677 789190500 519828939 360131974 160929430 3029381 836434916 112019719 856549612 348796876 960034267 19058538 189881055 357440001 116872608 715292741 683480346 16135817 567849831 225271420 570644530 675579398 332685038 861673993 654256848 16759986 852676152 439581716 243598215 215075166 356458572 518949845 947039086 468722258 607536563 294411551 77927184 334623904 324561969 538791582 238458569 671028245 655512287 156624617 591586814 788758062 35514018 286712397 106951076 74371144 916619080 215724941 914852968 253150311 13715031 762732854 482865884 935760000 549886568 501980916 674944354 483400796 97871444 672040151 693470002 550397746 575984538 538419664 665883619 139864513 542313452 365804862 715790568 425262443 636887352 235766742 200571972 945324786 731541224 181313751 875843392 887514146 975367749 126237360 995610982 478518508 382092184 299789967 354489027 563219329 952174194 106548583 329496698 693709856 726364806 123603528 398831523 231315332 388467438 835536627 769188521 303737784 371134216 33105082 398973858 652175010 940899941 567999471 575417270 165755150 695762227 955682762 2877445 194303372 424189859 701128668 49181140 326413480 5228779 545962440 737605292 2175645 224803964 789804492 13195622 41392850 886346067 684335906 596435121 523250181 84879268 447628416 897617932 322433698 192565352 568449122 107554759 831388078 513185581 731885872 103499848 238904847 141237912 108945787 15954529 56336844 636798499 667199893 951560480 504991675 245018213 788455036 385631159 746148587 666024056 312346514 592361519 289682920 322541071 579503682 980206954 508930387 910115058 658636889 350317871 975063275 177118370 714329165 150135881 104722855 723481044 925264702 826939324 468056265 394127773 79535854 265391502 44552153 609271798 390530287 712602071 250021896 322208683 523256690 601289691 121007582 895520122 742532627 938575064 190388823 484305904 803130795 218694295 694313647 424573078 702857729 609038666 764671083 636450850 911742191 676517300 850556650 438196746 733129462 179634830 114193036 330208549 796988333 212969120 707188443 392286369 956984088 692272665 378343147 268878910 626174622 422793940 615192156 946549348 951225524 116134500 289935512 811256208 874381181 805464871 230989182 994692243 166689103 462306481 567991116 159310028 408616318 622216098 23110848 916068120 305360263 620844912 924872350 457778105 675004902 173685407 688116545 85906600 922333342 425626919 561941801 7256554 876827800 84608542 142426543 938638002 384955464 387279895 470224471 465042583 338682090 833233454 247607728 293520790 107509876 738629507 800342314 301248593 327276139 182920188 250353911 324323915 435598968 630185865 673482258 365132988 187679734 808694754 372830158 484514319 54763791 756004204 345970152 547679008 876961022 606066055 690906027 848923591 922421216 959877154 411294348 843180971 899808959 424120791 933460233 512592790 158214260 868650552 173112611 325387586 300270709 11961983 562624976 361680894 743905772 21974540 117621740 12474579 239766313 661097373 731479056 689643538 732109292 359194494 668547556 46517586 709977220 319581534 699214208 464187167 514021025 624054746 672652536 891521369 274956590 464678986 157738206 166149926 514571677 528493657 345155886 990470634 933997812 197915165 33785247 766883681 287709746 442285871 428061469 268863906 253463205 139927095 278464677 510597708 543027918 953206863 832274363 850829890 790258799 881449083 5297328 617765750 531186486 721323496 950512812 968009613 49008375 75121068 674301218 658043229 445449070 321474644 210235319 204804066 554615273 954392544 170758619 275916444 739207212 367312037 596207856 46477057 745551049 794389046 61688476 701889374 376552911 673439122 33844108 447165591 921505268 250841558 915867024 661449287 432807283 294130168 224106229 953790030 704867639 772715137 69045930 863955963 467007539 146351396 511761234 668895369 204640067 433903916 686274655 271475633 713306295 598007020 845176981 162988817 748348999 56801734 803976058 903807776 205471354 265552885 296050100 549915002 736239995 692469925 721335621 913615163 776210849 285449584 760782678 998711686 206193348 193578237 591711354 365371607 965414187 817935367 712242118 445951985 719241490 608510981 370834186 862336941 292807374 456745094 321113707 726024824 867087239 85571285 382477210 530529951 84655983 530779050 633858372 570655420 938482075 504719103 746377774 941190035 25078177 975293134 228211968 272960392 98816721 649885646 327829830 33471489 686776937 80197243 110778817 825178164 7222649 568411619 197735216 300280602 69049335 274301757 67273695 639239982 133618529 738665687 9951458 799168878 905330740 520747553 310762677 11580560 8006620 312315204 538639558 351100177 93962959 951621650 980161530 773854275 60966125 519423243 815671261 243272649 710514295 862951073 145872385 645603842 201135023 768461213 389043286 133674587 540997582 575035987 689664861 297365527 233797897 207203560 257997694 525798185 363773723 7595793 53532456 734732552 338153428 43652930 981646126 314606271 885870661 843158554 67364723 389418489 134694024 718611237 984053864 863513019 344164291 163626205 667300411 475885651 674535447 818475006 929118468 668370739 88795611 434786543 920184508 648163087 646819643 285501700 971363380 619779645 940069566 750580539 285375507 577772012 473728157 749635616 693482035 102071089 403017718 948746215 280455957 274435736 907221471 54884563 394705107 138247986 130065095 223290239 654008749 937092397 741539845 263550148 727222054 890785245 524070723 655549332 399520283 964015606 339210957 949871989 108896607 124982327 210286207 402435986 880618277 432805311 815425572 671525488 587996921 386613686 556526481 38747527 965120035 695577135 741576068 725773679 671412279 269782771 389200513 543658772 403597746 708303929 37336990 650776352 453139090 581788575 959159271 474411213 977951127 266169712 260821897 579499010 655023675 70740958 125998372 322939137 137084136 685177217 487421944 848137910 721260799 854587528 623447779 272268543 296895871 273381147 991152534 255946642 541277033 248093825 460366030 98784243 822093922 572775573 803050726 688911171 93950203 342250929 144167148 525183795 225840792 275154614 577447905 624541821 874472159 578551383 101132385 329600699 201558014 658615480 717960667 686641946 223686882 412311388 718553728 41548811 848051759 609191130 241911983 125483123 514997665 484317559 973876573 764082416 150050303 655400233 243439373 875985819 435507242 699865437 140932687 293580627 16381611 474052233 371999453 446202640 135704959 46406158 293441587 965974011 434641292 861143 794734392 711235639 255307067 306099103 411625546 517095283 988273240 151772885 190740809 689630540 42853982 185221056 762565814 788258169 98657782 609809449 604024078 578111256 945610063 840498262 257746721 887459114 749972299 997246851 539013588 379465687 138135853 849301195 587148730 960917953 582486022 543864099 625077304 11724305 707174231 671374488 641109405 218812081 964728599 408485595 293630480 400481624 828551506 73206838 965266826 460012139 178550005 58041884 980010187 551877865 310977342 906108442 919390563 238095526 419927297 948237953 383907053 526904180 569546030 36765758 696742025 88041197 150267451 122163693 114162364 16589998 58884830 185287411 585931492 231253814 748057390 143933663 238006718 431973786 991144676 100227454 272472608 646726052 643236074 737624042 518257199 539153726 201841595 441481099 497053349 975769994 6665359 851875305 168197834 145987362 696471350 65066704 769243189 85968536 126686010 427646288 18060466 149505480 982371111 634257823 946864972 992165499 561192454 429563418 284961407 931239196 256422197 667145976 620973970 562729703 577927053 754540758 165071491 65523767 606734404 762265144 683225643 252360327 753826428 930048776 823217472 181435184 736430874 178051572 524933449 946556072 782379640 832932048 961002477 883169368 583132862 317189618 254990001 332579879 388453587 107775530 529587141 691055537 381258861 302449141 711046622 13684018 296714074 299342582 896984025 33729844 383359170 472311484 4959295 568814116 453996789 935739071 633945169 878345618 469893664 273187097 267723021 276176827 970298938 613850752 696225348 608697499 382890832 375296526 734634100 738821633 484675386 174291190 636562700 392756353 729192115 337414364 103892653 129433381 133221793 299237168 477232749 71856623 876741835 914514943 729582985 534644928 296012711 947804967 800712201 950095313 313032374 2613169 561064531 330569044 268759371 986108316 219163565 269787220 695004574 439173727 917381778 920745134 481257505 358192528 492013697 272163690 504039069 895555595 507593210 784187623 668574102 243140154 666802971 478857840 507854363 256504296 105848805 737616907 631116156 652037758 873416868 748017946 380626375 236867489 428981150 573098815 192811124 151092211 59686875 379924605 329005551 51520222 957727218 274873892 346975277 987372601 476481270 819047650 186300803 263767698 250636651 13270092 811006308 124830474 916790544 829914397 404882229 631249088 700553433 923741077 325982389 829434306 703524182 37859560 420746868 757434598 966567528 439479565 605926520 384539212 467181448 279557538 351099813 782923953 961422747 823846050 311980056 687215343 598961745 718584316 373628828 241740441 454773527 137325979 446880330 140378541 591767495 383134734 511905552 478272436 734444391 471902965 101271125 521766149 891249556 575298375 487423133 259199138 433798320 355589373 280488194 382966565 116623820 835131060 990373901 350940845 692727657 763301327 191908207 148184437 679668816 65186410 724967041 577754013 15004822 489109321 775414001 859818294 353403115 522193855 258754925 343260534 326916987 487714434 561974511 426741722 489814387 932022388 189773762 414948197 534125572 610899780 379322949 859238719 208551178 837984153 552437080 93808516 7239761 308581900 133662050 362462315 615161052 859978001 103837628 376851906 107445332 452081099 208315823 901292852 680630845 253254215 629644097 284981722 142555309 611887377 239430651 134406009 614453875 754360874 740726059 515175380 572397607 614219289 903499377 161580963 650442740 734503393 446865613 570332046 468111442 13280392 77725647 844578652 25377903 883532767 864616832 996631237 576188576 430042557 970101168 307111537 807267251 302439617 248356244 420514242 871684628 279221959 585967271 902192337 19237386 266996348 973873473 841977458 807125883 680686437 856131918 508835162 584054105 743714546 679921889 97805068 291919638 674062155 253090096 266977065 854088609 287392448 708885282 540907800 203925676 958650557 433078453 595057972 577053080 563508875 677824410 202016259 463440378 328006963 723286221 96794562 634216391 822691593 261174755 929409172 768858611 671570234 957799667 130973641 489473868 784520007 44481537 163528600 450783627 50110456 540229245 469679768 472679722 259834562 455620549 247519518 287012169 938070731 878062466 329211976 538112377 128853177 24164734 744436510 783269173 865425675 236763397 525923247 371786075 457497303 399074867 62731537 203218836 216742252 969507649 58409799 378845567 835376517 743018112 522741707 431090347 305081736 269606970 219602944 367075676 282832899 614882980 281879950 318488950 934710493 254988247 581110262 615947503 351152232 942292688 676036976 266142242 805413664 535295937 635718515 518721338 40234118 395641762 940928897 535210223 169346806 535488258 441577284 376428180 68116153 150491265 962522792 137655601 996355512 528510286 175993398 724972901 440742744 558347389 671301405 827284990 552589180 365134768 394600687 196600475 416396684 431292313 374806918 575935969 167738080 737701965 599751780 179794743 492701311 48374576 772417718 980221449 230460053 648143511 859027373 299652462 66771236 569441297 618890271 73406684 22435680 165446966 186190283 773660299 757177845 445386345 103273736 913460682 538297350 674071667 60096756 259557780 132583729 358970674 106788954 432892717 452943061 763884503 222062884 353516191 11505500 115426325 297233398 798340183 523176238 663350166 657623027 509289961 969886289 700051855 565658842 110850339 921036347 829966498 810935240 337352943 816980370 791165523 635604615 307552892 946336917 64147598 471374955 795922360 88086327 488493284 726674135 167831338 595578962 719280427 315849094 365413100 86305389 853408630 985760562 949858561 984727784 511703607 255507899 316823369 855815546 291442990 913494401 745367074 92394523 40835780 983056823 343542023 145406842 993890555 157671242 799153931 422731 51734418 879475949 504468070 295056737 950848351 826159799 952280621 796749235 100748970 205899000 564027813 821559875 926891697 956090032 289690623 226700682 447403480 33436358 178227434 45295415 17422221 248967297 939817670 946273632 193894458 910435772 746296281 251163251 503822205 248238357 406186176 14817460 920770286 467533595 843624500 358944138 901121036 352514241 657511985 214830564 536487133 777481525 589598976 394790496 757153305 267289316 759372411 704916000 641449852 564484589 468356914 920158999 76654257 101894369 968901131 767291601 782341598 261228556 694450518 906859611 914737829 880209316 890455869 419702434 673166574 494768611 913104629 235268664 208935414 651445322 519849577 456224479 456873095 727133213 425689403 178470052 567371479 577814606 808079272 726514038 755531494 142669958 990003992 914426367 123062796 514337445 43054457 686868674 899986335 951653613 870430787 474552423 600722935 776724786 199466203 993388066 511736709 354108142 31534941 32152828 597169651 59168360 566976367 359178504 352743450 443245180 343050599 297088170 20160515 575229995 534685343 344904732 660319920 470875931 906946326 312127365 200252956 24232247 748382373 735840905 971871844 764595166 690039871 964102393 837213719 855984293 98746635 298087446 627267734 34395713 213022730 493391286 977985339 461705547 636862260 923170102 836727603 109253444 710406952 786128717 211468483 995066688 457212576 660467988 996789577 291459649 716270969 345113911 35949681 740889134 413102570 991894375 997273644 506795125 854204720 289246694 604006092 851351830 113769992 33167776 196220660 233145736 31271077 805608751 292069512 170428544 779507167 155322567 345661541 119627097 700859274 453065954 918908960 393792154 602852634 185997493 461652949 539169302 744564842 832081613 768376907 82409121 390954357 701755532 878348739 907847225 635035523 369425583 92588857 994447536 466179197 929934440 875847107 719070833 335101593 616535249 294416039 895303179 930359766 510750065 242110378 581218171 718507534 265173983 807923529 171132149 370353327 116997902 556060583 380671424 399986097 993165988 686437186 511967458 60539001 18607906 768421028 185240920 236395397 131925833 955528675 358875458 455532001 395419409 331560639 836919052 22622991 125691659 36131166 782817370 143989734 285518471 482200420 707326743 276127922 800951308 615267329 750744405 819673167 442533130 626761609 360258662 708906315 594549576 895645035 457285886 666838824 732290839 125643231 993497038 66302959 795583815 825129113 339899068 220489708 17855331 336817560 322507327 816769584 595372741 136958093 769590610 162933525 18677773 36222149 871869420 839441344 817564509 671935894 963806797 334963987 437813836 922913397 728976537 535027315 64416815 876616371 58367466 770917343 693877168 815565659 84573647 658513029 521226722 914048777 441231052 349139616 783240120 94962617 979658113 861186824 289690613 959274649 797977320 961849132 2312217 71350888 7816306 89806434 881941276 762400867 586967530 417778677 944729362 698123923 79469041 950431836 700730874 995314534 298264753 443226214 147286915 74954394 563478336 943812613 844892537 773380225 834020640 477128113 43404018 85621537 334174141 78979819 224451252 50565121 738179224 548236896 85688903 865108673 32762447 35849919 26794084 735736322 862759584 988893997 945507140 93766539 657534657 998041314 292013178 715922177 893141280 786636153 811671686 847571581 785925540 356727147 95690096 572861338 783790182 788272352 173415479 204375170 582870812 335851918 866646918 25145938 221061336 942077634 907436619 278655625 548529821 526975627 185569685 525256284 485867508 690375699 777730232 31373849 945456894 56752770 643997591 663912536 628977104 820712486 265680395 393862633 314358240 79147914 697218565 931949746 521780251 754233393 225476252 666249377 573440593 689709310 981131819 205669769 942264005 269943433 709435386 817003943 269985471 344204191 807293472 616424961 512622839 212725490 344548590 138944548 399814776 325238200 679532905 912855695 512048269 540101067 413768657 858647213 179545721 326709854 486668199 726179447 731579274 828444449 2794123 834339236 15002281 106775634 819679578 816194487 648446364 83367111 956051686 973651248 509102427 302210889 88222981 330665997 989441391 153850193 774527313 269285464 801359320 437146829 630748608 594087081 893272235 464428993 400838956 988566896 756850265 859796328 486791274 780719364 776628458 520542207 987404038 340599346 437100683 305392556 695870419 346840236 634238272 257105786 52841386 262980960 268637950 532160798 560659621 723622820 686608776 213153436 602282264 224374404 306764661 687339985 571219979 942199340 56962293 761775923 201865782 427768832 319367216 97186997 310176506 718498982 936200629 418517949 613343668 312208876 701256607 625759016 856400161 292023041 286503918 790203842 589661572 949806090 914563838 179783560 396007347 226826313 266974421 926857069 203363717 980317084 442131901 782229940 851905747 123956355 547465336 82724555 796405048 295188701 325165079 765415387 476247930 639506809 537032567 149643981 158767732 39013433 674203867 795436566 709175301 603180633 477159529 280136200 783016160 738541123 285507165 820057073 313451363 360217367 20236021 249859040 890251569 260603039 369600008 948867488 989740127 173264516 367440880 506955256 686792153 15209 195561252 254799787 728806776 72023885 630706344 98329277 213471829 904762203 840757881 786608265 257844281 516682557 462161532 26571914 854891140 764863041 416262295 988872977 341950211 756351497 20896209 544163866 568722608 349430577 551537552 842626749 978494230 683381149 371525476 978323091 787011769 763211695 664599004 567297401 585552743 670925434 388426949 421718779 527799216 325378144 915137409 577994605 190954340 283206004 698475535 614504568 498998429 139786788 155414504 799637721 663722356 429541915 726908806 962488110 895078465 990329755 171640065 266591480 57855495 135114686 554262626 762461543 635706841 777972861 192220198 682769322 664796597 579665056 950236213 239639058 468179144 984859462 372916324 800990879 535183245 570382025 711604420 276012674 556633710 667692166 769472266 191728269 71435504 859169422 507242392 788379344 110899572 87991297 430390276 240600167 75888335 885848477 968919656 523241689 278464341 779875831 83967965 210906236 514508090 147044737 459259777 46497187 657560898 377057483 996907027 409930573 808119225 735975608 293636224 192432867 103707 132054687 457955871 301036238 273229414 319181158 465273136 698002984 403186818 91213767 49101297 702735593 112370614 915669628 657782399 810214207 770595821 30313644 511757889 60654922 859021184 467677624 280731799 107065325 912319524 714144165 865222311 326969630 634638786 300656099 549509609 198991089 946865108 874603218 943634799 317547154 620577075 630635147 948072906 980798412 318572381 751823280 989446543 688584175 864223121 451106852 248875252 64578344 438260197 877646362 629195706 169449770 662815939 483865661 659577991 47822299 147306470 432317425 969325181 783661321 197994365 304815560 847884387 918077059 840661808 920106738 364653261 262931335 394808349 871630493 975501204 378099868 858000501 987838567 284309540 11597340 468786356 111400685 826051547 352704477 608357341 170592224 757159502 601867546 736814230 528837483 81992203 665331789 365235355 646924254 854200972 293403415 223637187 416037333 648716011 641816830 960940009 182983224 832414131 141718207 222569067 230194238 137301937 910135132 21016202 463799533 183507070 666731723 850302622 16712506 269379030 176071487 589883565 122149159 861503769 607895370 684469756 55667463 354250386 393788522 5625627 612210959 471523291 577187287 636552520 766133885 479562001 628553605 48933596 247009750 288543245 467772916 955134111 857499660 141518932 352721307 984245799 560934118 224767435 753031752 802880525 336048814 764716310 100840112 908440372 830124100 246721446 208089813 891510384 365033233 128488754 575419203 738330461 665290500 322748914 295472680 640698331 366056888 22304134 698918686 847670299 53142112 122280705 563457688 351259916 386408307 546104453 761081397 149381061 994238554 484060081 693947649 258575989 36194646 176825437 832191473 322793126 600058126 836864720 480199424 726876954 668557611 315103596 904842577 184201020 870268920 451418250 18257986 169674058 595666979 177875801 51855357 67044726 495164934 488836356 896784715 663038058 859585088 701724254 779044112 455160937 487382886 172822695 284229225 582889699 360210517 86235176 292137165 995398502 313656434 470268918 861310651 117342904 595830067 9879320 89740222 153554796 949058340 186597953 69214075 468774897 748356394 429746223 105613656 71539513 241679865 934718752 596477098 243279185 575535089 70405800 817867889 499952999 117427748 15594041 810794766 372393423 945063438 751928982 996145921 213746067 945454776 658324725 349050491 22482581 525178897 423232578 12481018 377799453 911052465 639137835 190291337 253702053 719788443 422489173 429741518 205931685 554911770 544201099 538331828 740469788 365617369 358386654 300485637 191818740 362692708 70231184 328760141 391845733 833001345 69933412 272109219 844542181 280382413 605860383 353111397 996987467 990847486 711229139 995953537 253568728 591044074 887278277 956448289 618976052 124452163 637613293 594058166 135849057 514801726 834880381 265315249 118382651 926752386 375814273 367609144 327509462 636951006 68782172 26832432 626011766 710823436 211375719 794714967 510046675 78285238 438149764 547835943 44472816 783204933 345263737 122386171 729368478 850759772 146130539 629696242 708626362 915483236 927980202 971848373 632359442 399634589 362592589 138681097 323514394 667813336 656126122 522032026 735331387 821647263 554885 555642386 654952887 179069611 916536811 845544436 313459380 524497475 979269151 754188100 317854457 28647936 458300880 186463786 460823887 314484680 701059750 629184084 868789189 323311776 471857904 200905206 878889929 518554029 345807474 654515140 209287067 143472941 411786886 34182088 831306206 412681940 287632303 850570986 768480618 508657803 305543213 418779004 965978492 701006395 639350149 840254549 661936927 879030801 113345177 797490444 703481946 801474253 192618325 937541690 76984826 436158745 277349145 437050576 759642606 9058835 245773268 133721083 943883723 589615021 542190943 210339892 380409035 393754210 85080109 273390272 951209535 233254259 545114713 280085515 287306878 983087813 29984254 363477968 871534110 66134410 48621434 828501265 150373259 850484604 151469743 646877889 974796791 718986241 773848740 948132133 318642875 62293118 613725217 35561369 318922057 63795765 377949271 230133521 439763652 289745300 629233836 520805817 964208073 858162854 91251690 733137403 104990813 259181001 431833585 738352989 774261151 391811574 476674845 468112747 166026665 541564649 595591091 403397583 317287741 971054434 495620027 496140549 342876853 375325332 915819117 90974993 207550286 146448324 998122443 363854125 819481996 518751684 839324985 610796092 909984339 386034938 402777785 681036277 457129703 115884361 744463263 92816172 454056466 493708421 13667513 943520520 484834954 46001851 597900339 877849892 860653894 568420660 713101276 968935676 930063621 502872393 822339462 241474343 96095258 389487277 794230931 358961246 750886048 973124079 626735977 553986063 977061081 520815230 549656863 285630511 101762350 48988321 304498689 50775834 457831911 686248522 595443125 614351528 117053021 536695822 198016394 659930499 108626927 839647103 825280257 991157082 992890606 153385411 38712605 726957590 55121981 714486212 402375728 899202593 964802432 562040728 313053193 334028036 510634437 657329912 153033090 750645871 311051550 986431668 721913012 696085285 473091197 800733838 492112378 47746292 962742931 115762057 16914639 563692635 688196850 793659095 94257683 167296608 812303595 663020877 721586807 593024043 59112616 151670283 657053227 621140333 89508328 443712884 373650491 186633882 68308584 3202274 363313809 795055353 350057942 12343639 521866250 559054308 741882182 944449673 507190477 531379511 164556348 836543366 691290782 583769937 889662538 251499676 539493620 914578783 800217164 542414873 311151162 193912870 859220406 636111308 464672210 187333856 510676330 676346238 527213067 979660678 165205673 871678702 595092464 67999839 558539097 171196787 415257904 968709324 948205728 289799609 441794968 936068000 10408326 512559810 38868382 233291626 991785044 266599140 26911987 20027310 967532450 2418316 184749008 285503169 172181359 967838482 808917763 847910470 496756803 221780673 665742968 215908490 20701622 202608246 582767529 844924571 241228256 87096582 605816390 490735911 390177449 743676967 612503578 89110899 265239709 390619329 997547327 921059640 879559187 689649332 644080719 33289813 436415808 986292836 662432039 33826091 157179088 353055530 258153002 382689189 97116606 17599633 642915900 551383669 39953135 563115028 937160708 834619703 708978637 716731308 467109370 968138253 830300207 762057186 97846549 920079470 118109357 513343072 558512726 918858726 810048146 585947574 629646871 184781248 764446227 709864578 329798255 607755258 626265610 683874240 31178890 677890198 477013588 382865122 646275545 715305549 765764561 79911141 969753615 879676588 57496053 392164450 222344853 810052937 679952807 275115203 813688838 341122327 440610270 124439569 300468683 714982384 894414508 296567573 807010653 172324543 517976040 955856454 49162617 242622231 850734411 77302865 172018578 467533296 141223400 826058240 752432590 370649631 411702094 325966662 736241676 723809176 925300375 159603935 999431605 678657307 176143170 381090801 710716162 848581926 939593528 445306732 834867845 520175362 751494760 316960152 585802561 986722759 830845194 645295792 69516381 876155493 359506093 621862432 609700849 769728717 843549947 742816411 508142271 331140066 908834627 890106492 293506596 388089337 360117541 190872340 323223361 626848882 686396767 637645662 364200633 918254552 391740220 266243260 582642235 752179682 915823556 426717914 37472866 968576496 688541815 221853730 86724097 417688855 574673311 570455971 152088675 676969835 145722947 494762150 759833230 258054103 630560937 737533074 183997529 891459675 167900830 428423268 57047890 312375487 223280562 874473622 180710410 724795119 624662907 802717661 6246666 657312096 934765114 604494022 579574798 850709720 407939408 556744409 353910824 865696944 132436976 616056465 652532278 408058776 103754266 435338763 264807768 1047486 364351019 697269174 903205184 150339426 773632929 345619873 5110859 102482943 428176634 42264338 56511513 369459353 452090492 749153232 215194622 274092712 936058659 59723585 494324978 639891805 653219121 260232209 680365329 31697406 692198768 369915887 329817816 491517639 364113924 176504833 161419891 83344047 442465110 611060622 510387194 512287339 383032008 423407559 934725124 896262567 556247072 582017285 813817234 145617726 84710610 401007772 947357451 751751964 194964523 972735573 58405786 837170218 782118253 448148773 451959702 591243521 237806847 427954264 776580766 393385411 660227666 336092349 267502401 372738279 570437090 890897984 148351787 431178609 597769228 12152353 882272075 216754468 873442963 748930061 500004639 543654866 456823092 106350582 314801196 329097125 487623516 145666772 377393473 859058415 869168439 777337241 116851200 64240970 878781966 852515551 179686694 212207769 900226522 214086976 717689971 719026069 428601461 995819767 257510945 341625588 327491363 727585861 906053900 141154596 755458754 104860472 531150682 883042359 510146545 53956745 216098743 195975012 845462973 463983811 671332623 60238421 415471964 492312952 673201745 895611150 460648223 218915660 916073626 21634219 990702706 288272986 103870904 964398467 768536302 272604950 140599481 356897717 43226658 767397942 142779614 120883169 606398473 284115974 378778796 581840682 552890114 484619292 926155825 728171117 687247084 25666153 890390506 887251841 941932416 279509600 774568121 827543344 706012138 579984911 334077782 719491571 238862875 435111083 940836500 792174428 131434046 344763303 704727066 24558082 288194723 454583148 703687208 416062895 407602154 166355947 943627465 174975650 934231943 808245501 354063578 14019757 15603123 285213598 455338261 894705651 776327166 649891432 99416333 789150297 104376290 856699731 92069746 67897902 680326627 125834836 120681110 338441270 490028693 429055947 268240881 951093888 649234911 389572344 458879112 121439731 984235396 691270298 538310200 462368041 515266440 279726025 79522508 124365313 605572714 163222073 552402515 141478232 677334847 2510815 390933086 933964776 727178058 292225506 820218921 706223771 990704756 773863090 869571511 609689628 970397639 493899516 72710539 806331712 405199887 362246849 404988156 786134885 595378920 303664360 236699605 7745248 50852684 591601305 994505602 134788845 577919604 39813745 775865788 708084626 790379848 512192732 347502425 237675457 474933710 862975081 676026927 561393477 275157056 863728259 173234984 764105278 233531131 586028067 511363717 948970407 216034842 293952502 380204694 618402919 294704430 213497829 54114209 25325549 455212427 251203718 960908476 751097664 743725594 956202518 54824331 595914849 588641689 602235869 623157229 276147894 282149123 572530685 581523531 525522175 264675473 895754493 61368589 261304091 878980626 165518032 555609808 352249876 571436498 717838922 171784613 923971089 731555283 890121426 87239187 355141223 793565928 467851803 453830918 881140974 796579192 887273730 996568967 180835833 263381164 190841427 383877303 425992159 585482025 122618662 615761229 740717691 423015268 873469096 418657197 522281551 637914595 57571860 129032920 671934506 305375002 553623779 340027156 383356737 534200646 741189333 609148346 650682555 210281285 556142666 118511557 625424027 919889356 902046582 519903138 915026462 775781832 229502673 161228561 291178273 327813905 902259403 335790025 30591960 807965754 250943833 104811365 596928813 585803375 279735246 280018160 845157310 688831614 371768240 910964784 296310447 307845264 16827847 139276287 291315309 724721401 967200085 145148490 491122075 867675163 960864815 416275594 221200856 558673931 868572513 692078380 677580661 75892635 342682868 963714539 760906817 976803988 438071013 880626419 17504816 216199523 682245024 347084441 657537562 74828371 938693673 154617366 530003732 630859152 367438680 684710785 329689038 274787893 251422493 915662530 117622918 684055671 843186033 165894900 721718821 851068665 141403534 981915470 741066962 504201294 462379893 287828900 943412187 994079515 477414114 496517402 180327372 811769851 927655562 868395678 676468619 817539655 573243115 186851950 966758893 739353477 159728762 101356645 656946743 454328990 866849328 227165602 613074707 256327090 35995340 992338472 827120143 458920291 14784796 981683711 761260412 484829585 713201634 33305917 754367446 463325928 734396476 217614822 947300409 245640122 73499404 30852089 515875628 320089412 505666193 824796623 345497762 452536836 467446075 718909767 216734552 626748296 77895517 890820665 304409370 813406310 682650001 690983937 40905597 812361837 843208325 62180216 926237473 991423036 5105229 298017992 655917885 149193045 158649495 119239097 681553670 528947995 35099720 31609054 404779730 354971068 634224840 549387956 645562077 999607411 296054289 280501414 10554055 922928370 171551339 796316538 464356407 52749647 555631637 901228516 362681949 744900767 873606086 838591978 699509330 85094884 591591136 449752646 26209490 659847728 808639780 220326070 261403554 354504299 503960603 336587610 879045230 154090047 361266524 568272666 395819021 517668959 464278418 862939637 743278458 559101100 42735887 554841958 999665194 755408403 588303394 921521751 667374281 669286692 259088206 507338749 474330707 45336659 813050168 331777214 831731949 252319791 353753635 559749385 516118446 739409761 570955350 714356084 990090230 454302954 988053691 989360570 599459907 61765125 88906904 16203694 40680258 494241233 148617975 540876910 480304995 734466614 124784740 485140679 760383592 884933968 459114877 198108336 6199008 500123739 68878263 742025811 701834978 911580717 420509638 755799971 228631858 406801235 114691761 732794063 326364734 923327947 557599889 517243079 482904064 876029175 638589011 924719455 898648417 479914610 485722083 197753852 823664274 691257997 821057760 633771505 249708810 87652450 652184928 339446072 862151549 44035694 250884795 586711785 156209190 763049493 821297643 406912558 444740326 893378090 836055413 244786391 588903701 247006485 266015180 947448165 123023076 840289216 270314107 441846891 430716770 129078677 908574178 449433046 912485307 483809606 134685962 626495278 71007888 798701168 770775074 36217366 878289640 306714889 602016722 326422787 651464527 66604196 58574266 907454107 219104816 343910561 898566425 221073200 962498127 822969411 331497497 562100318 519551031 659271526 24628823 450678410 515122398 363685120 571155433 170282730 397661307 207615148 895040990 799313370 335471318 579983517 74316176 53484237 454719506 157019202 511107134 719102850 792952625 745514200 225085719 784133104 393971922 895511937 334435696 460208571 729314512 379317172 963893116 617451222 243220758 891714933 433764778 293917160 716301154 673094556 127673127 827533469 548282669 439921498 954001888 433995960 876996696 491184546 329674638 429238482 764985661 466136702 605820517 219672577 507233648 96218616 576478976 631258293 854527923 81362009 382103358 397698679 601402430 830604628 14692924 189290019 721595122 522210407 802242867 300362937 171708087 418009928 546633439 269097595 997248850 185846364 96322613 248114265 828788462 574127139 98920245 693185806 420325934 385014791 209352986 366614389 413227525 574288353 968604408 666241363 401181883 902304202 104340779 144314052 992127652 76412597 972875889 187278020 431407083 520466083 712768103 592641466 78215590 293047571 235320780 535172424 178089949 897950639 434784650 786430640 790400099 608069816 690560887 182922532 873388353 839652244 181869233 553990831 9489374 829335779 590922914 901603759 227964845 372349194 289159461 14836351 515099359 483821418 27166582 732289197 459329843 14878838 129639484 42366087 819184055 45974355 815187836 461781973 908701921 8787840 700154246 172970061 344889459 882843537 102851381 763781106 386359862 742826514 178667438 875539180 121487659 135919139 45988530 695024911 795736854 395808781 72540815 423197072 536953754 200071032 172448044 603247752 108488716 254155331 811181273 649095369 461296291 909010129 867551003 115856456 797873071 968321865 783955179 662469585 901379478 67894603 691140408 521893137 329624514 509474679 274117957 311340481 788645993 563809358 331957524 497281426 459930399 877786318 344157645 334049609 734921567 368838582 317731309 916811185 564549219 572235289 616147324 858188644 848283811 180911262 715932096 445069487 873227689 569040644 342663638 319460846 207903023 793057422 167468220 142677466 977555531 896224497 615821236 352225041 217404951 939340714 515571867 274733040 306339730 355594160 801791035 129536855 287707445 279556136 516024375 113276275 983468566 457161899 473454585 15838567 785701792 121419164 600279008 879736623 920003929 901019715 992626801 708638226 448475314 229248929 834051125 193247696 141007873 389788935 274255298 913273066 10310742 732793204 913326177 461904806 972825776 928876222 57807369 614870489 258386749 172619086 989473304 533711108 325613945 858825496 199066829 389397347 142022794 250190498 226681426 50726241 807095565 471677651 972371503 164383383 172126308 338836296 232670742 168489408 490811088 482600619 639837793 474870253 389146339 122274095 937872299 272994873 554140394 565130245 446835023 894153960 775404049 192850846 608371242 895282062 446534088 266980104 317331329 48381666 733995853 948387614 54774918 545474049 146728755 539935865 824224141 594359257 743224888 104644857 422743667 113642162 539105968 520000008 33645670 573892941 437998773 94397185 37992470 417481212 62743801 691508909 530077013 659586942 81132361 43718770 49647043 902660285 592976747 354727336 88970917 314863270 800384465 219519643 147191275 433571600 312265201 581875583 658731809 383869728 349394111 719422289 944353523 18224979 440879027 857685265 634523873 291002436 24406045 953352301 458191223 993637022 1345255 689008398 790053996 456902688 509939372 476489018 490184392 995788862 783362006 890236054 246912339 557391990 793573023 124154079 330084196 336736809 171278362 789735125 67587615 674677258 299160383 841586992 733129709 592131571 178436289 964535297 572167860 822572362 689487114 109634682 93125618 364459173 565715322 857503335 996824780 106680906 837656845 821557428 140949916 862053970 481022958 251893071 951454247 320656596 518555831 428469907 99365004 365167212 80070293 47445693 546658728 518761175 380431453 14000726 66257387 258683580 902611460 840683799 2936342 629721371 917946762 157640264 271853780 171928624 49131395 347096261 470090096 356783856 271982196 450298697 758205575 932094386 218034131 609815035 721562594 83810294 730681500 168167893 654591063 751946618 538976709 198115618 746692575 770398219 290933203 948885069 560615232 195512381 915830892 238761271 88232886 783860911 184993125 284546395 609431028 459517525 651467485 582053531 678884921 182156169 789328179 518424609 916594248 972710254 312017524 334472021 436955674 257045139 308117926 294653971 861218202 105214090 256883578 751744412 1659322 556186070 791201761 567722729 938342948 157107634 392293535 35430206 700604983 594175518 360744898 377574668 601392606 906836884 906530754 525570094 591167278 767754247 700018905 986726272 69399642 465247898 780957553 724410912 546284095 911912523 46384562 208396451 323498283 232209785 483933269 888423377 336024999 869621025 298352795 913017100 75029485 150954869 487920908 630447604 886815744 349804762 840936926 858387689 6402049 522122400 182932133 683882425 679375154 262756287 384294362 726658122 608934412 756784561 612884913 523354854 116253430 446143358 201664785 4782238 115908872 954231157 220064730 30803482 328553278 578098889 114685167 604167883 71605756 916581743 326499928 560519523 17410936 672851679 576350594 648487477 120917635 980353962 508729610 396505759 210648090 647171912 814014525 309873837 162486687 23184284 889681875 799019695 317986666 155593325 808105913 101278853 765617443 314420833 52322862 936014895 112816428 229219111 192461290 157226170 911703766 241744666 194674758 818748683 212446669 392335952 697931571 345115041 479862639 958551434 720444445 548193408 725966498 275659553 87051014 633864629 532598672 530643091 716287946 406874725 580164208 610170208 16108449 769668887 527452063 182728935 248356876 796348658 632307690 231406904 761306051 36921530 884429774 113456509 476732977 930997155 467175811 106033086 283387609 816368516 491832031 649018946 889171127 393270209 416814940 904606153 216993405 808274360 527407242 701299065 290194378 978005848 405949259 322583988 633327944 790363959 90091673 301752200 44837396 865268662 252332081 585898006 185479475 55215292 589323286 266753172 325945609 967096989 928729900 29670161 798872348 199099726 64185270 118442598 559521027 653473693 14470875 468683420 751848312 494620462 27813494 951169524 164112790 991864222 564476595 114093692 960480194 296223127 830694029 429592606 639863818 162392172 810053553 747410615 42289031 113835951 792450148 985382377 898858307 664123607 236976790 229314002 915560102 837538137 812309809 389329678 195946759 831938281 512395919 727337939 654008 323186032 683914884 490484854 547042754 775715286 163201557 273723718 98853521 657835994 541710674 610979592 399913320 321556292 290541135 617890278 559719835 41525129 220872705 849796114 945727068 247092126 149643735 927503995 597038749 172098530 321408659 226081675 185799819 535257389 511179169 471444967 332802408 653757683 939709545 492483922 999690562 922895887 221620478 26182307 73363449 104229856 13043643 988713427 930336371 736616145 569994683 443483854 117310641 169499386 968377471 683787689 54388658 451553299 254568768 648684832 623028096 551254096 43751167 611619481 693946885 233429205 373240010 514206343 2231754 979643125 349981362 272108627 731275870 808113186 273262048 649453949 406371495 76137074 985243296 716688161 376393679 409893625 888826703 74833310 31603033 231626389 88098710 66226080 738314353 227291568 475292052 864708735 212610183 442708319 52181019 395407851 376212638 291660119 524636234 877345640 892543757 881257121 975679987 205389403 418026461 185068588 387823883 963623262 872763790 785395987 705074930 497565769 125074666 360401896 674796527 43542624 286728305 365305149 247586351 823186210 773767495 214723545 586301679 393602641 386598689 580305571 231613077 485446539 131451918 350304053 947399150 53967219 578317602 348103882 582613212 264953707 492302138 703716418 481946587 151591556 259989970 152837721 559736418 967045646 621805523 497230767 733505826 923073141 998286260 920754873 398003498 162349454 157710053 485315842 32074067 796915274 49905305 412389533 104448644 127378948 677218138 299550214 848063652 456485760 461492316 334870843 504752739 106134821 115160653 657455735 825277924 298943181 259764350 748738109 728719222 566596148 267465938 44680809 985366668 553481406 631995827 666186944 123046003 901274317 479690564 203513524 266793795 102748362 977492587 879494605 918299696 766844002 435799763 330275681 877327214 809348883 340317969 177365177 804656664 206888665 151974051 900968800 944398030 939018227 320127047 47341059 593607180 603820655 937598567 163509527 199516945 350364580 210021387 831860935 742520141 729266646 952632262 641483765 570179380 270199546 518275572 532676500 678859 74670854 3025881 931225496 850332512 932382605 787818659 670523864 976593553 785952337 357345792 263545171 495221854 120602102 282039044 709157475 994780722 29795702 269584331 131921220 600584110 122498724 381640812 977399971 781484806 434840309 484364614 171801516 709795657 893279708 551201568 525083196 607497213 69372 474597326 538636084 993424285 439648176 960587739 294763163 729257393 218818669 531623787 712832555 421953260 866769056 42884648 692401471 932092562 632835870 447918617 966194218 290722140 785988585 291542538 670296224 168356463 244839769 805886281 202898093 265500170 332519382 88449641 195752450 604621430 889821980 335079698 691523443 81626185 896606226 484709116 535114563 600450005 429699860 128903483 523129402 57586538 135045414 255045929 327773019 181720317 874403878 89307464 715523114 230040933 377877576 548593030 668273937 418295171 462528806 987802210 576237804 542360364 78164891 270768837 11557823 574866515 204336562 114501519 569348294 181187490 954430921 226515065 38786043 870376636 543646359 492654133 781371034 445341920 579055679 254480088 798006590 579595643 806002567 388920617 850227445 530658101 68764775 735024941 7447945 531050120 823110855 432880192 341862898 576371291 103596037 946475868 566370352 374442580 525992765 901028442 46569878 139398570 75008916 841277874 110235386 286309690 866995092 175361354 634735807 971829551 470220839 174852057 390898445 735119788 49421126 475336617 577724326 418667618 552185940 950249248 980538336 137411574 942927009 355175287 154585925 773619264 579348259 931139113 489840534 897677631 481439811 859236662 812774747 361361504 764246694 449775137 380921591 68356687 347443572 107472523 497324001 579789445 477300927 199356967 961671323 315705067 786941119 347052266 805747134 984954616 951873204 935048098 181565411 913539602 577752270 791482878 596151606 321896656 301728384 997991298 609234511 3434999 237624746 48827316 365584316 560528942 4343332 464230097 797900467 650606169 876451826 624846363 85431635 687286452 863247294 684476752 432873072 604483287 929825333 911978401 681872692 551322363 671344245 181606064 951718046 282207096 859322809 920269986 515345205 362027212 592728744 231977249 50282048 691056691 607656920 95276481 474364573 600498378 302562171 65628880 805488441 500361286 906880047 513494779 17034773 164497084 815350000 783355973 305661311 890612198 849018036 241972602 494941193 750586738 462849496 330351289 603558631 522913263 869728891 737006928 21555010 63424411 268402961 598362834 876206508 723202778 312275630 623455825 549381564 923071323 448029491 957864911 954140882 72682767 716747921 863728658 794945656 660520832 165616962 488538997 59588922 691898887 76824208 153196107 800985950 879021387 246845965 451258038 5305476 543970770 896159063 114501409 711814168 297578562 672481386 79294974 822135701 18153333 427601691 688098167 896824842 541960830 605696895 478493911 795474945 297893500 807072475 249108227 994274328 573119343 709524886 696390782 83031037 706976207 683915875 529732319 262248428 275773177 268146239 484661491 952450577 419663823 181184223 689348247 348278193 572821543 77357361 825006631 934764759 83179375 155461760 580496356 238218458 545460293 568391245 3685862 193967720 198510658 838715746 984719492 642556725 966567180 453859200 428272623 611232316 519672676 495896791 191622607 914232611 735480536 927394147 255976392 61682154 941934810 503335731 898332118 229841254 940007236 499319059 505839296 175951847 501239011 884457641 733897792 337703465 632378909 569853300 925107150 687856032 463885321 482170036 646595035 891039518 250094276 228903554 166137937 510547479 343428338 953468050 391140281 676695584 435507476 274067565 113211638 552779690 989988034 509769326 755123535 154870816 912850298 574450449 322916707 226799340 947611160 623384648 409251069 38567858 331147390 419420915 431159526 159832246 625678490 101032977 201535379 21769359 643657490 972828969 414045817 749492125 141803079 77783935 550316347 314631294 395687022 364703792 834083063 767657739 864242654 761136012 842024907 128471980 655019293 371808442 438083401 135340768 841264260 539130609 411927237 215138090 276746851 536041621 495531773 956020510 326431782 947340557 678470831 613835719 684599972 805921823 327598468 565719446 552533694 275371467 173499790 69541254 528071457 376115699 123749658 319410361 227354686 193668624 689919373 889808256 509967191 216432551 479398245 890253685 143913378 251784332 539662767 985355937 268471895 463821329 766696979 220830257 978598846 124022822 346048199 487827707 924120821 992464222 704766302 695898244 227800469 818899354 769043253 971518656 186565044 41835615 894142257 137943089 989663664 923865063 177279257 620383713 896058009 740563839 314473294 528443081 939433185 792934465 313643171 767101821 533277295 87735828 29521272 93121849 244094102 747400962 416052144 353967440 721492155 557689106 818291727 588611862 724420886 197465624 324266797 984327055 175753205 546955113 28496721 726414813 389967312 432553115 754422562 381607957 198046437 910307438 391033728 201550416 130175423 630881714 842691232 749306201 305420230 624811584 950398422 496754827 640229039 904581014 420999201 14082430 590232395 477752837 432756534 546958775 395681938 50200877 927836726 195069493 780102143 930007814 651405561 782498366 888203110 489274253 489959408 712057744 885829066 149557258 654183153 170333922 905597384 171358376 241936242 610887662 278333639 242250550 709979374 535598723 227715118 852135376 632552629 827373523 167872036 991338050 513209217 963406739 430050110 820117847 928391982 675565565 546677486 420821691 654834443 922846505 402482669 558218507 251529964 921455316 437038785 689155888 47607985 612615909 961373949 606924535 520179117 680271604 58979439 547534604 536804638 798356933 910080908 101231779 178791650 688084991 731329778 277154243 27820256 444814647 806541300 551983866 665568329 668206151 180926514 579185628 501373233 451536231 555700220 912361760 989626951 876194016 162066179 480357060 978503862 210640038 309030446 178459067 968647029 44097598 126612577 12034404 269356450 136572681 368109192 21989091 681677516 183928026 330908782 221684806 90940768 394440604 294306058 378693333 313425776 964753916 575064461 725604852 563106746 489988362 776796377 340682955 179544434 835520407 229543517 895055781 320125758 729495733 362788670 184200085 97124431 814025840 160650858 158396804 271664959 42653241 627285193 856103996 519258995 612905602 781945411 298747430 507213464 708901833 270720598 516319487 240502578 12636679 597433392 977665916 963247303 708444979 702595896 854637651 127373500 377899318 192580133 448210866 280102351 990020383 823270691 632445176 244752615 10776709 801814454 69261754 16590423 736030458 731220224 322848046 751618333 735897806 698564033 400018209 821863697 462471353 899266260 995179623 429074445 147289055 817795090 969138608 168168447 638673210 590447120 106871031 540253287 193925542 463838640 141701899 998293563 300605641 194993925 170522411 813175738 953798035 795089509 608873697 167700105 911783505 949106906 499834163 935286305 751320732 734649807 802448187 518966003 87012681 117943751 456133631 419700925 149563605 511235692 316932037 768921006 472149984 122398056 165267448 146681231 960496499 709789307 983516981 881353434 346627598 946729628 574633743 152609468 382885818 882796340 602406007 457257667 727060697 861293671 987492029 531327384 989598310 940429820 984227909 248990414 415001908 858695720 394020465 979581712 444318466 302638606 738053812 940189527 100360145 136666788 47967713 81462175 145831910 146710242 529780261 717410090 893532336 95745553 471410918 881525212 860182125 90461465 606204892 947192335 33854149 835394161 314151284 874548054 221915241 177361348 140216443 245569439 189061564 777731336 881108403 597876003 950548812 84156838 818014267 749257788 721094624 708999669 433605615 35072593 568806481 203270545 765933447 614130007 142060725 446953586 472064693 194094320 159918648 325854624 315112478 414778712 510680751 307900072 30021172 54946115 949278165 580872282 46305710 553574365 394105960 612238136 43741641 778546417 929680740 704889405 266156100 788046838 24785088 302189853 926911018 642448357 139891915 301112167 656327602 798737627 610505024 462954823 252194156 68120938 110294036 204430629 49643794 81286386 926269881 661881874 329998338 56989977 174357185 396690298 238725389 129210964 215412168 280509428 211626212 829152120 410974302 884326911 883591401 131006673 525182262 691613175 161995814 881214371 828455746 516451483 931919446 277176964 13711487 247356233 366489563 194316003 502766175 336822810 665307821 59911282 881512303 3576081 114550256 197855067 985673987 298987693 383550036 454698515 875763275 717020538 864932270 794776928 735127101 605225798 108371072 733267874 314762653 100980898 382261247 172023812 587343571 493859040 132807651 941769572 832798456 520485046 768627819 692519910 544471798 374277774 311086577 648767484 86976435 160544729 655222446 740277979 756141728 960541636 274204792 554673743 722452774 387604981 504436012 395601555 884888942 186810348 175377816 499762773 675080356 760274793 191637917 340614876 176803596 483051488 675285169 246946363 951297257 457793817 806077930 690034809 803664065 436589083 272095459 359530509 437859050 506911077 440113614 878369403 900836310 281120293 513272756 320235383 97018876 463471918 830111714 479406757 589630008 927196395 395995016 956428397 944235461 202684524 604215210 336372141 780006410 47074664 888773878 494531914 628197427 594118035 923383343 389121818 896059287 927317172 586091332 212024833 387969355 300749095 126877616 790026214 462333193 511055465 741899453 729949155 189099889 439207 688865166 592855599 548517735 678951978 886412957 25866239 591811894 475542092 719110386 793863093 960636861 134015652 631272004 204847688 533322641 464771336 633858594 627685317 473664436 473253283 320750161 910213637 952625716 35025245 109124005 176976409 312060012 338191711 72158714 157181943 136760344 395204454 205737504 525073489 491779973 424218637 678187953 463431286 271272299 329201652 600714685 816053874 465052361 33478048 955015767 653988456 304764211 544242591 399522052 954449938 762433553 55457070 619719669 98914355 898249023 799025742 905348527 195247786 665119139 278092772 27523353 403480301 658845257 761724467 421718240 343202612 526383264 158472426 346609333 192122552 31558705 513743443 402816957 334447111 116553733 712166883 887497292 989671900 315014689 332275100 606606031 767973949 583325442 339033100 696656977 668361738 937712450 854563964 448901704 685955732 74345075 970845690 263601308 767182958 833209394 582307287 930094164 881141424 62084405 897534285 524809512 76044595 144107630 267057923 732083016 79226668 597231068 278768874 801320064 428847032 283463347 954507015 76563912 675742878 147721355 116574597 707169539 382587371 566006865 950700677 617191932 254480625 944281000 661524753 15399359 711223140 603712862 36586682 6856020 582345572 60880761 554943318 145179590 42741029 291372155 116586980 675159100 490073918 662428598 873094478 123516099 819921015 302498620 328112665 612816449 187561451 397553400 888362110 87441529 824524218 350812686 527015935 51514030 88417326 358951141 590936542 25528553 51208683 914771906 61368792 650991074 663369027 55711826 484975503 888488878 410034212 621531937 816363166 595382184 471801625 360022356 904944229 441208447 668543631 841564306 250711048 55205535 151925045 577002009 597535161 285716672 322463470 221255021 394426218 963266798 367082225 405812256 946704182 661388716 861014690 531482868 238848456 286849667 698835773 317197060 826934371 411831807 922869980 422039779 606976063 70211245 723504852 114704074 477957334 895214467 720070361 766320319 275284788 575149068 677194191 441845809 719758047 160166205 321977982 547442578 793602138 36952666 259849037 620919801 407550945 510514712 238787747 424080546 757830191 571164322 925465214 960856485 438014123 576551958 944042543 302866087 152708872 302852235 760080074 792060121 878852848 320113003 246841453 238273464 5158775 830769233 95121810 248890747 123615272 664975662 304023135 508563230 598993898 11907919 284440825 568088504 914269735 355173657 359954831 374801374 955971490 377125560 235614979 851785707 49147845 474168101 113019671 358325144 949646838 819590949 283087852 875371155 987591994 438762235 286901873 29133755 168902223 477291600 208255305 694388755 908399630 575883949 96402108 616314873 691481501 484481925 380378308 948929390 33347999 474395395 933425543 296134786 838779530 545416073 850153908 794269251 822018785 761547775 561492979 731848431 791838648 692138511 820555960 505182679 925420722 568468448 644542252 879597831 147716366 766813 561371570 343666343 73232466 203452539 23433576 438226039 258637672 922650702 312089665 203292725 453717371 461934881 299336992 545920447 24700043 238990259 380136446 786581683 251055767 519885617 427418662 15873341 194747495 224063060 528858795 38678306 399072961 581095433 206392548 948175486 132667816 444643812 777703277 76656927 87878818 637824319 950819553 119219944 241927893 266867024 585771319 707982981 776115077 105039258 505966487 674794553 763564810 998363005 494234559 644629222 667294342 451540517 245736840 912873935 538175404 434313545 735623369 804819465 344836880 470498010 273261467 66243408 569119940 166352143 59102563 291388651 713998752 796917719 92523365 774651132 782142259 577131222 721577349 751304106 912340898 110002759 71854243 502533541 69011933 292003243 378967203 427065023 993709160 134086228 269050043 989054412 745089081 897231674 837915757 530785665 142728539 349703240 376021992 744133730 603459582 736353381 815648117 306408051 380183927 444554089 186510806 524392375 240037345 45761443 248404539 511224558 537498072 730016158 199071580 413058379 452596316 794630304 333249280 58644482 93569355 28505178 811724266 294302634 919642247 215885886 877872368 851926132 406739818 515125947 685484957 632118015 17118303 344679627 416135664 922953023 26614515 328989878 938169596 61363819 889187815 958548251 176127935 552249604 723980082 638092750 473615157 423246356 140416718 632501945 66477993 920479954 816590821 550550671 116985369 451681005 493229072 412381099 295880686 439769512 342001505 205587336 104589120 83227884 908591222 926240394 321553935 185761437 668016139 32427156 560356379 436534122 243771472 933579086 202076035 138992584 195664153 482494207 553290133 103655871 669273333 627760366 653803800 913727413 4412164 865474327 927609107 823568388 796974768 564904687 381997860 609178719 678319667 175908886 926961950 654008872 339390500 697094167 54543556 434292371 844536208 145145188 691212575 309164276 490264485 227452119 64557714 848566825 438037288 305600393 697112359 170714241 218108235 467659690 50423874 812288889 853157388 432166305 787133240 5466919 610745292 139354078 765697852 935888149 412167951 399805075 340848680 15127732 649571522 334319015 605363913 95147670 641257218 131427649 879810724 576521890 667076998 72119675 479554321 778194838 717522882 779410868 351298907 638659062 188463105 329364207 307237997 400227719 990859979 721093739 385485080 520207854 372247678 696819617 328654575 31008426 5890743 69380317 822750272 951556928 379103859 792461335 834550707 958615229 669187821 856370745 124851261 3234234 286695400 307484213 272218434 760053408 894758633 247496975 74813531 279594734 880675065 457729245 741301302 661353278 887942237 660373316 549113544 766624015 961907636 12833277 624968068 929500187 85145010 825968403 395432037 221424504 408123386 712969353 245573946 796950490 866374825 613401731 795506561 668318058 610920955 418602972 727631060 953846598 953808523 241079795 948088935 126017670 250810514 253419426 801403262 951505783 224617144 674184743 746515469 144340499 146863827 868978554 174951291 764901494 787495817 987864965 151214834 386590308 393371091 139708537 35733347 532474988 673757831 62184266 283344470 795468076 632616162 417444848 113181188 614550994 784542022 250351350 823846939 812567443 593125433 443151172 870440892 976069882 338126368 929982114 892825944 690561102 852960348 231781510 527575077 928898202 506962046 325021734 567181709 353840270 851950602 762106347 847038552 24247948 479822480 271519721 72820559 943382659 818678944 991477553 74179632 537534208 262920349 365461374 142312842 275679368 618681277 203591777 297725264 528700846 667645878 320197761 133846415 639432279 62915144 128023707 981313101 514486797 348864918 92138156 428328745 77929950 192292952 104926147 267536664 231466862 754934294 664549351 889151139 991925844 753572472 996323186 347039697 207775143 72461836 403743115 454735976 84085062 957163382 788142716 750413604 124936751 440187264 549345948 822766894 777650574 168996892 808471922 858974269 101770955 990976561 413011945 517846559 93319313 33650363 392935181 20878832 673834734 744120950 348680840 856903122 58953244 330876470 703645285 97073428 235443768 43156005 898083279 473349975 491631099 416144915 539055715 476612405 328719725 184984058 451424207 2142042 43793124 553592103 306363263 451021260 2591364 878685483 446306544 716013166 72416934 32902850 834751964 535258282 57831604 232262103 607324274 875269362 49057425 756628667 656441325 218160303 150459961 185516501 120762437 110676778 155400474 590853944 453983335 259782599 871978548 985740165 879276116 389504437 979421063 57242736 614495552 369380482 710160858 167775487 600280054 589464126 328409997 305725303 567391896 691093317 854554590 44905855 792075335 367570913 294845659 862741196 992386091 663234990 105263522 125427185 80126911 96134403 641538961 149393886 785566733 690867592 471218314 354164635 14549760 700294089 111605623 557856303 881464252 419439173 439552897 232648272 690253055 924579110 683062671 573344304 749719245 529435048 184732528 22493636 529574641 554848835 253113913 358313987 475269607 779631651 140452492 169013858 621896595 265412958 50931498 297705007 155478086 945145053 394049631 634690993 741372379 646248307 316570883 160601131 863545579 206910335 390580663 455208668 902325244 727528646 789343975 859483776 734127035 406295325 654665539 367096612 116274495 471991194 493405486 596173801 28271358 680983818 950241745 975546773 301719750 757096808 702573848 438246466 300174332 397482903 891529434 581675101 240734217 233166125 921309602 985748363 445179920 499839109 340772337 534165101 339706479 303930344 770446232 471136711 866463001 517447657 396478642 414706519 173024985 554228124 340983595 183385728 698509178 332193152 465856097 136805042 780560466 38181422 753603896 828577403 63729756 144909874 997086300 539803079 43962685 929378123 313609544 272651902 248664667 260364948 618958237 171646412 501201926 389180658 675614453 476607580 427686792 253586315 281846904 582028666 44091813 582527158 660745636 729184982 274913158 312691780 218447491 16751050 866707648 532539791 548249587 746738108 472435789 803876639 917019680 653514754 655546062 930018507 931698123 369281599 628337448 347227971 561942690 748382865 609974421 54991615 744359844 829238794 220342842 673553378 423284171 311432539 468766987 26523880 700467436 858809453 959334313 191278909 215621253 524001303 376280111 42864400 124573518 585250905 226736022 62223233 533847094 144026217 964554519 677892103 349162069 308702740 921094578 19251434 833159324 267676571 490641877 316720742 785455607 453074890 728435002 237086489 369824920 487391333 869112132 911677360 794157237 314083458 701248723 305378092 541453877 383909980 156404599 262139707 938148146 850631447 862587531 692312304 134923507 795913534 36358697 412358996 973283316 591349015 479489749 856474834 158193846 321059544 108238911 332275683 352758005 596034982 810374517 113941763 437487127 274236883 259386604 665976853 244189206 57257867 452798109 934928523 331447279 19456916 56128563 455034264 130917323 49402552 927837859 43908285 178135347 44079270 379616868 736845721 619070348 161193615 699146705 649758046 696087935 410031456 93026522 655817638 776399730 18773263 840961828 144816946 643204258 81082142 887655017 841494633 769696762 27468403 498750476 507179348 124977157 844549142 17838227 995378796 632140960 111629789 474617408 662239822 749821685 711130348 474654069 166033886 570699821 314611768 377320796 250071068 213475710 653038396 535674266 471927087 374747292 735890868 388980844 665017888 451016642 919195056 398723962 207301238 537650645 119655847 182635923 662828842 813362221 910266185 10550298 205446930 770139817 343391034 300352436 693965021 793610350 414086911 355755186 651466144 803885459 814405940 885323849 95033226 159865849 191497490 853686305 573700636 890908366 22897808 360989645 280310594 299641513 927167809 404655945 673042796 729865026 988088415 836094032 333751951 446009419 200063220 246247923 946863905 795688351 939573700 690236827 612765369 19128475 578629962 328483705 832261410 966428250 410884441 312977639 927543783 262690683 434312084 310055889 481756796 950940301 181368919 970495063 430280132 520788283 883128291 340050658 300751496 761625717 964150700 400875270 975012010 457482118 886471811 897182987 735145746 682715153 223236238 5972236 274365932 232833079 804404727 608526989 551003394 179132578 36990563 363885350 433902323 560864315 609730259 832732680 512472129 112924220 684984551 27473093 156048434 505467543 17537129 238725946 542319709 41289886 588535943 303067755 184162326 386152939 184378425 818430180 166550874 233183712 335962335 556573969 378607904 162987959 674724469 530756074 708940657 465769098 138958632 353105776 512522174 878512984 446162476 578943206 860574637 499817473 975319404 54476261 172518041 62937680 695309124 948116025 585471442 376590527 120412050 415328096 607612861 701792903 699000493 24077175 773768951 699509992 705291068 46051232 30988993 721862143 23845411 136050858 20907962 223153711 282721765 967515714 44240569 163117915 614252130 912861460 258854403 817775779 108983229 479541379 773589905 340766646 13351538 914691702 294472031 282559398 989957079 480163872 548498501 650469640 274923483 47396040 665336410 578781001 923726008 250178058 513117552 883402626 732115331 600950850 967917067 628308658 523821439 594681183 502743538 833007384 58798711 48964851 434802281 35517980 11458518 954949369 387267926 718130706 192625749 875012717 744788520 6215700 348726779 461091790 5218289 37152706 536752285 756125363 342160670 836476376 938735835 523801208 259268184 73260749 117490495 693309422 659679880 700638761 110822239 271128468 840068591 486785616 350117819 113016743 474630643 126465890 592752927 72295791 665892759 468661423 159243191 214867982 413667179 127164019 444413992 67099155 226078197 339160327 825215975 256370137 649946476 929356126 369516783 892521781 565710287 460071946 201525629 229776818 322525625 789414383 633282281 585399962 123901754 57198058 576538636 448917936 840495351 823753878 374362520 506421795 194935777 1972132 849459264 100491300 15961541 495446489 472914504 869926730 349961954 878006902 901701151 826371504 438991599 774732898 837075662 645853449 119522830 984430787 211897145 763764278 979247141 753880000 941974727 508785008 263429712 432507628 548716787 932307773 219484571 570143167 831091177 678155178 568838477 3577178 70019324 831105881 588373862 295390319 809508481 863937736 181560675 384834561 174976440 355636301 193780305 50303362 949551838 519654248 283069800 724810844 884905944 982475211 280211292 890502753 634983758 372901381 930723777 914632646 332273366 308713812 941498039 811767744 468461053 432894929 485026812 932004449 458238872 739940159 567564708 376233449 872385797 230724381 626206030 811114161 398072424 414400031 375515061 435849289 665386362 676824644 662437534 20599197 356332873 212093450 309979099 514624751 140416397 789496324 289415085 878654803 859443070 841258344 893469195 483749506 9758147 737220370 108330603 47391556 427091848 254933831 91378627 785024219 164905863 416305583 953579045 734381591 534318856 524836416 715090211 347728778 332134170 667129883 150183104 977653856 917963110 81824771 525446492 628747880 89729195 642759513 225456617 268466360 288780339 484090068 164633931 736249646 620211669 99355789 77954374 908119563 546407927 345565344 279157356 150670691 394850318 606794702 977080851 196606679 584986981 294756356 686325212 65091584 624081160 593257687 537348670 489704206 514111313 20782353 299850478 303346403 185795309 472021697 460109374 791649042 705751352 213037223 953424822 175752069 182930144 779107995 860755679 951329966 428356754 209085821 50366386 11039555 971941016 316844257 437671360 887453830 591367315 128366700 622438881 881500783 678701172 850494329 523424929 628414011 801405853 215423017 772012298 563495912 139015536 49955678 140034291 454416698 68949313 78755927 56926884 140663624 111182468 348717380 961635735 48156717 702562862 488839067 998904806 218505709 829481211 985019930 131216637 277221419 416721490 720675105 525178351 224485040 684962561 119700926 850963329 540859504 678873463 825165181 160030294 365356746 728593380 822517892 645559173 830586816 413604932 58033428 354098839 523606682 921377357 957581939 375279427 125748830 33448827 125171533 564999037 774704636 701853310 687879524 326101073 844013740 413715566 585388910 532586383 241661835 598311866 93078599 466154376 249733904 818415124 840614590 150845307 6532301 459807515 680959050 309182880 286971749 860611201 771590794 908413050 163880140 76011329 690698552 621208741 373957867 413922433 21454236 172568279 500440812 675808002 188052877 11437102 141160064 299961109 359039532 448468324 1057145 174691602 121243406 590656719 526467156 735310782 535210174 839010193 666252058 438708665 496287569 936274299 115531131 949632931 260598996 431905943 860337959 749972580 786659277 858723016 407808216 556253509 312006656 596154834 352237647 464204156 50927903 186363209 336013106 488305502 298814508 831663995 824352490 428986184 118388626 786317240 875441719 809011149 353888311 928275944 328278295 487718897 69127449 774951282 145184904 748744589 133216760 723607541 579802303 115964121 677463339 378627051 503484733 563291299 697185002 470953796 35766407 657698669 269900344 80218350 747197637 358627799 144869800 762272348 793509616 386269686 884964420 825733602 38453723 216641418 32185275 780250936 719200158 258116500 778377473 544044018 99589700 458287989 498030520 537276222 955873900 569325393 945645599 658040155 87209350 278612377 381271059 273523993 990914229 380829651 791621164 56719019 143715177 493812891 928025685 228669156 987406284 305366984 796017737 117019383 69102946 635088687 115500165 803312520 145251226 914880796 317998877 742168638 350911700 898549986 8012363 83514495 381308490 330483389 245942537 881664091 44193804 127228513 617508996 253370859 489346807 461366644 614088732 201232123 893944077 927379529 376820299 499664871 9613997 957096138 265450959 581606007 401240534 307717821 863288922 626472341 359334898 853388614 438220806 653414985 722140767 199192671 575569625 694054919 787800069 341356724 141595566 168776952 664599183 303096320 626327195 434804215 601466773 995750360 133471404 688791877 888044185 847599291 821914477 533381808 14118162 571622666 541655950 407695432 969064112 704560965 789935724 276333793 796242026 182632932 382326856 559113619 338878950 599136615 227874773 335345478 379097812 398500555 938924645 963026081 785693930 187994409 721554394 831355955 507703087 915084555 717814386 471870427 740591670 344096282 39890926 418510842 768315160 170865307 541627403 922510594 17813478 996102621 782242433 786283965 765579516 302349252 676729714 735540117 398407728 482575217 589005204 817551224 662280749 955341855 114314919 37197843 886187919 423534989 774883422 820313324 1475240 265736772 307468127 545713472 765184556 25648403 297666291 854677519 760936701 756762622 312408022 977578629 460455099 570622118 770350900 811582946 153657200 9699854 673590178 59318964 29627582 930922613 708807817 855864612 560055540 340811429 246255022 98305680 167565458 307420218 450125503 667443627 485732757 903092335 152457664 657051507 141633100 553665303 64697488 26947432 788569186 566983568 814240903 982726717 379718944 321823516 595565028 70740003 285911881 30162373 988776953 173505650 376550163 360325528 70990046 723972893 862330539 754675151 449216837 596175313 442245447 667173712 180277685 659730071 888907506 876088069 390818576 116222778 528788503 692625943 199425356 570142395 267933814 765611313 981679451 571580178 511964420 162554923 783805850 490719586 702645445 975622192 908432842 881656176 36867811 362580613 412670490 663108970 443240726 260737483 870447180 681948090 797446233 572732491 653305890 144579561 84916097 314147414 953193901 305141885 118074549 400544136 932680450 581208817 867378279 808254868 175964023 43853934 674494792 84630146 32223765 186249825 313087296 477088486 215822735 421146311 942521124 400375877 704106586 850700961 19788415 90800965 669390746 102302139 410749442 641315294 441861066 885309068 409326251 288684219 557086478 715897783 819500243 384301223 954960284 804311378 770610422 993872725 247238336 621250380 137781709 829910757 68091200 193976042 398494143 242826756 939987741 63036942 389355066 498831146 212398039 428590781 768448242 34979496 188116080 197682699 644606230 342599014 220145785 133871503 676176805 791569819 347235642 933626937 937299220 561541196 784327492 390878500 226953071 377548048 929511383 528837835 625727875 316523759 804582324 887123764 46287569 568258347 938183083 796221229 142045855 78212290 864187075 83623348 479347471 970389252 968565266 790469947 910877304 291520721 994903033 961937227 881517125 535594051 109717508 53052227 56883887 927634768 574518645 629610146 717833235 383222223 856185641 903180284 499010808 524379708 867832194 772066517 237634020 557574260 38031174 137080905 682864942 566287827 440749275 541079190 442605185 337048762 376518733 393570354 92599005 622819529 687524230 314037174 287314359 896662456 534822877 158875350 670178810 554362013 124618338 54720588 456355395 717659666 458712040 906834409 204279711 321803550 831555143 511724426 135873308 722854850 866891036 46327857 646671733 709783289 535188615 195037357 710475170 643123396 284119242 194953771 428199771 475768257 848285192 669738105 586216707 798463627 435763033 396742289 939471241 457761730 139056312 754687071 200376412 876513938 99784278 818163404 494158679 843081904 713501981 473516079 234541193 656117465 263473345 413295698 715237166 757435904 324266118 252936285 393675978 504269376 403986179 829998128 842671249 267884506 389432969 90560284 264297800 684796520 639305158 172142389 540104101 329433613 167700089 394194844 462797956 621212035 349008884 98206973 521573445 482966736 663896900 787585737 318580975 25079474 965592419 697367192 777335209 482468633 54037989 586970017 814986750 963814884 429214 507358895 945184568 916484330 940224789 949952579 705429188 925412711 397941555 482451937 282341417 567632194 348477744 118981277 924530578 789578590 832145571 145877440 809150993 998445357 724471235 3639516 756481821 258297687 828997942 627817715 186848167 189329924 401511042 262730970 934583734 862265822 719571700 916228364 341034746 807471268 457421082 802081534 38526287 503436128 664130379 910997576 762639487 9833167 781606802 839519935 512737986 892696467 132422123 704653922 601301834 938577823 659057049 985817935 17087515 243712069 420886206 486014642 10737210 886965027 177063001 224980322 149498383 247045385 75454175 416938567 507699994 771373593 291932691 61707965 887641684 425650343 287860962 328645493 735194838 51513982 171942999 677209388 305664016 390930804 436572549 876608214 349379554 655604166 92207790 868803416 612040396 216629601 177057808 615148077 951506110 571530224 826892412 994426895 480094669 193918607 636975974 955919682 23245627 5067656 571527768 753956105 617823183 396645474 233774590 934247595 941319974 125184616 264661606 933924247 255772710 637017565 467856063 110578645 256018518 927967739 582296327 286691218 397967264 974941809 550545451 679996732 365366432 156710032 805621774 740116907 378855388 922036529 506861402 585178398 387272983 471514367 115179858 150379797 924752117 981031375 453287893 532159033 711654611 957713929 806062912 291941675 878354461 485325828 27675513 812768620 397083033 279367151 19435527 757229007 295744841 621855000 873444150 257308900 9081908 246645276 936943819 324830801 52505099 295542220 42813723 80100393 850399116 712957362 975376117 212422152 664593013 481072607 66068398 201085348 988174758 518611060 730861877 929603767 960131332 794378328 289587903 207343549 729933818 800203649 156970395 314332297 303937436 261011378 391887839 91405413 176232572 820649794 297758030 756211187 773569721 378502789 944250107 422412548 979120243 667099968 163262157 104832161 174322083 768986241 740251560 847916869 237472929 451593733 43161642 919826181 734335006 71824984 99781081 396537598 102311749 447391860 284054702 153728899 981697945 710325907 354808153 700652891 539053188 221958843 257004669 137124773 404974275 727164310 277415583 112940526 981174890 660048869 736888755 502748937 216008486 610346402 386380416 384902360 21885312 32580156 753060008 554109466 131156399 674818536 127361565 156759520 565044930 492397232 508672050 884324158 449841305 517669809 307859676 251466243 235248761 675191637 635701405 958638277 760811400 764878489 612152534 460906135 720455778 18440684 693326850 897207294 307965481 43351303 693888152 434549924 571812048 466864984 527905788 682436351 812003414 95770076 938976134 22640840 425006930 824812805 642301362 759205983 748311629 94704188 795347379 128822211 766380727 108852898 94444397 770747937 807708362 467258792 452493013 403742178 683749590 751166700 463991191 781918964 670606640 195727951 233855568 284415171 690740921 313630292 315345857 421070156 336337527 861027025 963731345 901270081 120216464 45733139 926774207 959560555 862441945 707046346 601830455 558586398 682933519 703483759 491853847 225414974 604233807 11867384 677944047 426932900 458847535 609868076 239627825 21212210 974755075 817994227 361621076 84338616 127608766 441470794 145497023 813608192 258509229 657075123 66573963 861937197 651932628 436252462 364512360 363907906 942087185 265511630 128105626 289860826 924976761 339598606 102619333 858200290 802072082 142723660 860355071 192455797 807389283 720774311 962883521 938084257 25600879 598987859 454432121 339683302 199425980 848535451 866643505 976477476 409938157 405523601 430231499 881423924 509100040 990337818 984550428 101686037 459268748 536169535 692663799 333923105 95243591 599786069 712224194 260454671 152973761 284196811 43973925 667127758 422199203 90167328 578620040 272350397 924508442 61603453 347074592 961090147 573433726 186525506 241303785 953638485 814338656 574784518 415860547 56504271 125837294 8365061 119275126 315800192 994011445 989477900 833845886 765586885 458536346 573999578 980478176 906525015 92491578 621159857 141328437 808362867 264118076 905323228 936501701 64748349 832375584 832904578 612127055 225320948 39272870 414081577 452713469 686913091 952571819 544082276 229761715 483321567 521393669 893909738 944381938 211103073 552170045 232986610 537697972 926430482 258900661 128723703 919267280 55572925 894711843 154394151 609243895 153961920 737240463 551972717 118799851 935167580 696103965 98551075 446691481 905644220 887961144 344438223 238199634 141702309 955151056 23914289 913872067 837598554 696360272 735124826 261440427 22689143 659300041 412266877 777699264 980270544 550037502 60800538 674894346 77413902 212293508 648942460 468719119 298929202 545862893 748632728 969959412 951126105 421787760 42779233 277929329 765543497 464901490 263699031 385435488 759588389 557783473 486608571 442946655 368243451 629186492 77207099 319097520 828987222 393835344 299909112 289929750 587492400 578798874 574298797 195525042 339163159 380152848 487206637 470896326 298389153 224760599 164306762 829072002 632609879 784686872 49682344 77288227 684110278 352428306 465676315 687278827 147358987 68722484 758766989 799906583 882776338 154567122 517524232 323412900 344876057 326237713 452573775 777189691 73880716 335810906 26626170 601835634 545156931 423967586 302494781 648017346 379769250 561115012 618561650 682514593 809353366 720333557 394469397 553316081 682029887 900819935 124791303 964187175 937443461 541874123 827083088 425297456 322358243 488600028 974385109 57621582 858877852 496407839 734593618 348929405 255498913 585511235 923189520 438836274 333561299 693655599 649380379 950052333 343717668 17406584 816743738 146231441 415357261 151819802 692585012 91036437 190481837 53517282 202819690 277927280 800260993 304225171 912108918 921575736 301767561 561073000 153165299 186408002 305188866 364208455 299037611 41954508 967794351 138179212 378738768 88764533 88377591 288973703 277763151 773243410 785220000 499970381 559235259 260019538 592466510 772816633 455877685 274826954 855344634 277764604 172596730 21879813 593651744 726306063 749670951 245816033 598011589 973855682 607506200 971478830 865101853 797328797 376847229 840728465 690911270 11364067 382772855 925098199 642837993 254802343 548888679 540866134 201899473 105775046 602893340 62716044 471087024 892921679 728408667 109273093 412783859 318677901 516086482 759573895 794379198 773454706 325579946 47086224 250704774 474983061 271493109 153840512 224646107 142273887 606430486 927453832 941535442 885824625 133048208 303567587 201841641 940978327 131851603 30891009 121995855 587919636 599949878 217391687 670060777 180486628 980837982 136955114 401099880 564689133 553469192 148964124 545091604 744099483 775142152 99057570 838628634 1338233 59179585 648902485 461705277 50550856 758628843 416666987 286708034 891962516 852693232 478083579 101800483 835996875 487152830 742904559 868352306 860241946 455543139 818040342 325747016 248517539 889253954 348150464 852639607 290642782 902283036 706498862 996877798 714669981 997489476 323840837 296244488 914694180 604506351 821833082 437290820 941565170 706381894 526882925 406343501 595177592 574900577 627891342 844307992 622242518 62575063 428743800 441938645 656548060 207302874 812060834 579965990 286312338 707728808 65617291 833727335 375079488 244916518 770943700 269849550 298493886 109614871 866132794 940283814 289578718 952641013 168886691 697147305 653370387 498814978 930452301 13822570 765558730 68163398 173754804 11853690 720830549 505103539 384612965 105337966 515598580 413626656 344241945 643907635 771393955 723734851 522706013 833563890 853599959 707843916 527362169 548350566 916030197 548966632 594435560 734145181 510625876 809399943 772088141 439527570 615440802 381143011 694345352 436923580 504866055 38217212 936244129 826494284 955806613 904717566 27129749 461558859 902288242 520165616 522637482 697851239 628748855 480082506 967932496 366062812 203640858 121529041 258837573 674054048 918878627 173620169 507934298 968492168 641161777 749292303 5711503 512560607 97559650 901432478 60644674 471740411 65471979 484197901 375012285 147824538 753942407 667570108 997837761 511719710 389763847 551582106 348977234 490123999 31035267 752745721 648398047 740184173 560399600 606573574 103855543 369229231 79526204 417300288 795886305 584702363 692141719 385341620 552293364 479495999 43418037 817976418 555476619 669214043 368149761 93399268 940567866 790575679 334210344 672211414 913760185 890451649 671817248 361669334 615124764 959870863 212640239 449989294 696730402 445215071 215875100 767743065 758199173 445559690 584244324 261775776 23688934 956712919 322285135 448661615 270965865 119472186 618309708 306420780 761342310 388671321 448391912 886952897 640381146 664848469 382079707 852776765 185292447 522316320 32647039 795842044 859094137 130075036 980730093 293709802 77585986 83759896 857217085 424581348 101658746 187969320 203168909 663115587 656313813 153502110 108725188 405906387 3468905 622899542 146045322 804009126 175436806 308511446 12155759 845784014 310887072 108685669 825520824 981631555 536072047 705736726 70846685 229882011 952318703 236670502 513537588 12128526 920851325 462756099 492153692 216760176 83057581 651076403 52242182 54461895 197218290 340886180 911035177 714163146 478561224 385313579 943385301 403884314 684745095 135233325 67326270 5750384 28012949 447182994 978390173 937515765 457064066 303381502 540498741 170820323 598868890 960528677 423391837 19358047 178900261 132607527 232444268 810637523 858321135 883916590 895397155 557627957 561179511 480124146 774450195 477986168 433174355 412041402 452569113 160464460 304352294 661497134 400988980 659359293 383634672 528146789 465167663 525392130 320915828 902344432 961803874 918063050 28828292 755621078 730423050 911630943 952274842 701943054 298261793 33328632 288732402 340073219 706612162 867618470 93842474 473230054 486506796 978730510 731538750 135173899 879370129 744589272 978631773 202416434 667411006 334847163 362312136 400995670 753975193 518119465 473614842 959867840 57597216 794218626 85058625 844856628 576941748 200053013 540746018 88383293 205721197 547337603 93670986 849700124 568196793 587613398 425194405 956947061 749027642 708953053 635516171 32892411 722183304 609740744 373094069 163942098 175469626 418440953 425595523 295329640 152802643 889471093 663932021 963646275 191472097 25508246 987214209 896628378 575053104 327697873 191245220 598252715 301543505 814032192 636171641 28928121 795135977 739728214 739319921 117679134 533651705 804523007 202649669 666635410 345966078 3935685 37435174 338413602 62798187 706281857 577817597 294482649 343636104 591062935 177188522 957167213 845825603 997789796 631036486 715885738 709566869 972036925 311942574 335044025 540552383 958311361 508526030 959847746 571103586 644919933 390042378 478610243 968942350 879959086 720522138 425667190 22042345 544719163 864588180 926999034 515268585 271488659 436505015 407654124 503369045 869891433 660262974 237945876 701634299 344166110 532858271 675826133 473550737 867590637 469045055 940550391 985042169 359909684 412883307 699458732 830363374 810083143 255432786 257762977 785411049 536832482 354759639 86423606 131476785 204870136 693651630 444695261 609876873 94864458 376253146 86758537 437908225 889426890 962772326 959412552 366518742 68584633 359672764 160815041 100331235 400601152 355614184 259402004 922007064 622233400 20223302 246214617 608763372 962670699 591897925 488794657 734115507 782537916 809376549 79150421 33536402 227145128 292095 64759413 965323806 774095139 363593581 457523278 680059143 322906764 989934328 654950672 660058279 263549383 915013977 669145221 804697156 792964315 125409144 101337251 556594829 842597672 581620469 992189289 358460838 607520987 993547780 155034398 292328112 929278331 142107918 357319275 311378467 318949361 977316297 204249859 287039246 452299486 407053576 14058272 52995514 482504110 968062278 753920522 783447637 746657785 686476915 440953644 791891957 920338621 27634895 533853451 883401294 45567189 288414331 774917784 424440526 748016786 590615369 129769696 375992685 808471051 975461974 779087406 971808377 34034288 630599411 506893186 919266214 959644734 334242135 532635913 299108078 772920252 481463514 858556814 671259775 302531200 238669542 910130932 973793096 503528278 656725912 423751047 734793292 521724461 116800742 854614066 87099656 437765155 970433337 115444046 461878187 620181124 195050160 733576834 758726315 584523876 727907351 76754376 298344989 13599713 975934073 837082741 610311730 443089308 278924429 756347754 305269938 662984764 944101928 211281658 279196026 724320931 489150215 734196935 659602304 246359448 134560666 213004513 18700663 685055048 5925964 757344864 104719418 598013759 489735463 102490402 735080859 128329998 956278671 563420245 611405715 817952017 876554070 2147278 419136104 948685473 984993048 269366739 872012871 163650618 103244268 658940942 640370947 693694214 912191110 841079367 449523442 651732498 925589513 843867556 645206356 375929752 957938651 520499285 125016773 738117429 949784731 654199686 136117661 243288332 517134325 667972856 662728377 93259941 453792836 352840264 332034167 721275275 914608140 719979287 633009542 663671000 569956175 900536121 906741616 535167474 858582105 729799848 334202920 483653960 475574515 260441776 458320015 375797373 142561710 499761100 524408126 380563941 273695241 577444518 241408760 35941485 752105883 130540504 264392138 303695630 471645071 206451212 242305525 484996584 165296982 743171524 408820673 138859612 72289460 27965106 466602996 903253420 964174260 688711505 196701068 755453190 363663525 33240946 387453473 967741255 756424942 661452498 713269070 323582102 650537087 378596665 630625527 520736826 169076146 946450428 185415861 512152974 120812840 877787456 112399162 310069917 176567689 756758111 542534422 74206983 823544424 677494505 852957230 425804940 302581546 589293268 542218552 113229854 507473842 582452 40424965 850738682 948709330 77826813 607524145 977949838 91048148 800545626 265023611 899205570 501413955 382373171 994946309 164346767 146248499 57528866 744865657 128298297 966866034 895983890 851023240 631184553 825694703 646709898 782447533 149120390 321111560 408768732 454500688 800364940 957452399 605200557 994532809 627129230 397593953 493002255 446721826 530419292 97785066 136632609 834149380 465328198 870219825 249033044 306640454 629251262 191739796 407505502 217087342 633678746 118236343 509299294 458772879 600842828 229470738 991777608 278706941 886135587 326982429 163697979 925631124 965306648 815559245 3703429 178106358 14051287 534610081 682355238 18483498 702296662 222442775 97897595 172336112 982179172 262661182 51030703 884913561 893656874 702452736 877006781 77355324 595515238 351047867 852666663 759767187 972890698 601066664 63862244 471617321 199628448 762479077 886853753 928685530 193232379 45220133 721566427 997822664 81595903 435166280 895705166 464358150 765284212 128760730 942855002 165326802 454064760 457077133 129940730 708895983 39897253 25935569 8214916 992830590 872534688 412834222 833440065 777909201 146512528 829984763 949245111 327322900 645772584 287758737 909955586 508171082 371717425 177117999 30757589 377257118 876781100 933058405 342580520 827582399 216779993 180615214 789301352 124999159 292722263 874784020 958776647 795721269 999803839 298087128 601286788 196222925 318805888 576039251 151585026 258784495 708254366 273571685 39598706 817014853 386284521 767868814 224391271 490523025 105750490 548206691 386854556 354486969 572169550 900013938 516172578 745117695 987979753 968776470 601013107 331613925 251863591 982400511 768529016 924129455 631147386 225624827 486904872 768075369 857294214 804882740 691003065 360469011 913379345 46607283 473710900 539017567 433805007 964459965 314961137 754261569 820892779 142960889 158209467 387855498 313805611 364730986 123566050 911861833 517055771 404599090 817327805 944381161 561813022 314864845 619756130 169372009 39816655 21611351 296332418 813487044 635428202 666707107 484342613 406713010 404320862 970942728 882167928 883584439 121289537 706915012 44223206 594269291 641133444 999008482 210369732 365239534 335704113 218143715 666415006 680438194 48632446 516654324 104937547 157481490 727379090 840134435 574204998 6807084 130291696 740168767 793550149 195925201 172237496 749074605 543876336 971561474 704350957 374180029 585787793 386487486 812017393 613273974 538502484 554358826 678063263 482700001 977509648 328186049 536519250 892981901 297628788 851735122 25567148 694495475 852845059 67341577 789649635 413166626 671583259 908995454 86620514 839425608 283173006 587869742 107133106 132748222 319963355 505553866 167650921 188591485 564676704 523620408 516194448 26901823 917883989 920865568 282391689 43084567 672773902 827726959 689785410 906734949 136012057 411954464 791835722 321595207 41355675 391232069 798700653 431390882 198914310 281412575 717934720 269508627 809079496 246043915 630156159 601009092 500609424 906646965 708356759 969515478 235510647 885731316 621559343 280556462 735966707 657588773 17161780 186267738 947243274 608238079 978815844 412331681 951651161 477238430 373144559 58445624 22365610 172516799 813234639 851124528 393179617 792243102 125696808 609105790 319073790 372565854 859332705 4961521 453130819 707576022 278798754 418161012 108912329 911984201 114877814 673536961 798794090 543621870 553651027 628975185 133022717 491409537 976903180 663967933 491030600 357111611 583726066 529558132 804661954 807000610 879786758 590522883 732880197 26266478 887129272 271457640 195897321 592669650 246607227 966255 83992607 767568862 440319914 364767328 952162030 598711866 31484515 799713755 311763519 813589195 395974965 134992185 643903202 494398364 308872713 160118549 625806734 594500997 55317049 907046236 987997950 990794 267824781 302296445 106658897 71209056 625375652 755860051 865655472 982393141 222316384 256755058 961450795 102006640 750675599 865007432 903532703 436966949 466984701 437153736 948228105 109458754 892003109 194252331 706273661 432915236 75159977 922920963 285271174 134223090 990439159 829035412 697320299 611105142 794475010 133571595 398935150 253771067 594223849 212320930 860129454 914712021 630955613 885432756 423192404 234157121 18414495 654414189 938937142 370716962 811703816 584849870 434380168 320807287 699170640 87538266 680502119 928617154 214346652 111978858 783198470 876044611 19932933 6533441 607737234 3374559 928162334 748408785 89881256 411056425 732194076 192490962 198203320 406833380 510800142 764977975 227740628 258663239 993788696 263475663 630781480 106781928 316922429 139362289 270748033 923606758 969045924 668241716 709060571 997908756 228988553 183210375 78017758 220709379 24052332 289117714 111320933 532600001 245821239 252005487 966961686 196165139 109321786 534865845 705262452 671717582 27641187 605537062 371424563 1744912 703689614 980538713 7207628 520289351 846055897 838186694 281946072 421472469 95222734 725121385 254483185 779925106 820789396 843435868 695541633 530210606 822602860 692702794 407381753 349911640 13124488 748791515 210214920 301132528 130155944 721280470 503643830 589673538 751766235 168455336 153055564 107073565 650642330 85554037 295943497 123086988 914739612 665190658 811028953 776420156 770670854 202609760 798676304 566327138 539116780 594538551 130245682 386338632 493456945 694786392 231571732 285664475 199454699 613447596 753001248 951046613 876602236 724620733 423397201 505690139 673735967 129277150 748749547 175879974 943500927 841737458 631055067 882011191 61240458 147403888 352649265 953903332 368960033 680995645 119904592 106217974 252884144 278901212 180625807 172187759 421874817 853505824 468064844 933639645 221166448 492521543 947335492 231509467 765374346 468202203 232166418 639147536 281105464 985181017 9036007 286166456 667337020 150732842 14040002 191317178 324506202 643191228 825046522 748459967 728655967 320499832 342705155 447353847 293139085 410514952 949653242 797655158 381046008 634162879 335278799 819692831 985160154 344010074 579766909 873998452 400496299 139407763 865044938 321877016 983334169 127210097 52828903 971613308 38922287 288845413 639315591 936226320 249997976 958865328 268053514 49020106 340321174 868781720 881114506 907785984 365439069 669614209 639337957 125456830 44451595 175214362 512999375 493822875 418460505 284094944 626082480 899779255 110816646 136806647 676188055 91888132 61752799 182215010 623907225 877192716 546805293 358292078 511829327 467116085 1818022 653609343 270300999 849356714 639831990 467635761 316792854 953961523 765965753 676638891 866042545 213742667 332797795 934634292 354694362 684663777 819676316 324348309 126124562 491699588 738397689 173372213 511576961 624209949 448734551 515123326 478154208 320835306 121920611 156806296 585780589 408837025 475591330 230599851 61958043 146355111 293365983 853030328 200283092 757315003 26787707 810176373 897808024 292245705 835223486 866570651 968505114 206850410 481110823 670943809 612199233 481658771 565746031 621594467 669285249 942283623 729835031 666180528 904974675 213630740 919748355 247595985 398813411 92344142 825575299 172214069 522409100 776496628 619707692 155729197 743400802 17634871 70788467 545265106 252783447 266240678 91861353 195240690 390676673 593220503 440413795 80783861 913481172 191943434 192155313 779290495 842221679 648657611 727584489 115762414 357035593 258698198 551403054 393600979 677616145 436020083 921534587 142907876 130465068 150335835 29632594 992261145 109823889 898971549 710259614 350942907 268743542 999416061 16109231 110270390 451597754 874891728 515471479 21437548 526228935 890091997 422132887 452871866 552950553 672695547 75327182 91110328 87344691 743549936 633225 569414740 731043344 822317005 505066163 216798132 798298444 599574754 736859123 672207882 928117555 35486675 787171790 292572987 219155792 660146283 846015010 546747387 273941647 955384291 288372189 994875503 221590262 142156405 284348565 525677712 442044358 549419138 784071300 247499201 805619223 614995937 355569521 328204788 563675279 244131346 626695842 619259056 12173882 374978335 419493432 948289875 796755181 963401075 796389122 876985420 230811321 779422688 125534030 112043178 670608059 881387010 809114170 812887450 344660398 559764772 876098958 819581083 945043176 167582494 862625834 721701553 521236956 86741554 706109952 913211390 212895590 16582249 157755308 308814788 530965138 263553352 357121823 477407540 157935687 218164870 426658087 30062999 381577274 479494112 276505706 769102010 445874980 267107365 281709464 29141831 90514478 859483413 301528359 779649981 557772129 70666903 256626614 197184246 402641476 988064347 139432631 39120603 509600048 998884695 520458968 871842764 515835035 167673042 662559424 117946095 768585323 683173564 413873106 372612678 259160929 800961524 279352755 725724834 129496754 459505840 984335609 91751878 838737361 33807647 886728324 32737670 573202792 962898615 92597684 987348377 539969282 827459801 317398359 186790970 151427391 297394352 190997870 935092191 540547690 507111035 741015921 662569906 582189801 42124706 841271575 663818018 901101078 733904586 668517395 432124029 94306416 736148072 212205899 590054703 502279691 105885176 571574753 593099313 973402694 269336727 599299514 104442857 967221234 647708316 448663183 752050962 828902150 71129954 466607508 433660799 586693616 538410974 955124129 1947538 907465166 446932212 353584286 868383386 560829270 727666212 533393872 13747568 663771529 553195025 369846390 333654621 413214264 906705785 257549084 550743579 713864471 339700914 777910494 378366241 327326335 784397626 972001648 565096765 339838675 134912122 543096275 795739726 937841296 121163505 433319996 351647095 199457021 638772181 980390017 836561651 672483489 294532612 562757789 540915640 493357374 652303500 522570705 567668075 914773683 639864653 992078919 717434118 410718606 178718537 404012422 982266906 616899420 15411086 918491725 523326087 49476846 393341903 497266982 638493600 113637008 620548475 935752102 224913582 383700938 464092625 875524595 626736365 73942565 98990311 740689130 948434737 541264659 761551661 114518396 447018008 654005548 100293870 681237218 151969808 765999741 673295466 212723430 841854100 936382870 581776063 384658448 856348595 800997634 853714702 11911872 630549435 100794605 266370273 583519121 316399250 387239558 400604986 663553798 366160165 784117993 914014756 982107271 777282815 439467990 944742767 342277908 821676474 138085753 465912860 699803623 720392043 687280751 458586025 727547871 664447864 284466047 973728972 757728250 483387969 996195845 278326176 165968476 190926710 193803223 32363182 798339049 654681305 708329633 389982585 462615461 523953558 734866021 185767088 381946908 566617429 3923862 368977529 713486513 688098370 540752825 436396103 493198170 975024726 95380837 122629360 623226678 384647019 431668298 259174820 220866176 285073744 331935431 299722063 473755282 165597509 895749563 630861213 503569638 300681543 898453851 522665382 37003393 776087263 829402883 866055938 388754380 98672874 335716062 376583165 439976444 364645043 439636439 447312970 145822794 362116017 543804098 513568469 455372714 648982550 248179306 359704005 632388448 399575063 250476109 266558748 805234531 85756129 316989523 466800048 963733687 637420801 169616740 265177997 819436426 433426860 950233285 262008316 194290110 202086168 366917626 883325779 677603392 186473861 617272195 587127789 871162836 929957397 461157677 364221012 445000114 721979593 369971532 825144699 737761794 120895939 822774857 32329160 66095938 248270065 866296332 45104910 102170496 188832930 776110965 137666876 759309204 222238869 559386313 720936169 855162431 270723647 678882039 334316988 134449331 142624712 950680166 97724200 966218596 874316840 174668601 702794355 801641383 733880660 869424828 373052543 391304261 888342756 426556828 452549222 963578328 569526819 494171502 70689796 961167388 287550918 520290056 693161590 820382413 638857550 806682107 558468556 129955970 590348395 121626882 520083786 486628260 760058091 310217614 954303287 681655408 865041927 937766552 721598756 532577906 392636815 80026247 518957603 468133038 402379548 895743281 116199259 537304711 289251474 348770361 764668860 189419723 416043418 86910119 187958418 98334674 87760830 4651879 913332158 592014631 215926150 417460170 507807679 812271532 242073563 945059705 424888530 660873347 441752504 673066330 53133655 860163875 182214483 950696571 247708449 900716370 195195252 826863027 680530204 590193257 739429761 512389213 689529568 391283269 585811956 820071729 43511784 79860418 597653531 857828862 547967578 699433654 292104038 851589940 628965927 775383865 636020781 738827132 928441654 369126371 8715503 475651557 619889904 292411811 319436232 378588787 418289529 189489467 635240836 82047250 66029425 520669264 257386867 955996132 149193679 704580622 964240467 181183992 734161159 23745556 131820672 863468425 465976383 460252712 162843905 32446831 897124883 597416378 979130263 437293938 157416958 267373717 641042703 137461482 760409439 244390591 282092057 750258690 377883533 292309999 218349178 308803527 105449157 48774049 540939567 320767360 597818974 602333580 100369606 555116365 942132879 506914283 537280181 414251679 210124291 105150836 339885779 716389286 250635720 785625744 57877921 683485885 775232512 312160101 233231599 129117769 62661917 999044743 775064220 552479726 904677325 893769334 10572111 335335126 149732995 856231406 401743562 191167051 762157475 796388609 107367853 178088067 71131192 569111648 224483858 674573137 180511399 206930382 868039451 758405046 909662285 679836552 30637833 581187747 860057002 321100596 787496790 364729696 681312558 944536973 410224386 482420182 536652444 121658866 237736223 102213488 135166577 683689219 81626195 204415705 799943422 412480876 589715334 994117959 650568304 472464631 734180750 193776099 588103509 544076598 314928997 392378596 839708304 370386323 977480926 516476983 666953498 758211784 656244089 720264281 613757244 785675361 336563274 773255643 161401811 951602165 98594173 312206878 945339420 465599958 911625198 627554650 246259501 294194068 993144989 557638558 506500440 849615415 220334068 70762070 372004211 794456023 464602474 240860387 454324198 16526855 469741440 269005883 5935254 769368094 979483348 44045014 721793425 161887839 575064430 276910271 262978944 908933673 135893603 134143838 932662291 919546290 200715134 912456765 36495507 886404159 666901646 172092311 178359702 858600167 256505992 329044793 157505766 596647296 11538105 344043911 650732703 410780322 873475835 815482079 106764663 389817220 48348258 367860664 259343224 205080597 828483315 641168653 11837326 93188764 861877700 967636874 486872068 874447297 529821623 883335879 50720995 652696762 805355194 392599297 403489227 498870590 456667490 418025446 936611922 481182417 138437570 238664168 192972809 978295171 504402529 744922864 421970454 834201848 808086082 351220175 279319086 229893306 402849059 17693349 773113961 508943994 21040643 572763060 388353305 466347677 731444376 226776982 711253926 240822649 530288541 135466224 982744313 736619399 176291170 372803872 82984931 960585902 883358667 575243363 453307173 792104302 894174005 921190425 822735934 258998072 849099215 203679162 577636296 195249531 86133719 876489671 504167555 502027346 322252318 69330278 326632403 497413357 780846342 966964660 358104139 660310017 718797164 557266049 996212756 419598173 78473570 41869247 881295947 138075979 276473916 839277350 990766365 590573492 865555106 394260404 406485733 777509302 489225141 177038371 743454310 326087256 405806415 637933934 19492956 644067322 845147766 844782100 539802551 189202949 575299359 287361221 468636311 394574777 359752612 741030128 427080191 723565791 247303888 653456823 301181040 908938323 323626848 611005864 465832304 833846180 198408970 743065229 152546079 564890732 547588306 126155329 149076598 538478464 736779242 259687179 909081454 552714160 679231831 192712529 879563747 11623523 793788472 988684005 907703880 981845304 900113946 747892452 52433024 502795254 962114426 475635140 911079141 116188261 257351926 362330979 962357372 962706388 296653957 322539357 171107453 595062075 976425904 290630380 60533472 438427542 142110632 531705629 256959812 759031086 7703683 454267534 600508959 6271255 124209331 273902848 635602433 630258192 924693355 44900373 161047627 257858413 211343163 581186791 102312981 21991247 121149548 168037338 675404074 69948862 737509480 868611356 297714799 414252965 648657610 160387055 857539757 226338219 882613821 540275518 717050772 519452763 985560477 301714287 110495429 406064625 253586199 847176828 7972700 696387229 593311700 955268360 643911936 551920006 324294189 826231897 12995516 708250751 940449294 313136804 901529203 119288518 307524667 310765947 790372601 979949215 114652525 141573575 471516484 447395399 404074140 402671600 580825107 446955617 643540921 633038462 161283373 296378284 998593813 572439550 578313523 140067791 120460007 259251178 131402043 732838422 340820103 607890235 935462887 356244740 62385076 830412722 803759176 571672423 87383887 568511014 662883736 652633204 977616032 285992233 493719887 165063948 467766888 391165911 178515458 946676396 701760825 97954624 795034416 544432807 304371585 660459290 88491712 919832914 271771875 680032300 922403437 370506278 863537140 711332072 925613941 200753144 679785839 219427653 75911088 865617084 383743726 230557923 855315265 651229140 643384878 387564983 912496637 224772661 73084184 994536730 531868968 309240681 604035693 644538946 210544849 496453372 483709638 914293636 274130273 465888802 624848412 982758741 934859180 450690609 748001694 276493805 878531453 337512659 508132110 447885038 475484405 355790396 685275572 327746580 761233283 245021744 452456334 171293893 146876662 155531758 10133120 843899481 780336626 158435803 524813425 902459986 680012383 439859948 761159903 100036276 870992649 883970443 854104384 779333681 76037345 273208723 112693833 879956416 617500905 826113869 998592131 743677990 26110847 769069528 406345646 282776562 355335034 721032694 751506759 322362035 999337950 257823599 941186880 505784620 920071323 246794537 79031582 228357371 621813487 290350906 705068117 299131982 726981120 234198641 287973160 617209840 929805387 120782997 60382667 304664792 969496771 471908784 387599510 662238422 363676893 519219653 717367467 140104917 453210454 30567721 179949309 743666130 266400296 548157992 305934194 882348516 333449335 61764821 775947055 829103116 543366087 351709242 6594861 764845788 795008947 354855377 483445881 179813974 94885172 876089455 618096761 161231531 711099687 210260482 133109905 841488224 550704051 660082757 27238292 273727990 765862835 644230071 213063875 724334621 341394349 297489352 840495300 540099660 538818335 689645237 799639234 181213555 675582561 517483535 628154529 372207337 625759887 434090133 40450627 679304021 791266122 734102307 184003060 835493099 247748400 415810903 934993186 825307352 359925758 347216701 756745720 55113977 186874033 176469561 791325241 541861597 571358322 503270035 471729461 203766226 99338249 97720481 830792816 40927395 739670592 628917802 149852811 250721169 469553369 894066243 775137120 9635633 92575155 697118080 253145171 688045155 880608893 632329086 458178861 112269736 446385374 810993442 98489576 758036441 383339086 535303037 49209317 305152604 951808952 710847031 590103417 801923031 447614398 437644716 342106105 158687125 273378636 941415480 407014735 177615993 910896485 132408669 50757763 692207366 747551420 224927099 77613955 707937532 633319261 334698987 417907287 189626458 310714067 65923918 122851844 741570969 125631979 494613575 414510711 44187221 523650988 272131176 600546547 640828881 584288729 838150016 818962768 523625452 849890017 990045189 979353843 388751180 61259561 109895179 275459164 713165790 203954546 237142689 51904049 83347943 662125547 131277629 256548876 33247675 141822798 635881761 188142976 733467940 614993719 671231763 526470934 166128258 720596364 757391970 239937842 282112520 655949248 469289235 411642100 163338519 732063606 903288106 645020687 441061754 425492387 212928972 635362690 79509592 578394815 566773112 313285223 934870162 697808878 201053862 889640777 963046187 803747675 110068614 448356192 674796774 284134735 211050945 796680020 538599583 81634086 2313214 400660560 902831417 147569885 904291634 604869963 835185964 770509531 978657599 79965100 379394776 351073021 135668701 500629171 7210529 575844064 331430271 545433186 516248942 86360332 576000 625723502 505760821 657707583 963477203 153258744 364201308 681992413 301699495 318551535 833163844 41819494 424652616 296812303 915851882 195495724 590699726 965655734 328935406 171956662 437812103 242265546 222133935 828349440 518162575 349337271 550663300 31463101 175821583 220245500 579198286 349688984 117318874 455787825 696117561 506201734 318569246 658075392 788802067 373966479 926921058 352526762 337751801 684464131 347453448 66896644 223126576 496288916 400534082 396435399 222335784 934607299 438569778 179201636 877729191 541866648 298978561 546322746 588716519 740160290 553611248 385383570 663934061 667352514 575249297 885956173 685547804 840878147 294625149 75212152 1671492 806865237 610151740 750413283 644054201 394132440 658086419 13644095 793869052 385855761 815275110 928652064 344390106 372112384 527774298 410140495 598720413 123119507 222013116 170227013 778337009 653854038 286994574 946634690 690434876 511420375 422179873 697710550 607641074 936988090 996412758 396813369 618928985 900697991 487950195 995394438 342198276 843310199 40143859 868306424 302379300 9226046 533235992 531961706 649702780 405045238 184395538 321097627 141281712 601226866 847934443 307969616 360161246 96481030 186119987 628307219 158209900 117763934 223916250 948478173 268781066 186446244 725711265 992092197 931200818 289503057 779040340 457727462 339014790 163708837 978067723 753953447 301146279 244109281 290451106 613562076 253384713 737794479 23660925 12515861 920488008 612360114 722101270 587725205 853262510 886638919 695979114 156074833 695964435 305893648 892182025 640945614 852092068 833158881 423499177 300273748 129283613 828482612 638671548 244587980 798816286 753533392 435716207 662152664 37378393 891157695 982059242 932749747 355785649 147156289 742383338 36200723 254598551 701561840 887599129 469507083 393611445 633271708 869484668 933761304 149625058 447397562 38335565 299791826 563929478 834009001 499833108 32420191 569907754 890647974 759589514 99115344 476933747 611650631 296603354 532094040 350171596 408032985 145754162 65248170 647641314 637192282 608976309 946873054 999824575 138563763 409901804 391545508 949801583 957772461 265458198 963284855 739549632 206538660 68560881 166290826 332718778 72400248 86298314 141420904 713172908 133914419 670237806 509591950 990824725 555701555 513051193 697858309 183073553 679806576 453022997 661497080 168728687 902763804 339734350 655088612 433417586 78903208 424438919 428002066 609020776 438178411 288339688 45741300 955151775 640701641 501628840 973112208 294837414 941881150 994756005 402415512 785574309 486432567 835569023 864912766 759240153 787010646 782019490 362835161 20448014 563752141 262939966 116419778 464113555 218218172 479749570 218638657 852447252 385275879 983026136 379817320 995647819 230184646 63176915 540901643 154108800 897057234 374574466 370089583 516408533 657432856 741244898 100665882 33575514 226853352 665046771 885347698 436701927 25973049 858849496 72182958 623569559 498864859 3921371 829936748 966046062 368305377 410179053 187004851 597555235 383521390 58635770 720351608 711169217 893998584 841879007 824386729 168772316 987365138 932592842 289674717 972510956 363867601 809203095 206025366 884115687 477020125 122001221 514698642 919594823 538988807 980767186 135641614 677618036 741978099 681406467 63347144 365992363 828216242 328133251 338908960 50680464 198080730 47888607 466608770 598838362 249361401 176874551 277559110 216996073 837370564 605276856 928571331 785650582 840802420 205519054 120468750 371592241 796551417 952996864 679727235 229716298 720684636 899161125 226848693 645810952 627730820 914690280 881118206 156389968 199861944 558030561 205320228 375761447 15600284 429415461 408752493 247132134 36575861 543823504 268095707 589474767 96033029 233791333 463371970 685298638 73560175 770991104 151360476 705107765 694905181 90600832 306730724 302029334 160056841 5680918 651997385 478273293 944620390 438538419 711084123 853741980 629154537 962056201 299805111 793159462 795912693 185712827 987178402 203198717 492197405 414747736 162695159 153678537 104623875 92583701 815747618 111363621 791704889 481374545 643671247 810433848 135856165 417288685 95390855 317526603 933797967 216064753 501098102 559285127 651388213 757029719 640198656 94138967 498544920 932715451 71370964 632748099 154622969 401209965 134712358 788209346 216411906 610115869 175689961 825668778 853128513 837862749 419557425 887494451 814104398 259853847 192986515 949465409 47737792 809455663 606894245 149333668 391577228 540485875 795102384 287654974 918852624 573888 703052635 927647207 482178632 447490068 178353157 587634250 60135544 258739591 555573570 396474360 663772743 813161150 676510107 966655995 488150720 294784522 698631713 467444578 213223995 8533394 469702832 538723795 2833698 589149627 88325425 463986442 569483894 727508153 572525064 674464642 338611061 574441987 859875910 971032705 892926103 296558703 815358408 495082805 641047532 913332351 640477125 659994343 823719598 756000234 301774577 996863202 471116249 252667293 900949998 550828003 813262765 316600123 798734397 495959559 920240170 770754108 971909310 86499973 15725053 765374204 231373269 893860781 961284998 81693423 452700682 689563495 470980857 5312833 505075714 959171711 148734591 668622658 203287896 470416672 239550654 241448699 893128601 851812294 363502558 599147716 986153304 195957344 584312908 704969327 897489118 588090704 15830385 190126469 40691008 383023042 741576552 940641772 731443168 409412885 957870565 310957580 213115782 631649152 653377004 62178538 531952050 556830255 961949557 985276522 642436920 540118414 403075038 883511123 781057034 877018295 384345695 911030555 27929780 363197745 567814407 860845577 61341700 59842274 332360441 329665224 250822746 105471533 874921652 78294954 453383132 513494500 502762266 917868043 452585596 101218057 674428435 568035515 431318206 482820992 942674979 287818142 944313074 657796130 971467118 844401862 796133802 504466996 704692847 820023274 421089424 681075536 448349491 561650490 528476650 556108295 937020256 589679904 301073072 970295607 211082289 729560028 2453864 899942773 561116359 944317778 178132040 844014806 420004770 549412990 963957298 85846449 97728425 302465719 58600276 302414385 330777020 534589801 341151318 46173420 625408053 533962000 21002262 350573245 59897242 64886651 481445453 311401122 799898837 538133521 718124987 88041413 983344467 679797189 742999870 649911418 157619711 973769014 652747639 118511618 862390664 353973081 637298590 181897720 439390661 30484709 19886778 835534084 229499217 315835444 813962142 928923877 694279600 371169348 919684083 943346616 950157182 887139201 24885491 435135120 264590857 328190193 822533281 700825371 521532270 116077297 190793060 775610967 974901059 760643626 82868222 799335042 719424986 708238429 686261257 157200582 258436634 553024637 929828164 92166104 153476065 461725211 150778889 275158064 593559072 266465369 201922752 947384554 520367684 607024050 838730089 287928346 413447821 394197821 6874603 469093023 556584617 125029509 99099426 598495872 320041662 875916803 747837744 8966319 93914128 215351765 336007454 933314051 812230481 449558875 206791028 220377942 770077335 379348409 597704313 741432307 652131683 816901410 538396034 209233889 769697516 730863338 795254768 274613733 209533937 429844025 499488418 163141816 526504852 894789995 719070190 965729229 954232113 105814877 207068822 147396141 72073666 17470485 290320558 354479850 225512412 53035921 660128437 40762202 792461162 27760521 978003083 292574665 826458875 583528780 355380951 142802255 823147572 838773751 602933791 558864715 92723667 693749024 778347588 185145483 470639154 928073149 7140500 298133335 269070722 620644856 528289068 711997736 32400107 649144390 620728652 878566681 163997401 488161334 503877195 346217130 664310537 415724648 684696155 746215893 138098491 216775153 939686326 538398153 647315457 353766656 908790023 746626794 209214061 654830219 95008867 776919437 507818489 607036798 241801425 945333810 656086079 796649957 460427401 319433227 377417954 876583423 648112875 602200262 503732623 504123943 427003885 950741632 505176410 43414482 895391649 599912668 202477738 42776547 851662947 700685412 725760407 537580860 564146361 431814980 667502054 39863273 349284199 111734478 580876027 949121823 635346277 659856816 694338746 73750899 851920000 202702149 22159947 569733055 154523478 824134257 371909163 46912763 969879821 91009536 803027999 177249518 179153621 643220296 390769552 461221361 803374027 416449421 728654739 603677624 344952208 709017984 464876194 900249432 738192717 67522478 952618824 610150499 693669678 713708697 485446395 366944681 748915537 453491797 364237213 595963187 25096935 275934524 337949735 928989588 798572846 190594924 378809189 177151433 444041827 443944073 922724642 125208056 91929142 933443881 681036729 257877402 554517273 693517054 695193215 208750655 288538178 397201352 266114546 507325043 921900619 927919728 304756653 163430716 706644862 453274077 557736074 36256202 830166099 595868428 40433690 211623472 297389748 237959910 542446850 532599131 980337820 927854549 264199609 160774875 113350360 601555279 157592599 591565970 603476487 638030656 151931154 42109208 660768861 721991303 600669512 681980854 414940903 526560895 600095417 536779140 86665479 722373481 629371261 601226518 246219653 760456937 125778652 54322509 401306686 415041192 142549330 35573460 586609322 755602993 267792272 632068251 734612905 690048850 58330109 78414117 669978435 900439219 1493483 750032642 109678554 205499956 277908959 201950515 569272339 429487637 28824152 190087375 284147939 909543756 419822370 71723191 66978670 287275302 42795361 26780232 807654772 390060118 708820883 372108499 950013888 162856307 566175865 838409445 290079 766518193 434680640 466468677 983655594 638158714 39140059 363160056 932555685 724796022 434083473 984571460 758022560 35903523 446954517 487040524 927778057 365851996 101536094 740230877 22135670 257771460 165430924 50212467 474541401 498994689 89671513 411116417 372226524 613139859 782132792 612045261 259137051 985914662 650292118 971832812 637032206 573073070 677795881 588852233 840941327 720801277 825533989 497080501 157236719 327078562 71187294 519405278 4833503 818365569 286545829 942600088 951867272 959423308 533226669 588003076 679389152 710285191 696461667 889219916 775593117 423763479 472814505 84753788 254027434 404911427 373413670 487650200 814649997 44560748 921037958 92120497 174379457 281988787 299145774 946308792 18301990 216427312 383765519 708510189 556717355 486674639 374548448 937258089 362485820 943675641 372458216 869909147 823764781 965080077 458868216 705586701 410987091 661427651 315348314 877049030 897228577 438739209 493095406 938977905 580860529 840676571 942115398 521838958 888622594 609412525 460009669 629462382 278670221 244781318 636480145 531881441 553067713 451664824 370484678 605677082 565004111 953279646 777676429 911870280 175746417 731296856 48810581 414934561 323676110 297371060 106108920 618818725 194118440 83125768 818107305 279306525 487346257 889705605 486172758 362614026 309436162 781368708 442902098 182581526 440434985 208328687 641622250 59321634 959922711 105585647 969399212 519864683 401005986 13207014 241414844 454248520 21215887 245863583 129685562 254235733 439851926 55956050 340745742 887334096 617957348 542838647 437403569 885724383 400826594 574307703 21022590 3112772 393695717 765830290 891428520 88330620 943193419 858497402 202067920 762072085 88171577 487912179 492094485 154087700 12467616 628844679 881115320 969319169 713236462 246270905 638098195 655245717 549400169 985254230 971947852 291196891 6440825 704835848 509339308 175510 275656355 819610829 642105910 853439296 652930733 873792613 784409952 736066317 404605159 534929299 43105211 273431790 89358729 514704470 178241776 522118700 310990292 645745870 317746096 422102477 467586123 501726159 188243118 95159891 721391427 971926467 118973045 142861087 769933480 761821518 569972513 496878640 238244075 2888126 605806533 690872852 754703141 322290565 48180011 708028732 664426979 552258749 877607856 86549768 297269220 52895608 307960787 308256939 325345811 747070187 677419917 490563271 92346075 887453216 396798211 936642192 680722677 23320768 161923794 827371457 619730181 368008684 53932072 302645840 754746691 184951632 290720985 656752749 297437802 944381611 724978064 771345645 737546646 482240934 652049581 212499306 170340137 542263679 822377769 555314896 812967357 762377046 825097544 116434522 6699681 306316941 464050104 773879666 958722168 444569053 946235466 178442444 620047014 525979218 570416429 582775087 770366194 676108830 24209137 38557924 850699697 293514585 111975367 134361292 361254756 524014995 904238962 322277531 601736030 135137825 859288479 879204414 942279863 327452747 709797854 588897465 337857544 756739707 103763265 489952002 97654379 979071188 587986381 864428413 854014059 134337136 377525060 426597804 775567644 701556855 125181235 179769862 544807649 116824448 96155977 306588681 118828293 22155154 226739185 293919057 733651758 49321443 73273805 157594035 19430005 648371994 560205636 256768495 967912057 850858743 266171463 719660262 128528145 572170456 930730267 121745567 959564348 453869741 594617977 595604769 403081833 936735323 339931629 153704095 922980138 727816472 398764505 177274670 742563233 209900209 683981642 111044852 525164935 673095981 375282954 383820077 864771694 860836881 978266794 811483964 766531006 134331231 423752257 951205895 368012323 434055286 598975291 517446845 358696195 91369356 267104984 482437506 33723375 89850045 509558443 930275499 771635403 632555358 392098195 699308976 544844543 563449459 620633723 114709618 211448849 566045531 992885129 723439264 853608815 865515001 482824996 179137796 576810239 521456923 93559925 19721122 224764980 37125753 860648566 321324621 510955513 837216325 305398139 249967325 373570510 803128354 242724059 862485172 42240518 980471161 416189883 2973489 811444142 775777241 114935974 121244438 191378788 617322787 705538042 384706685 774307546 165661915 480375217 233283236 401676949 23137262 981626532 429023021 509802669 210843702 378467166 967685730 65526942 929281323 558633837 125858077 109748469 232617460 647300241 212472944 352405555 170043949 563961520 911934235 835757589 288646993 612201224 103297213 410999626 626841098 363904116 723031181 790343317 756300003 831810198 491572917 233782638 300637943 955260453 6791476 542291726 773233723 283216382 649301560 285157218 290947553 622101764 704106770 293659743 112622284 809050678 166960429 760328440 331220334 456110778 527456760 200110695 87678883 444679316 196062672 948629937 770813671 115362110 957474191 663880489 21691932 841129345 947215851 138644215 224196467 659301822 281373278 148174436 698310609 985037881 611420917 720873288 218666730 271930157 395809880 601929163 246903751 837135958 437184878 363658016 22979676 271373136 136474936 307699089 585545587 188295550 368028526 775230940 558761769 151913557 821250254 748852218 327081287 701454954 450440674 459176921 745322858 626693506 340458287 290556717 973302460 755166931 953651089 299356685 807735695 577165501 467534623 206773237 493892421 800012519 567285236 519566073 988149194 249038039 126396250 436072205 303653754 9843950 355206100 319417828 813594840 22011825 754507987 849145861 500120702 862527502 235033842 112072666 928036519 40270556 212930039 805817563 421275079 656380992 290960065 314625708 526447296 928443417 679181110 699808322 982096787 530950025 4070322 217354423 485259654 154557674 870758357 499129116 786668086 795554147 706186457 204589858 101542583 484789415 846317258 6064132 465648278 351752937 443619563 643859967 194809005 58207991 434615342 6246248 583543363 954208503 701256691 21738712 344321561 691066700 616703581 497872200 589128801 766829000 520418081 567247693 900995156 516906006 52002896 373390408 674772823 43786577 386983467 392665895 314118395 397775767 212518685 590121232 977016136 160998147 676343600 849901473 38834610 368957586 918750876 828431260 337349762 91008734 409544024 909459245 632287521 498403882 842184922 635062531 811856625 773418027 562972746 908114211 189697762 535547461 929788005 423988242 405163137 627802414 536914067 431512333 741521028 25851704 525402765 548480265 192429351 895635446 562091685 763982555 238214871 514718750 799323027 765585110 844056651 763042547 898614747 76884250 444556997 787757127 258962823 946684176 223203169 629340699 738383063 119954172 99086453 663808583 264864533 863918399 690822824 402182383 883990997 649177889 687278615 560505180 730749566 265285922 652606725 748539191 300686721 639298281 217141336 152821314 401532924 902761191 689605311 996842274 609329751 813164664 655424991 700560732 577044374 350576371 849429207 529261465 444355928 673561608 5069449 983166325 720321666 546779201 503910036 466600037 4849593 269425806 218448035 470430499 76774572 30492779 964335371 66941610 720114541 706040749 957706451 783448806 530100803 840735721 234423494 320634007 403979486 452364908 110054207 781303906 867311375 18668832 817967326 886787269 244758191 606097237 514802780 157985959 238722677 710878250 366657214 554736283 854073181 276426063 472399123 600935227 326568613 990090019 280895819 53716935 981819005 376974297 454386463 982661001 392297640 371165800 918244255 963804394 819424603 66044868 136837643 46010966 293511584 137872755 970450238 598110301 54374539 838619221 223589368 15125514 113837490 496243569 271880153 88260046 148200558 348813999 176693065 230378493 68150133 919128092 708210515 422349942 283344691 192718434 667806375 223305074 307326687 50171515 813914817 790005094 321706616 868158824 871031375 510525871 380307903 216213572 798921180 553976643 534341637 580163116 221763823 130051526 707270340 906465331 805644650 446130132 325331612 397379828 680411835 769337600 820734671 840100571 244487709 592767693 371480075 520744113 947803829 85614644 102707859 831308620 987239198 145855231 767768855 237241165 715295580 526368641 435177644 989967231 404266794 954298349 45333047 762421685 385874544 424649373 880055389 361458738 504897674 36782472 600639200 880445471 264115910 899362843 309673992 291422634 263998219 409563311 900324931 446117426 571010756 994183427 825500831 700722327 368211379 494930745 945644902 961233683 595043111 30766159 501933958 734036459 504618149 977355119 842582569 793806978 454513672 401234679 680866310 446022526 330742722 816434125 822701854 268954831 198933669 773564506 817209929 828275688 517114220 434700620 881616305 187077657 517927095 889794689 837927166 477252077 117543145 716319815 317426809 728822013 528230143 479315330 422950694 735942783 521098847 132313081 148310435 368940322 656491279 478067826 228814452 363200020 204630888 481720778 676422274 501830021 15604423 358899761 9085756 336956341 421643622 105043111 181124407 870022497 579112285 934671057 320792576 726031920 986795528 115591140 298035219 694590189 773175982 471316174 3833611 867035302 777160982 925638273 568901855 68383163 129840740 650446013 212778221 317522007 283419801 430303840 867547092 842796634 408039318 337750781 581456207 203318718 73962642 386109189 407355806 195770984 808220398 216451333 348786256 987868544 469821051 100819097 442086993 706231458 734910683 439571200 382968204 698062720 407744555 353078626 741920173 700946884 612123754 205375072 480580196 333324251 2072482 102336375 244417050 567266593 112134824 204933881 533921463 790517952 39300816 559662944 2596588 325973327 129539495 781898742 161223827 222813546 855475762 29277684 308885767 642446399 371143881 496870086 36714555 421739456 442171964 271608683 697099456 66279457 864588854 107644738 663169657 446025196 982837642 384330291 841649367 630563541 8478906 668717407 934083388 469544266 112411520 468969729 470720140 684841498 813065966 921610456 717471806 532010930 162197196 384919172 126196980 854516295 390463334 605725555 180840138 337894672 130973469 298144592 120223162 842513648 570654443 669215826 912272325 830585646 251092658 300911383 873860541 578950380 633022868 503901493 201128905 794340134 737925012 280756734 160013243 672404949 28707531 67940830 239003724 265513073 371543408 42910540 994781507 699869536 426867726 21892995 478306150 802459918 382152722 901488253 256093478 960096322 582328700 440721715 277652884 767872866 83738335 696909198 418934332 1412186 577656805 231078648 401966114 39262781 810276558 28685784 687203612 886536576 991890291 126059913 514075796 832292241 721570853 402837722 216597136 419212942 228121190 548519073 169334575 501640884 401523167 902194817 566524854 971525255 745111075 176769938 470315332 472677000 573358163 681810065 971542660 652172238 786724710 310439330 118486999 575863008 212647163 29554456 672453043 75599822 4341333 429954090 128015043 680392994 133801737 386976265 442962929 598866408 653194605 640400067 381564417 701905729 64401789 107973083 197956564 930849045 921454854 17539408 25641482 973942363 197156560 186982726 222081730 215747058 159062489 952636589 592168753 757318612 353618739 416157048 155645257 72443358 924879674 299392895 693796267 665512038 626727622 409524758 537031357 315100447 572807435 693719134 942840987 912957137 718448616 897488267 464822121 576133516 23451839 66761180 709989300 22127226 265703386 354558443 857416422 659678383 55077266 767440011 444426992 422002272 779908724 446597817 900884883 780677175 882423132 801839462 75907862 682639430 185359539 494552303 675360409 517202538 247035066 74136390 676487376 976341612 715669270 95546084 562653441 111067022 588428667 137862225 168491849 49181235 180261265 819355430 843851282 222333823 445761290 435258730 770726872 91969290 726865576 75499581 226743518 501262414 693276210 221547379 939981151 977432135 190176454 591056545 384996569 734107194 919957359 81605064 368700582 936857731 617023922 90917831 453380952 826852742 468155974 658821904 39037070 290346601 275209060 363087296 868369525 68827235 209413099 885469974 966987446 76343827 662584786 675173706 224353209 454845897 387789519 998352739 437753008 883786282 52618117 72267477 764041587 535648141 617792163 126644209 775341621 490772343 422750363 660720120 672406324 934656024 976465845 11947108 622542407 509312602 985478716 911858826 661827901 677377010 353704375 359143424 31370422 378611333 640608691 785769418 429851044 176184763 548002459 242297084 964842254 657096560 76859989 161946984 19334860 985561168 202324269 18399632 54537541 675682522 141937761 326827358 572700269 888287043 968654766 341848818 573581637 85426627 956697507 27673871 65010837 711032377 493688114 603607860 409803358 651478696 714887858 275168729 495531338 891983333 671177659 784816867 857169290 948550849 545875191 434927057 856403003 689698001 167676670 240892971 1133320 560426044 408941016 350332409 628706032 527004011 258321683 282421028 182292894 958485486 488555107 157295050 867893953 40755528 116262516 864087240 803378381 423642057 853487356 628259396 937654803 189324077 343503444 294000647 67729856 49480968 777452626 959356829 923872351 300660957 339016110 289883425 331250341 469252764 649975608 631110388 643503287 40162553 736133088 965242258 209233988 923013031 611714957 909631997 189877729 186726141 852748112 317100433 935562479 235089556 101442752 560170541 327796004 49742622 44808851 599713351 22274871 667743622 589204827 109273723 57070506 655333215 525316954 215687674 65073756 79317345 11201858 45126654 749904282 451468650 799373690 75116045 213405827 888960069 690842518 239193783 232660928 653979122 55156449 205933640 583059006 706438057 927059841 340770631 7630799 749950811 478361124 879911150 475936204 355305239 197002294 81455788 666128844 745878239 888685906 895238190 279973492 143133755 842140375 400529092 962256544 815454706 826030152 634675581 596654393 900193496 586983657 162172842 167572092 967498432 166865200 170499340 590212961 272294088 853628668 471935186 336058890 752732024 462969150 41291896 921445590 761018768 77734448 687304077 14311675 85926698 776707484 428037899 736590814 275372695 703536965 351996908 505892697 504903447 921984316 540619094 123279214 135819985 557079922 352827967 187579562 149774103 885069732 601059707 651284342 105555828 586393551 584764987 393285274 748611306 414315835 899113241 416851559 424632983 445408742 907350663 345432736 83185976 990947493 672180270 291246497 957521625 938729274 643783255 783003180 459976700 806917881 933451504 733709590 704973532 851290006 786820872 84639422 448610733 640403912 196860416 697042520 627969565 454783319 778098131 684541945 219647442 601884930 264601714 160167724 533107748 490926404 515762948 331742813 29383896 846236905 619464676 936846454 580469354 500586793 856633724 597101047 482337284 620077074 686247844 572090333 731864550 425455887 776208636 276781618 216738101 180428641 671090 532487165 20491632 25822949 578693877 627380702 51716402 257095193 154909694 921133218 25476358 835857093 658883400 777469150 194805276 198868702 866679624 57794377 950564128 647800963 531611564 970021313 418840440 827662538 286576564 457017557 289600312 835977428 771419374 535371593 149226812 212133147 488107438 655324745 165593125 631865752 291927037 310763491 842427875 573384550 651763362 633711515 678107843 744628248 811604615 954930613 986346141 743862931 57801630 201506551 879624388 115008197 617531301 792660530 193410098 289852520 289572631 709245063 944540395 145533910 654584902 862503828 970670312 357736549 622513379 456362767 901890890 447567847 594026455 447910670 347795186 128711521 174822855 870842568 530963723 137009340 697907255 673390827 74351160 823564033 58991655 167068583 978965951 877813061 999414219 361604335 399805147 535207184 46507932 846992411 322708142 528470435 141000354 83310826 913830366 720893040 777149237 94593277 705757791 623485117 303047484 729204900 14565554 302948007 779649268 95384064 491561882 554525592 924784940 866565288 997001839 303077067 410758127 957323907 292957155 890207636 589484368 483992496 2852089 624606647 393087757 153073664 973288485 704369482 352844339 54144487 876159685 122813698 367850062 866706168 977973204 48811898 733495493 164122066 749457126 605739874 208740988 867663557 699001771 815118799 248260105 660796135 379665318 205999423 555445304 449430284 130932717 373687295 552469851 363020326 23495729 877009538 449867522 259605183 78372407 48237939 252045639 53176818 339704562 301492961 699875468 591576115 401101621 906038903 123155936 674504100 280028366 368379654 450375477 127585495 707230663 886019977 559265526 254064044 40719909 841866439 287489710 553722895 697395244 915887103 587050401 111223892 537040520 913908988 89461561 685351157 526499381 128143394 579453191 376371004 11913418 228000180 741891928 779183992 485343580 695315518 17420442 305411290 134508053 63892132 194571343 839949466 624118035 883021346 442952507 735495044 717597842 319200272 408235067 665704749 143776581 257987053 168522727 884400584 927037989 812174719 884760408 222738002 915620793 910764322 704275920 409623774 863704653 489699722 345866263 156591310 546216428 918365850 500214874 382224713 877491900 644832272 597651753 976586352 457296403 502043823 624069088 487648004 406944996 990054380 178982117 237584628 164576095 764623608 992739862 837129216 95377053 308074674 569540487 421948687 722059718 545884613 830642668 711558552 675139697 464729173 4923343 653937584 140285065 751482538 10023559 629128419 801972042 485702844 763877230 120879727 44254190 256559392 861959467 83017634 820245971 629946539 749435082 592623460 154194868 554775861 957648402 911830351 63071707 324943798 357100487 160935459 781640511 605004542 77818039 92096376 143890211 866815960 792999981 410535198 820608529 123037731 737707214 685405277 978071746 271313264 310021752 80086311 188599226 408024097 841703334 513597603 767382087 100977343 903137396 419980509 461994265 752025685 266746072 150218653 332904446 565761668 3696581 131912459 637307894 296452368 285760172 122118083 113913365 256951120 959689796 135472040 792370177 518494159 397007125 480992592 815689786 309106509 367486570 38227673 553560785 933528454 413462468 35842328 717840106 547585768 148416781 190977598 347858969 557490123 549204575 233204588 512449450 541133073 465852297 328027169 445091897 296814348 606919629 745835430 639168684 965243978 421850722 544916565 466331217 106898434 628277879 224010523 239724246 733432300 118299232 953843470 289041586 852892599 441110685 578093433 147504879 656799252 497858161 220250723 120216769 413051411 936816400 667483423 581065542 715935456 797430061 380132877 294800303 898046115 837473701 312749595 286757942 273677786 211770240 44727750 992469851 917505047 554561718 621023074 618919377 713102803 210720901 463077664 744469707 614101735 495586828 28420206 711195085 604598771 785670991 887464560 626109026 12179558 499499251 674670034 546604720 233068566 99740655 798765676 377025094 604032240 971782171 255848851 576946997 530906863 456384012 819524790 900969491 480328595 385258783 779303236 492356954 399410376 273953572 649248489 797028181 347654438 906998005 832666501 751705370 212486389 314200695 994476748 990865960 363190936 694339267 325776725 368970431 991894622 429043156 995521278 902855797 428222197 459696858 614905053 706651901 635686981 242222217 297112448 577576818 68284307 906169939 178212932 720914411 222911019 677177267 462678061 621209302 902497314 15604069 983752961 171156286 501374263 815676856 183086495 944589680 734912067 831316092 369885092 923184810 89982130 797553881 399831878 816756801 849677551 226554303 204312330 663882178 246491939 681654931 315767937 21648999 359807633 427556160 446790432 359956458 965000055 150274074 381994278 86314464 146311085 473568364 989586191 122284600 534604271 815510498 515074429 791479140 242280756 243322159 694654585 277142975 117234583 849482451 975705086 767419570 417173501 405130766 881914766 830335745 812539846 160217660 985344119 275746119 798348344 146415052 110499602 971041361 251192521 72795580 591737599 847477962 565887732 305125881 845213754 369504156 162152990 786161419 487318124 912635095 100532763 478121571 429442579 134929991 813780150 715570900 872984036 203599257 2673222 696718320 548383524 808270470 492555196 367095318 588819942 7959497 49634130 746555557 135223194 431615720 440845139 359024323 939337586 607130363 366318837 695273916 21127379 55245957 978212200 644470743 114587088 306806206 286305608 354978806 581191793 946409200 259858885 664772965 205988459 628757049 266034978 408268831 502692889 827554126 33884125 248354948 562364502 854605759 32478283 356239593 985575907 481192513 740333541 138707298 151313174 408659253 531149056 623772815 991789854 510067095 311945550 658982477 139092728 254362737 969367462 390195938 519101984 526471766 837951509 865718382 368358102 219004551 734065719 401150028 364644355 867531544 777963494 852297638 340298261 547173317 301429959 809153725 672645197 315088457 708738924 254449460 839858377 411115496 722574036 74125855 502555983 777496497 483109248 609089577 212638034 466944548 369637449 492414085 302443097 150024359 747252764 278595362 20455065 146929411 667520286 626851286 977790707 162977916 96264774 408378444 953314557 890129570 976919782 405696318 250494464 11806721 473315529 367447968 796569571 304571595 544725802 919063307 119738712 848899845 836455780 77709347 232952767 771616429 150576650 42446744 781020227 457429859 807333778 978858392 269468720 569586250 297221336 278703334 693480252 420620448 78671529 28383222 554188235 367314646 949014406 134277506 902570973 749086404 622750363 190151354 702913411 177024768 572667252 589043419 672642362 244096653 672830267 130681332 702448288 581165964 792787231 270247026 435760674 368916870 10639828 374630530 859150231 922390103 983835108 968162667 952408756 452990609 637014534 522406014 799908863 309981549 123394356 114084948 964323060 97563930 296478340 463588085 26379843 757039211 684335612 845223811 676647207 263369203 922725507 910716407 345277119 916986453 538035021 340199089 860967268 302890791 104927483 567247591 48665473 884163274 890511657 452732463 977076641 30764315 966374777 702887421 420698386 828751528 741442190 517023656 249410548 704938663 694368300 160536931 346607562 603067539 907634684 573212766 863135410 378891288 503975392 217530808 557736857 534744377 608909400 438819659 195323009 82971092 605808328 416131378 80312717 552424555 138103247 226240867 493577124 230207156 745303099 992119949 55207694 812013471 496944079 178113310 166100714 563389954 937726227 880962862 370504398 507233947 716729834 337309946 303055697 863228313 170773916 100947482 960310736 668713984 433153336 775579795 868552620 367864508 192771056 16984003 519023460 902295524 990893845 126001162 685992606 982226704 883053086 950153255 601010679 399032603 431993898 949941691 361028464 94845944 125020767 766244629 87803289 930044168 117842648 970102955 654200361 65274195 44799222 418689964 159155387 1912081 167768588 810327061 623231361 57151579 881828159 189914658 805957809 231931646 737177552 699806240 177055545 841627200 670828620 681398468 170274602 411509006 169552729 8964837 43539218 563345856 271647313 808937003 398999252 872025899 533512303 517887158 185949361 796277535 846302315 168387560 688994921 877823170 893852158 125860425 440852055 566465113 532225560 987191322 842191150 608489249 939999520 884151051 138653025 592486846 426232413 203484057 634682278 660842888 554924461 384941867 457034442 200829211 225954768 674274175 466972946 883625490 669851604 549310263 859009634 438829653 672170099 308434771 933722331 757887795 518863569 898674552 247684320 921209581 861864135 66636023 501688979 112819893 962950458 810083214 38864088 539984256 887959582 216490677 320998902 128829394 541575528 218108001 488207557 110581264 579517984 431450182 280845613 389384394 948086894 533443816 74852575 678293110 825270289 161561184 184409828 868466599 159468616 908091368 735465018 109064793 959987844 198249993 962546590 561695313 574187068 249163309 740568788 385035997 191282907 838982409 670901228 249999974 962799090 669495251 788933305 314769093 678130648 404681966 634580120 780570537 994827702 443257349 16790681 861046907 643840451 325984822 772587627 428442824 938351845 244549067 762997431 876424427 671013603 451523820 583187121 851675589 272995673 14344568 452420346 731408495 21033772 883540357 411101667 226030065 149822636 766601696 443760237 32918451 460604481 681580335 860481902 212390591 400659193 236787968 525828946 158810704 233192544 231723519 78559942 460224903 159372189 192945222 310499725 550022049 918537710 26176315 672339614 146456310 254485009 147433215 686885143 880966652 929298404 277504226 955730184 439660216 617099461 469345542 33329351 967110069 973931724 538619635 471332341 551946965 276752529 374543663 281165792 616321898 145637383 261942773 634936173 32303986 918667857 932948409 521303253 687732350 387786490 406142450 930367099 283339708 955830860 945942856 493959469 680486454 995800195 30408600 599769835 742137807 760408393 571537119 881312728 302088792 429142268 194541316 61367540 353052616 877198519 46310727 676156182 778112455 198934702 143737388 624522970 430453592 20569193 317343199 635908047 480283354 652854261 27238898 690082693 716660822 911433479 132419285 673388217 222028794 626793311 847410229 835643925 343226152 942433684 915737394 680485466 132453249 221620724 379501872 889098476 195040936 747760514 346398747 994794804 412976142 552046186 928501480 179891066 73517738 33222382 86352568 918869036 103038360 606128720 295613097 210285491 802843620 741846728 536041980 319915985 168600601 608040019 789835284 747126147 56768135 300524545 345613498 466455715 86324749 558074876 708216056 579571078 451381833 873662238 297558961 562167425 496874329 876399673 806788997 982492366 354915711 1918366 398385870 186239056 886491833 159572175 374287281 314575553 689247617 665274511 595604149 877158414 785668324 632197737 716821963 83107429 859523 241689780 688997226 906352865 773315665 920378417 547012236 875455797 290314527 433415895 146347702 745747123 539304045 950354775 109020022 737781944 28504546 644782347 7325165 21771619 380559526 710094901 364655630 283772314 852677914 40994101 163166164 858253351 503481388 749418785 738900430 161637092 900005768 71738378 41440631 964213600 269245463 48599079 603857106 474186710 391824103 680771895 214057169 539573687 488263425 358140684 463063193 615124075 81932864 838149106 890665933 235837239 128143861 685702331 95289586 459116843 979627273 643066287 362102554 717104935 932676525 821456472 354764289 783229883 535957957 368036915 530010991 118764580 405735599 960833110 614214547 212279718 94453804 498225873 76891426 51169471 74740608 931555966 376244996 386617993 505555493 273765254 316067776 765108185 613275261 969010099 827069742 336311072 805134163 761309757 799763685 686433073 403206191 238128060 77355572 407104968 425266390 766074376 827995708 937175154 957063527 671036768 388873103 36705962 211967742 557628223 619296805 116496949 689038275 272510200 118544186 620959573 852205933 68254885 492809421 514782994 190803384 752413547 806855189 543121654 397019145 733215594 213173006 265497011 146911000 163079996 636405811 889681600 32827859 838567377 254760702 304973856 209913658 746765738 917864404 204500634 426562936 203942107 320137742 78881080 446592676 462967006 954198564 74939934 953775 935230707 462529067 3478866 207645570 337645551 966444566 7923078 634601026 11825833 776113367 140562111 493664020 776956976 411879624 592598299 853972964 97255373 132988123 788677919 496138676 953249596 79928901 345536382 963038337
