196592
897492401 581925445 882433203 39062962 299800012 152486185 709063880 482150993 487016839 246956514 597766230 401315685 872920921 40655504 772139871 86604000 735702111 356701286 578535056 406798478 425090330 346450307 917918932 561177655 780299645 461956894 465146647 239256652 935886416 21166757 245208988 25286046 727880784 458646845 930900514 814618093 916183217 410954527 799897678 163277839 570959042 296488164 845618476 739888276 777385566 750020790 826978644 660745856 709143313 582185971 710360160 266856674 929463947 551532210 743511364 420673883 608915706 268612122 931961601 465839512 785948866 549696039 907802083 546262379 770323251 10623677 490451390 345414796 492055982 345558699 388686665 285099640 659471962 249812008 786627424 506782473 944625099 209181852 347925513 43799911 189455455 138092666 755493095 146575408 217693051 84456144 959190555 694566019 698149015 301836976 790301880 497185819 498566644 197939129 693550357 648564937 727750962 353758161 502124030 293243840 832461219 73352294 462953413 179110490 716971809 601392615 617814691 468469477 851113844 34116715 118525370 74288709 579060617 85818809 105115535 53884120 909015311 152462924 615182761 449986870 647364820 45046040 256842218 124740702 905243883 704940381 856858555 1023834 100757825 66042077 377815725 235866623 312107821 164426633 491321073 132297927 168819238 61751341 196066909 114773497 561612428 4818885 825662170 726867784 839958003 811650678 905258959 31206334 597383595 130419858 586965373 226355741 265936319 209016239 335128848 77307693 373197305 81235233 323428765 48029923 480946495 139255451 321321397 259808653 850512999 113382632 762171193 596692219 732909595 127166184 588665175 245931607 383861791 130399569 593060847 170687125 717836533 50617890 376002591 276852212 386503693 208983372 668821920 134078698 198507532 100835778 905328963 893116709 997118671 700393705 721714009 688269698 930096516 297351537 937278892 264748601 785424773 551924713 943436168 118684748 641141282 524913891 951685675 690899172 857636631 633018399 662553821 549225647 794077606 264133171 601526222 380390890 438587438 208704103 320124755 175349757 630977307 421339375 528631034 64031382 597088119 19849274 506414702 73145611 426267636 117989372 682267740 578968057 983607607 706507357 792494173 347898711 457575216 456635908 573351640 95485126 227405843 195872045 658782937 480384893 976284924 477666679 779337233 457922447 601647123 410463474 599211072 499032307 997760000 865756124 960193504 529503572 931189626 111848677 513827246 231699901 503496544 347495524 596018252 92951638 374240654 361589079 734369221 363197150 464867168 175376106 662764028 199514120 328729551 68101924 329680181 288743690 677308661 22047527 682065914 283040533 914900271 351788296 725215888 315309556 423952543 223289261 874224957 217191551 509292388 432437395 990184382 306291969 738445709 454677943 516436186 425495028 916467935 773784691 797225161 65121769 252821801 87779994 206500678 3981757 281789757 224419318 952853846 87754547 673298461 99188450 682307840 248396684 842361165 527450278 786948378 695254696 713476121 707930637 847208122 363790877 793490408 559320729 784237308 685339562 690263250 242530278 484311037 206377720 671179980 628217026 880771750 861191372 933154874 854612053 954629781 298994844 464905341 124118047 307317294 179034160 245629002 141977246 361336152 343989274 704255985 143433221 838749553 146644244 461784597 168186750 896456738 301700170 303238820 300406000 772774147 700393402 896308264 186096417 250619306 187448909 375906252 254752392 944017577 135576632 825766337 322406875 820548677 30854375 349541335 128993798 726918072 539433359 836352130 600976876 954350717 534964055 838221057 394290542 742668694 413542948 873810157 332072828 545951148 66969425 256113200 196434483 550604584 247607092 718720689 416373795 491806892 194116423 691764089 239147439 637731602 618376721 824989833 30097589 234379824 39066355 124917678 89255017 903467212 269604030 307478904 265300018 750736219 559522149 863135351 436746757 925223284 512116254 585030188 86031205 713362715 325742939 740902960 114545466 560883388 126782625 975908511 287324501 761833637 66308697 307776424 154789729 698430396 294887039 346836576 335753583 708286695 462353075 509531048 466776829 775279299 616650371 883306672 444992770 563988350 265186803 668293489 519706257 790994978 552287146 861945544 696355336 969055283 67193909 439043416 53451789 154600359 18144469 396389966 329882353 540288965 373476911 662117548 367507636 988837806 30103799 484721555 386464191 778920261 255172574 671086281 552870338 555208782 969610 787943798 272884547 398469735 360505861 550376398 518410207 897235664 658875673 750443742 488872030 505865794 448234730 502439100 222875675 817315686 25151046 190934677 108402193 594612072 581813940 946725830 292202984 488637845 373406713 445598574 400523124 634078832 216059270 934808070 895884317 957483268 48248463 798377536 325296281 602965320 451492163 675514702 309662796 580415642 36834632 266587857 79521830 588950695 559956252 563031537 524281269 772319284 654088904 845825647 280239936 900027158 104102599 427623867 303344983 787395552 152896346 772861397 188319089 800305862 14315898 721048436 342981775 892049167 265439102 916160538 299049243 810432554 747179987 923744391 412303497 708533861 469313801 711540200 539145869 937878778 544025046 798839377 392772718 670238345 609605269 805550204 499408586 575902666 434130694 946141957 929154507 989555108 85473621 198964418 138080488 327888817 42183698 779209479 7292428 320832556 316358432 533085182 337007503 958304506 432213615 450878549 415305586 759617075 323901299 443667721 66641294 528095762 48156677 250721562 203138660 592568658 334283784 487736483 475823559 740766344 641380965 679642518 220665999 755143002 381190733 672052818 327742657 983669259 874640832 930295258 427464631 960357776 890649317 928673138 90925972 935347310 658105123 765988880 595964551 667086576 129957885 982830194 972839517 983004558 727165734 805113122 592926873 977317064 793587989 852813832 533357249 877724420 951639 510943319 489359518 593403256 137904616 691467872 74890941 441734213 139256967 629910895 258207026 340365418 296080779 451187109 142191883 981171669 424680628 804785838 36516891 573084832 396223966 931623053 895872305 932785058 134439439 623634468 554271954 606429622 358089745 573873135 13811924 449535116 116315482 180245406 134542620 684785488 623836409 877012078 44021713 91540425 16429231 596983921 495691108 600805672 119990080 424957515 313587110 834073483 71629218 938276773 800108427 956895181 546784684 869358226 433548405 988163940 175319968 989638967 16621447 546673120 349593799 713968845 24289884 505749283 456900747 804156182 105104482 925361143 644569789 654223733 235556628 848100482 94942068 461661658 439210100 521900756 373002864 696009668 366050715 644480544 116676360 133173234 65597163 677473396 334440091 388595781 221730693 914011925 880119950 954402403 951400695 969725663 42889012 887698560 105238523 737803840 45443827 298069570 75652331 369365912 153356971 372640292 210105653 591334701 418160836 686926044 530617089 950068460 862093925 947519478 883595202 977789738 499700861 588379337 305836308 671731369 77716621 562608398 465920026 851921212 518417940 547261321 231705253 233095962 166884055 458947061 254660674 551533968 272173797 279776784 266721387 678922296 55855994 910458498 854587199 905618981 324600102 862302866 737246663 798725683 569541048 945524698 740194547 782498291 111298531 604209602 459496999 937694198 725706466 790929460 461483588 798116353 647809693 987754703 770474449 867285816 819951514 959876145 864475419 919426719 782979994 946885291 239843597 439340775 90532724 392023755 90887558 500347240 84063123 737436966 129441182 857444720 605939479 716932348 300191935 364710754 301863832 836845111 492132945 622811359 319309698 857413507 555743368 678150071 454048520 885159987 67954787 977353872 672576652 783186050 409246552 518671411 207695045 959851846 595103569 648684381 611707490 785133806 722280991 860435175 677300213 743758776 591662203 964153341 158129152 434794465 318375045 650339268 351162418 663969649 110947687 242563164 87129536 964021209 563874403 749520610 633485935 718984239 547982290 860392769 208044382 938199150 544743388 674156608 531950853 641550482 386782462 822885288 747176742 799147393 9609153 746088273 182805046 726659319 521780453 808726922 213072747 585554975 563202717 576686444 80328593 225909931 26591287 345152533 343227436 916633880 84104396 322108393 198847204 290736153 52704397 457598506 363757413 802104782 429560911 651355666 521538755 700289746 550625662 853650339 69160383 889138004 180583385 530236092 81754454 715792052 486187387 561140104 444489290 803924461 614476495 890918821 428772282 464508908 21321287 699953513 632601300 700166467 173816868 954457284 68624005 809241189 349320488 703476249 369914436 743482588 98632984 736958657 51119021 783080812 97335849 300716364 250008171 900439846 699873087 765649618 492590226 828114776 561866156 755383951 712596788 844147114 490806614 944435551 662709391 895587518 354306874 600338876 117152998 974064339 80778952 245642363 34990752 175779973 88247952 810192660 541020163 967369727 180957227 423169260 406842985 829037344 666041727 988114210 612141463 865737633 522459724 730891603 290465378 980206137 154783139 885984880 201451720 314011803 134138186 266614705 160584616 965381791 799549597 988366708 311624657 815735689 584792964 961240403 825105603 839472645 258446444 288633463 192907261 748150474 209997959 995146081 342532325 455487839 254013231 622406201 350245162 513083297 461261078 644944220 479134388 590471305 332933152 482016917 90958460 647228540 227924265 658222078 629857971 938586136 559390000 817544530 203144948 433906292 175011171 605743566 394639672 691755768 675273503 706958822 370805027 753114866 504215568 534850784 340601273 839958885 235190680 745861228 180349663 739816915 279999468 305566389 253821770 941275802 521684182 615132815 74075092 169083146 67385248 965236393 715821968 858898125 193467784 204853630 57794023 320049937 54029122 469297863 226847537 668838778 526130324 980983958 726159872 862508410 469936532 835535193 67919121 313691273 139007575 338278692 206148252 767012171 16320098 490547748 145496325 731104600 216947563 872805067 106958549 238570488 142771304 164685885 161211625 720891287 530021352 946231908 368968062 853783525 199556169 859616294 484461500 697112501 296692028 434516472 95088352 576381469 294905130 380247843 338392358 627933061 527973305 668900890 310838981 610964587 522440295 776755978 559000606 601045538 46723580 601123234 356294451 694418212 577481030 609090354 443712836 784620567 322979205 809066721 548171822 850242493 330695191 352911693 170117308 559684135 157646751 851468736 764777308 831775332 53686333 960310208 468625145 901131189 547230598 656296887 105466575 565961252 190650930 753523285 563199197 856023642 791955893 869710852 356039568 900436819 662668323 681208306 161250521 734915039 387850490 952131492 461096989 991505591 744380351 841301515 734500309 797960474 645534037 765482793 717613545 978869965 655832603 680568819 160237182 559013291 477228753 497114640 362616964 727504759 73350006 282178187 24876293 719168661 682680741 749397893 247254237 827394200 73796882 408668218 95317570 100709494 58442405 676357400 676179946 857394326 178797175 495392589 78221523 999854219 984308746 990714302 85793645 984711565 178080713 965288997 677953482 768682163 417950956 428035708 322517238 382625139 224842619 810521434 352976945 581523625 135181158 260181396 102148528 402675415 349860763 996042466 661913752 983474412 476723282 501981686 401355401 972117889 870346774 936566568 69598496 710797291 307484712 637611002 612120220 987070366 90170042 347879908 224352185 554896866 505913429 620750203 425288124 765999349 417292287 911414801 723266451 872669414 790697000 957214033 675393950 838970050 395674264 757434366 544587191 774449425 754696008 910396011 181686470 362310007 104480925 857829537 370189604 535305403 324205048 572707304 2992708 455497591 195948868 520169484 427427497 934825947 842591190 844789468 790279851 934869756 396244811 998968677 418760650 734646211 722854170 909839030 46517376 554359158 375783921 587959334 282912454 328734137 264778173 689100626 590650638 983535030 847977595 979846852 401786794 807583535 590985669 963196291 44590975 809767918 653864584 881327355 628077896 648770542 279526197 669432778 187867287 288907429 27202505 652904888 277804542 716031978 249672477 297643802 235437621 738934432 673272743 917297981 408828285 610514261 576220491 979017449 71582108 648966774 304577264 852196185 733400245 975510624 31768437 670097352 659798480 872707166 43734088 381980832 37860188 702552244 616218687 899373836 821708598 976377922 264280433 631732690 583673435 750957724 586936075 862925982 42697449 302319159 179327385 990343817 468442632 969022097 122039329 130066219 69693904 382103893 134277272 673878326 643739346 677458817 449937645 636640571 171131620 415928015 295180143 899669116 756747207 801085759 633703217 761573626 657089873 660612557 487638962 607877547 118794341 227182135 48131520 815760002 169642681 354517133 148482111 732300977 431158015 452672273 383438386 829028463 736904338 757017641 342633797 873598669 154185338 774239341 47521331 246133895 234260099 899196664 707751107 836670729 692812986 921560202 426299056 910987500 269403705 947584707 74008776 619808424 287047801 805940120 51272040 439436969 33753872 368524923 222019536 697204560 107687821 629826076 36420890 131845765 25212458 551868877 226384734 484195064 63501525 419474678 75684952 845420719 168972945 495911986 411409942 645865058 644446700 689707868 579373549 825709249 757347009 960440574 869839732 972258549 370383320 675256411 33386767 90994117 13355463 460505180 215778520 325306487 89073012 551434221 366965998 383834249 159960635 190863288 17410585 679449023 511022093 530027281 85401046 595907770 319110912 905358418 423749751 777989252 769713891 901413459 102325119 718684275 498668507 871218209 865710163 901866867 881419571 985194120 567078572 597124900 128999178 475170657 384202562 604320813 134023121 705516605 556805839 651385082 359936528 449185767 430584418 778187722 569808742 596782433 577930697 652974752 643482942 730682312 300391164 802803028 774313699 789197677 58969722 701858889 614572082 651361803 255868071 778760501 268424194 753322107 307526514 750985575 172970603 339207417 58458207 270214961 106550636 219788216 141227991 549630663 476577945 689062111 163064013 246803044 217059721 807552741 240848604 694120145 551739584 586666454 523083806 866592761 317609442 962730599 819690181 879139833 234084237 488669916 194383400 805537813 363862757 394690926 204596093 283493593 141641847 236421852 169750591 595531183 350157518 628233597 90344602 977921118 191183740 953086119 756598331 960544755 332593920 876652823 436746713 790000538 72070806 969792502 928633542 929177752 500103696 885055417 663632678 914665656 157571912 964895227 536525311 776330240 161552359 554697009 266757335 760854036 484676208 931317692 103566178 615164383 129539690 850345514 845066542 864989747 499226551 751209272 288471379 617943882 589066922 930691865 286334159 981920450 762606816 839649837 148942890 887239845 555706184 821969645 562965684 827295730 21984281 727059437 119447276 812952969 566791943 915537384 750767384 970057201 161581502 664197515 494430299 524274240 246552022 600405830 367221787 985203148 415938486 931563919 7455715 119581685 52562959 687153169 456721808 929058275 810899365 848163289 227669020 423569850 84252740 791228269 421526974 641254670 160268319 563376250 419981559 827046425 217600654 514012332 243832050 270859736 199480280 684879241 3673518 489158222 327710987 916759295 379670906 539053212 410121944 538098698 275192358 346631272 15162230 450252323 116816616 255535752 8804976 657077879 317945030 800423928 521328401 666438272 659660443 694734258 225173436 566662302 113289806 229409298 150667419 895503415 213208213 422224494 420316072 718650201 188387957 650536621 244002629 293429677 274536862 408022858 280552627 569198963 292523759 803797698 88687946 781019475 610678348 633856539 304174145 794343825 579401163 896287589 250277406 430634707 348355015 363218207 145791390 562822087 322134465 616448559 76738784 985345491 706170304 921012023 593092936 604787118 416236315 439840265 322035881 951824458 558751096 718843484 205100110 915983154 335955372 428485516 152877119 926639242 457155522 705309644 568361688 663392008 501336888 982713188 182521174 504569529 403684583 606313671 350002643 403266511 104736113 252025209 72345064 470253943 413974156 688724997 472950201 881291596 706225160 782949582 355546226 700081864 442045243 938188611 718818947 972075861 787334226 843713230 457936844 775680208 136563627 346482096 102056913 135335662 55304404 875544442 45481086 320597189 228421296 987324758 341058009 412270667 290149556 769981941 276560110 441251439 257252341 352907114 43634908 681574746 199333120 737991301 397596084 892183506 791423641 914007040 772738715 810282716 598072981 665822736 566147996 733619658 207729421 913837471 657593328 739500316 74629341 623826898 419491802 665968985 516067253 779980263 716812262 921562699 87660786 768312522 325501328 651851482 467109692 589524528 138049182 465869309 301394239 513195848 23224876 662480083 508826170 952237968 368487251 732225101 510075723 664530056 206677673 956196739 851392646 968430022 730048287 845031454 656817299 682004473 183005310 629458895 449636436 493263674 371537969 484306812 473905977 853171852 416805248 575467312 392894676 610922393 557630946 638063601 392405831 889768254 594593387 691729474 349014720 694951647 309147233 877356701 623308592 898347875 211243240 643900595 619427831 855283795 40455455 405378895 24246909 409524676 379245405 445612284 126549821 761909407 100798050 329682188 250081966 534354239 51533927 883274238 10656808 567848755 450277313 649137540 106552516 355314916 157647166 701100247 291094189 516871167 45510710 768614898 247360292 935211964 261408683 859827989 803458985 833758329 424610473 727063185 198136504 528234291 388363542 945944418 62105599 365906984 211349416 376841476 230572430 300585626 208079558 890038965 162077997 978344776 185155002 537738748 294372333 379652109 160181176 419158720 220464237 302474548 223119773 844803483 164084468 816300771 64824001 219472339 212091843 479581843 280016221 308770467 92985414 655080576 340280416 370855300 124024648 577271545 406395575 969937944 738694101 864763838 549665048 576757168 449535701 993782828 611152825 764871997 14267514 19694814 5542287 427855732 288253689 480266712 205952846 899799667 607111080 645809333 599875432 992626971 971090716 999400768 33235245 59276979 32368271 847068855 494403111 653929491 229086073 976453308 135309091 274316642 136515849 462122999 417325848 536150021 442393619 523708989 409311384 702078202 20835952 249944295 149082009 498382896 139048107 387624941 167302845 704848276 419986939 494727763 299663594 828680688 55127377 867952106 59099955 728164086 358920937 999648801 147274768 605773291 160562576 350022123 205920669 677999322 581798804 741993240 184498117 832082167 827615495 906097666 899602388 909640120 637626827 916298492 816236985 861242879 537737893 869503040 458199676 789306321 473929986 485338316 99210982 464177053 361718142 854505618 702420719 867362829 380234584 993846635 757532900 920307734 238947118 938874308 931427314 975383707 36649022 406570038 95708455 642616048 350958162 932709831 433122657 446939737 405845753 891250919 657107756 980818837 648417993 809490339 681772684 773052770 542389975 914668486 611328994 769008124 151368294 755146777 570316311 827011042 204593020 934316534 98234894 824085536 734076963 897501984 702968853 796968389 661198963 668225185 536935387 850983366 366230581 783819422 15625703 678093354 339176168 490500623 450686756 968193079 649486977 786577026 391637680 640656614 235388698 576221394 464548027 986965003 366862771 820967280 168405386 425062388 352063612 691679925 616671294 675819755 641435750 667166934 99463168 839525471 128987067 251272883 173170216 268362834 240116607 869428766 416658937 894090318 590146700 986693949 490773103 635989947 280726381 650200371 144833030 751583557 10331156 854146748 378337110 550192266 449506670 818085372 86250154 449999206 57100271 101559166 90551174 490665832 471354030 590865223 395131236 821251215 434078602 574446947 366815733 996479560 882577922 945471757 138839324 791332101 135862867 821832207 321735186 547258219 234668696 503917464 245457527 544572984 243089995 430073338 395042811 454566702 399835334 511433842 334030536 438744241 330892320 532451339 239589964 971287013 357524699 990093811 954635088 964213872 801610250 995605309 407783481 500300711 45418830 695271638 558465929 631984053 374552737 549106828 244911781 352712685 78702991 253657188 168523512 919471961 105552742 900198467 17654437 369650953 19838531 719544727 373334320 597665867 147051929 226470021 75838428 116698820 20021258 117288984 68715419 806443072 120692000 217465943 31957341 645064084 608421642 689343141 459383581 563997066 121082845 400662830 265876096 600682306 218078569 495365482 325199031 667353820 457543321 899317906 269717410 930923710 630699205 650234052 474901920 547586358 324388020 940017441 691190065 712605107 333333699 450674542 172935258 886371346 621933191 696582950 497006384 712464619 326141192 539669530 121842693 138649275 8030694 700687504 686622031 758828119 516677859 605068232 527368745 975898910 334843201 412550924 166042121 802677545 642008533 879843447 53313035 411569531 174380211 237082868 213467719 398252236 349565807 848408754 603423803 635092343 478296429 732300014 555080082 967713850 400068634 450711976 302389619 532256417 12142481 35269618 31998362 785532441 438117402 698938470 58913834 809410568 660369737 897469769 378854506 727795752 644723602 749863129 190260247 499861754 365455938 409209155 353648553 671563143 527834852 672728658 305293763 760985581 460299184 945141194 697948774 779697777 213918101 905260682 683170602 941261949 608669554 698990992 647946252 861345956 277617590 821250213 581434776 607213489 283152907 649172507 128803281 563904485 2076042 29460189 20507556 32242626 26711458 673741989 258828798 327179068 42112648 884655471 106860045 574733582 208105022 368689144 96739858 456069092 362817622 932136529 473187097 538615071 368876216 664714025 239010604 277971072 103601193 692751731 85879749 438393413 257287779 598430310 156506525 532377998 16390911 190286643 102537604 830162850 556696644 723991706 495003908 914670605 625131746 806088557 396068098 778378692 360951188 424566858 38851250 469073332 370160210 704373380 55582345 325878374 297941578 633490735 301581919 568307319 517164596 970897902 33862323 106422554 74603659 214832010 28970991 70403578 34592718 618468546 108595207 482331568 455059538 534998270 440406812 570646872 312721855 336608942 310470342 593593953 3639165 76500677 72363321 230310286 143194068 974325715 579522711 742145774 545147465 755368085 33318448 724460365 561452534 969335550 669892078 919563701 188725993 472262574 186174333 399092054 183557293 693789797 626288934 928805212 280868469 445337973 213423585 810941054 465084200 884865720 388379718 716204291 69796016 808378588 177200312 571487391 201358726 878201669 59096186 719157320 545744038 909074078 726318219 877236245 786574154 819866525 589859675 780999523 454717001 702189494 238151142 802359918 337204035 792186587 252890474 741293599 467856100 719260360 185641016 423754944 67634004 129348657 53807368 496010210 36516066 856542375 780171526 861687723 565866043 617109257 96933467 153758984 23856636 941291860 681600267 912964968 17128786 285047982 156228214 412070183 305323553 984052454 121100047 462461838 133028621 677793184 204661742 826838878 247817926 844524728 194637088 952118213 380997432 427533118 353329758 688712881 158275878 626237230 443345409 659925654 504793274 978747005 778493645 832125445 606861219 721954251 434422337 607374596 206805794 835348975 188839173 874094655 873046991 922503436 600545820 991243515 178799055 370051630 92260785 536405880 263041273 625610357 108230363 852416571 469325123 616791900 540472391 960018158 639732015 699835781 493792174 873582226 715503470 875170731 651635563 999736474 719060058 843247863 46149367 154556104 50954563 785344998 159280475 720700205 128333421 606690589 287447098 570541488 462152029 536686713 396773942 542077235 339421487 787291969 777088611 966616690 114276264 564169164 124072733 806726009 67431856 949688926 172954802 823268735 610945840 784217633 62003651 532633600 195083440 599481114 441752980 946579180 473553804 977949396 209443459 699460792 255389007 549799778 265243639 822337557 707734062 879824009 169754190 685794828 334650687 561121195 239649085 457878428 76465118 933514324 803649818 963728898 961817168 986207316 416272064 446931032 69074313 360195990 75442464 895990469 693328215 861652346 55789593 330268360 319391169 792943463 694441921 977474556 613514333 912248169 488441108 977724806 789698698 836613735 279894907 801393632 124272592 959850447 153752550 876376244 16863852 738241024 229633443 834538494 407452330 756139410 570231108 750975290 408622421 857765384 275086768 744103193 606300290 993388582 991266947 994283336 723858434 838223203 9061161 28947877 8641861 806521529 303498781 779057943 589512344 805774042 102630372 763746882 442828779 667933463 213278955 604894027 255069372 725260801 280470665 570501789 35900332 919828698 346271257 705236280 304579001 542037395 244716419 826943373 581701089 759227980 578047411 989627248 300811901 480439695 9967346 338692373 66646368 367157656 179207165 415561878 156152801 966290453 349564348 897406170 670753457 848691389 838985592 906510145 294783918 840438883 142797484 833598226 119161085 830984285 365003848 741749097 465569284 827029011 261509132 543744524 238021098 486557612 419842252 869701944 793752559 841351322 655871612 684164516 665317655 975868763 914414382 915422346 420055719 580517846 185908173 895198010 255065345 550437948 246247452 416005497 70125335 296121270 144365628 561038076 361953455 654677358 70131253 901200217 99010788 206657021 132763056 345473026 174958386 520682055 149783339 671330158 339928045 799249932 698623409 956306241 462354788 703294620 297789007 392632812 2475778 542702333 199331608 494705420 185298519 573270062 408922708 522121444 325692719 597782210 126551652 296869913 224730368 571267219 368269214 859087674 237829972 820350134 555809690 930670402 298430766 490456980 157849117 380398477 19705834 154866146 154449505 653624844 644328246 697976252 495805103 749591668 666888508 733279019 164158840 562102104 181639939 710829979 556122487 579167482 439582608 712544281 303987054 735851426 301942020 423141911 214085180 742679433 333793417 809994382 470804233 940320373 721881939 996555577 166773146 604773522 160155091 184082458 173902250 959094284 788937237 874783190 390119599 395511071 212935317 264656212 1586870 424147558 349753151 426641260 347020959 661663579 147987363 861405232 516589692 547648754 20396172 112192682 95993715 227179118 106856557 543014115 407160004 504121823 123269077 962649064 584790503 609478952 604253447 822649894 236615527 349609331 170948551 325414806 187200620 269120113 267055817 411933687 411246619 665260679 303874463 860411971 548884383 630245760 540265530 943476324 652429849 849581757 64349668 140497234 52712928 698950129 241866075 422684819 134437158 175878253 136074563 921504706 267965832 452068397 362081295 920773084 232280369 896321258 563463104 890706525 610726622 619908298 128931342 129952155 94176171 176820289 108254487 307945743 76854938 735189513 433934085 740806683 428292003 563942746 162852988 423640866 287622506 836499426 294147134 551735833 379168487 623035848 155454206 290634792 77636066 578250334 109229950 468813870 72165289 486873424 410012117 721727343 349712838 685346748 420550252 981822312 260007364 306969300 197570600 809523856 228880462 956750862 358547267 888229158 875458632 971454506 3472846 295604350 63332382 701319306 275504258 792674027 510890532 575814447 269606728 556235549 218658898 939408409 513185903 867802274 95972048 345323003 292789104 410836650 236782725 364857284 265240836 785352510 413481487 706420337 24819955 571750842 452268143 920797611 394738843 899208180 569872609 676930703 308803266 736693794 311409397 825714906 173342341 411325342 21258152 794510173 49048418 986401729 294039579 661375706 626975251 780415400 559756065 978082619 425136596 449654724 198500940 239244637 36714645 55984322 30919632 949987031 631677457 660930269 162560074 501048352 385680014 876499985 397543452 442107162 304322983 791762640 327954957 731540366 322142539 633746322 126029158 136002165 19844186 833376393 333267758 526882699 32670780 184485488 118684843 852484346 273960106 568537791 157652334 244703336 77163790 637849108 414176560 571645928 437815029 894210711 676898413 827728656 259721410 466010645 192285686 261156272 13325518 640458030 324035043 598113341 324946901 474358202 91983878 472006602 115841740 296512101 270373815 367074119 125354764 226157329 159271128 867999640 549800987 923142612 102736868 310019157 90564768 503233204 106075765 275413291 21536287 561667565 485233826 515928997 70042313 268055213 240347413 484157718 265014334 322930738 226520984 862932652 156489812 910787981 599799917 992068600 121859556 663121208 242053085 344267158 277711862 582402721 392412918 885611196 615571715 714390086 503232006 828663795 125206900 444258014 212951059 483557970 421034777 785234032 774870965 938675412 784782198 859016069 20636008 928206358 432173745 624893132 373085382 753922819 455583090 627883647 597870114 620663494 69962453 199512951 118346061 420752613 373951795 936279757 341611427 553631135 297653609 898066397 697897291 973517579 17855887 310286157 162128139 352312628 273510122 690076866 162249699 824075542 541033497 695185918 265672280 305058563 275144052 930014663 424488777 848949350 588615632 832449055 271333991 593570033 483683083 679143503 332285733 420523543 124555958 816076465 331276815 459277787 45181960 533116754 390560526 908990859 586700092 713036929 12770477 575172003 183048794 483351108 405678244 618373621 547942922 750588246 687102826 842759818 713286473 937869702 514618419 798460243 488036090 658090488 626215741 633922533 623706529 848332853 473512309 946215150 138913122 438383666 11156160 784880385 11075976 750300972 464698586 732176061 397806075 685496004 7902961 393791833 380382749 698112880 103641284 989813781 780302561 789520509 463694649 643581480 305885696 677295030 579807014 783717472 109030258 904954737 825628288 920016959 127930732 324347369 33266831 681955380 446654168 704991567 114748946 759891670 450100569 482995276 447297102 902319567 507009452 527362192 72353526 394373025 146205536 439289431 395739529 710937654 29488835 637722159 376940605 904117214 448886707 808802013 248699949 830807426 253662234 736326905 438604393 509420807 272002281 641999480 557036102 847085924 121217081 191818600 47093182 180045418 16456024 342697931 37074506 70000880 18003215 36872411 28207288 724193238 602813418 618342254 120429090 218686874 136860874 386057363 263944728 660622486 174807728 574628308 114557496 188442313 183979900 890808195 87596929 949907659 643129066 681308403 262079263 545649152 362976689 497902207 443064392 967332959 757317382 808520083 620165552 885036533 47391647 760235003 211336998 986292814 473556229 880581325 381913433 417349365 254532565 617871301 573300447 889281730 259051506 310008889 123595532 615317603 44562294 698566890 27779355 777659490 604021896 839623950 784621746 833451682 194117358 805944383 474135060 541855473 59813288 104561333 41098933 543673537 15144742 26377319 19842709 74008862 41490656 575373121 428313261 615252494 152881724 806454590 436346812 945183059 728569000 922199143 38226637 477975701 266543441 872611459 248186536 887710112 869769143 882191526 39994759 716480928 299322749 853872695 853024351 985139185 581439637 686349470 681086756 833362901 702624667 924093463 88391478 665357752 454761189 729251849 594681603 944955150 924316815 929579890 210583195 216236643 123337128 999420929 924160149 965538681 539687465 627766039 520143128 793298300 416564553 951522788 617628693 946144187 354521498 966394602 47626227 453241000 23724708 24362669 5341404 117052977 72324989 492347276 435184115 934786200 124714420 656413859 303705803 668407627 381491691 896913610 663032781 896881363 502479422 824816536 139887596 737901002 445119534 710087216 644670742 659054866 344530255 867124208 525935020 692108982 214385723 448600385 120294900 690555118 150862414 696486886 687447326 935341099 110904683 666422707 307123322 666544281 558782410 794515120 297678958 566918194 521880595 757699735 396670566 742451427 269143663 814696348 431040708 909439905 603116121 775762267 225922710 352289702 134394686 276462461 203500896 509542596 152174989 178297405 54340806 481731282 440438375 812892401 149676962 590499736 241667152 568453521 329991989 590861786 368805373 904109405 540617138 988349445 67304731 882452964 359567039 941418537 753776640 953963538 503232944 949574873 391275988 748682460 218898844 823772206 800676696 905148122 13066868 892486029 574346536 899476478 886632477 976306578 40056881 673538183 568479249 939615057 515852204 649777565 362281947 804231282 289846188 538510107 312886515 616527199 157054735 493275599 193355814 373976392 206476615 499150187 310958905 991822053 976684426 985776544 613631804 715422988 460573900 608344983 273982656 729312940 397276018 788414938 595579492 631700229 516901794 575875058 119364041 883616569 748318556 920006614 505207844 551228853 214686053 560972112 162835437 615005522 591759862 677814892 465426329 934847724 663798040 922070136 480867960 974557393 759909443 887917235 301210228 626490556 157781549 569249235 138312915 350117634 161558345 253588358 239520580 907268999 888225108 891924142 206448989 689634425 371919380 470852704 278865828 757879964 250857027 381162900 148102643 725023310 13028902 27355196 3332684 692942525 486624298 789977462 23006077 538476365 462661479 806760308 235405003 666725974 454348483 797776606 666129079 809527983 585101029 928889312 663710370 909484910 349515876 996509163 465836185 626652377 546634517 790572432 90023289 260193943 166097170 493034849 139902727 185525065 143995719 203861124 176460172 969413188 900500762 934611509 903348042 955142152 342477280 816875968 424949400 973934997 39976946 549449124 493532395 946291527 701727626 879311751 876082416 973359249 203484893 227575472 133803144 324516696 99646981 734752420 167185833 920547093 328244886 721332498 429155913 534318422 311338580 366610385 2176497 500552913 327406486 354097468 69858372 526655889 442457718 852850192 367642350 596380273 70455485 370478733 366219420 580543788 373962420 729868761 315937301 584932999 103776850 768690164 175004174 567029698 60834968 90576339 68502615 392078929 92446917 953685220 398600456 543769859 209322309 941161492 554702840 645918315 451689455 993295730 713854465 953323584 322767121 917400951 313290626 548529854 208480407 628110499 103968101 734548725 290824229 740829727 378954458 760027315 381096569 974276651 543141192 657761887 46656365 235263817 169774469 328396510 14652862 50733241 32991707 438625508 386438165 602155455 439279035 827453066 821367200 840838221 101067218 836923319 733419893 992635333 849184370 910194274 150515937 461080795 402326924 774822424 127643481 206940449 20829167 687932544 374725843 676753428 64318352 102204839 58671560 892774392 345702389 557138771 397965403 857776514 651242913 815318134 495936575 657171560 130925029 441495721 335207677 566242307 511714774 534629296 411405233 434195682 327358262 689228905 350454634 753330119 538672167 724304782 199949623 962504161 682177041 733403213 648692215 871940712 743367565 981006469 502254256 945551924 805761316 896676057 437782893 960656662 257204183 556825297 68528238 541353822 356174601 513112811 349323383 599235755 344310877 927678201 345903301 582193682 21019179 427901957 411020150 854001213 351750040 519344511 46757024 756161338 751419554 892320659 172850960 753900746 481034885 872875652 160931863 718202202 26508675 617048941 471442895 785691512 694003787 808027905 743433312 967787334 697712450 901766825 180443772 354856066 231718943 641466973 465635859 886264088 53372434 137609399 122171371 230483119 48986590 276989232 260919148 702414026 358313274 504712120 421347697 787085729 290905765 634717648 609863481 658080176 118201515 437121755 172687975 789539505 525201607 567610474 186119464 388083876 1607966 520613132 34546395 776659322 131884207 382902947 327007076 376671485 86063446 122056119 30947602 598577349 227261405 326843258 214857669 462012774 99908890 560366375 183795128 705819969 256470134 960414986 632945939 963194188 168723770 908919946 706715111 970201213 467990920 708904967 570248934 915574582 834195617 977647071 931556830 993720205 611325687 829210212 256354173 491251798 250759436 965821057 625160679 960992285 248709238 856182863 650022314 700720500 141829338 314828132 30323189 653951944 465293858 998811678 605578788 705889750 514450571 917778929 626785631 842646135 371313005 840445875 321104096 989186094 612783063 710799315 603882938 697020298 239756658 654657014 200707256 879160717 322342021 811035580 45454358 387177026 319225677 961063637 693341850 827233179 288786843 487950407 308585247 660054628 157518287 445958430 411147301 894842899 240474791 745713722 365850467 449394571 331865679 889231159 550710482 628788183 496696384 824788511 580028815 757221755 714370577 811312576 787061436 993241630 832219172 904286683 542403237 820526944 782131079 785970403 252346218 358215755 311988901 528629918 77281998 342085584 141335134 471768909 348186956 544203919 136182079 161734511 697789 84916056 57283069 586973486 19765700 362549206 305567728 357835745 61624653 846357736 299056962 490598869 475427572 671675202 379664931 407308346 168457042 310257004 23707097 697206038 333703073 374576189 194000076 462562105 214233259 737614137 212434727 533914663 146790521 437917913 9391302 222219477 25294993 690859611 69056984 113170501 111607425 853325142 534004454 988945477 680719836 908848109 460356064 916278064 528412566 603972168 243257931 994179911 502610595 979623952 379778408 468179720 53632703 848779449 159671222 477759950 158416078 221000315 92062876 742330483 277938277 721476363 689163378 933028809 794383472 966324157 420443549 779930207 389006297 765366164 549044916 635137151 159159906 617563326 14040565 777371252 748173056 789545403 148542662 841404765 782020122 927930367 428379866 655922108 374846941 788875333 663067757 851059610 585177436 588065715 74414751 519272517 419436488 944069135 661505482 999191648 853551374 856074872 402933622 454947671 130691776 847489092 704087763 786920602 635463241 729771249 220614117 744716268 373614324 383626846 58816329 617606542 430465291 432696072 397245972 645740196 96302056 276581936 154144233 183523111 92843916 340774680 169789909 791101490 597318233 898966495 35968609 336430897 91701956 729329553 2604419 349146424 307123250 999273356 209718668 370266330 88623420 684836511 308696534 676629819 368335583 642080549 99401325 118308332 34902074 93590659 63454881 821226884 11847799 45210823 27867794 603066426 362849098 705481857 459537607 659720231 240508641 423282876 296154950 659999241 109030969 620257001 137251828 420251550 153179734 807659883 262124885 580537695 242541507 393504514 31778198 986628659 574940319 679787487 645908896 771549468 419023997 934812336 278047964 510507578 110300511 885155220 121601083 793074013 292935148 693938695 545026944 912520258 46990674 988350534 966502923 982316406 607709514 649144932 81789691 235398562 10795290 471904843 385290518 768650674 745316018 904578647 667768642 702263949 170311680 767005326 599025053 802171195 593638044 701688492 450218189 499732500 174755053 579801397 116520440 987420432 593971170 894672451 499274224 501245737 240482189 456475971 419807355 511225387 364678017 620840738 187572418 248440746 155612370 301340361 100335959 941233887 739603417 835602110 750472380 778706560 11214192 194583446 152760995 471501968 377482141 653522908 356389070 687922421 316614324 734025548 467414144 622664099 570529207 676700085 653905240 935919017 51460681 465847903 60799443 368468020 30450259 941259849 38291139 182566459 134382363 840986489 782926179 868451169 795052739 996148961 938683301 974215022 465551932 709340488 629387717 836858563 651103365 688468504 498985159 580182406 225249567 971843409 185187847 657291952 399288300 541639930 412080184 440428889 387933157 956187443 784850957 940615194 212199621 400081837 141859890 854111192 646710992 855673728 432359425 841626116 63410557 985603620 337429780 865269853 201671406 869911413 572490667 868509382 446423263 669158714 517982555 941604779 430082720 664062503 400564669 812855148 677429207 701963096 562581460 787741889 318049627 522188216 287126385 417326864 90835274 280800025 87676426 503468351 498690705 577551111 390317770 896251494 268138876 724564673 35798592 744740660 420660091 565230188 174225031 730362116 127243584 240672944 220672011 643177670 65042938 94405457 61191828 495538508 72674960 226129901 154398790 816956521 166910361 289685691 275132686 748298633 306997441 519849755 392937370 605557244 396908123 500751662 163435855 603699660 382490163 667621502 36465833 358097458 219191071 327806755 125068264 400804778 113110487 150509984 7779561 157576923 34516366 555085060 446340369 664346381 191114335 959647473 251420333 990711653 398207193 406176401 82629829 566263908 204874648 888208506 175182822 835257538 544256463 766345439 268657663 757982171 639910607 907726393 728542462 917837847 218777867 765297353 19915021 168267247 5353656 282636253 56151837 577925155 205058941 509827490 473188969 734475008 453642853 750673585 432115186 883000605 13472169 119271288 46472370 393537165 286304148 691875949 122772062 236846335 73270116 795727547 795115612 892797743 375613183 855549979 160388502 971500894 611601098 969214962 664191760 718655643 952359 695843232 376683273 643233946 214140373 608419783 34847992 743461398 654549376 782627338 484252131 522856933 475021760 722574861 627432230 871201270 124100143 700123167 646326494 906297113 873763318 919591293 341150230 975607863 57107786 346169619 35882891 977176763 248264643 840217670 719179702 959931991 448202735 665083581 340814765 417890758 300001706 704956248 58663703 720283739 430553372 564368873 201663622 821442837 176057060 642523975 476699500 503900348 144602981 541611181 413146971 765326176 216129581 663542096 505641665 644956387 167352286 875949929 661424144 796138925 394414126 554761921 449708759 938605535 590189322 658249242 36647561 86862744 78678054 482139026 46106458 322667869 78043183 394883795 311630765 811844751 407756884 531185649 339049405 889237146 61217461 428665400 413520618 702330920 671414349 911273458 172978888 706823450 622950300 805477490 686066202 783327211 776194181 996978389 340226054 649403844 443997904 846431870 278457940 740602941 50656089 323699761 273142850 462930217 236884992 635811176 575821541 771686742 508368806 875445626 839456309 885223674 865289874 974937296 178170370 255350770 89506541 285752021 39425320 257369224 154317315 196389822 7402437 394700345 310100377 473060956 57184227 605498837 118413707 914411055 197866748 712005182 251480073 845948785 721278616 759064516 186641762 261062469 55652379 579909788 472108727 698260068 646216343 665866769 288514259 662451515 329567427 877240717 863514854 898201048 111601293 254779455 244142802 950728388 596043167 989313857 869356397 872807386 14541007 840038396 115781857 853970904 252622484 572510163 159427677 916282919 272920832 765709662 265019435 585145405 218736973 323782394 302068789 710938948 412637827 743124586 669646402 798069056 606965296 951486056 939271821 987292557 855560205 906561676 232340352 276372387 167024285 540309062 382712862 434899482 34268425 953634616 381199806 721423242 292302090 827133179 806978114 971674160 193906072 748394360 410640094 572676960 442119431 675627315 572843573 742188496 84952376 385478559 81241133 972297239 768119197 905774358 461615059 813258438 623961226 943887740 576863079 982813864 283861305 525964676 374267291 452070125 42330462 395756458 221852763 763611681 286721628 672445952 113163936 957843256 864555425 999315510 238395067 463465741 311566824 335714824 222761585 852282913 595848466 805431354 363312834 817938428 48197638 786458027 471122096 682073821 620102789 765600835 163668240 405445804 217469629 287474471 72162387 227053937 9967007 676960058 58611708 341405267 114225386 604009380 16783022 887479572 815441689 869378890 334068227 830501159 519631295 744952963 165414168 353440579 236328737 665944486 659782225 689030379 355636377 578285233 226233645 427759976 259059045 943190325 196152918 237344974 125290233 258234020 34884331 487805334 293419500 762183284 144545783 979502883 645401036 951362403 470773315 719730618 652553803 691520371 452746825 757831374 81420423 743083052 651897161 852663096 412739920 496605256 236253730 553387751 11429635 311956412 110830121 805521525 384542955 530944518 205914854 666202600 273869570 689976142 54664293 833748854 501749000 601951409 386543583 986925883 963407740 980791938 603299481 854609350 587607955 920262644 90591584 419485720 229451362 408641387 382079272 858267449 555074062 954944309 639873568 864000559 265577251 895841980 510799209 892480306 753220439 875470139 570380033 764441720 58676159 748466506 609043658 848912781 785351342 911864148 839280932 918398047 25752550 362240794 174335457 383644235 216394784 765623107 12191593 534817456 80558510 418418903 275913929 473219266 219329181 921889635 803456573 904871626 67192213 951761113 906700580 946199269 305459769 567672696 558127888 875275136 124312066 339632609 297516873 811936885 373435467 434654836 184994313 358057165 200995881 642963844 556893027 647809787 67666875 763044695 144863552 182766545 137660220 681589271 424186536 891383551 805322559 905220450 778008478 952256518 925996330 936663545 317679266 750221090 7985484 916466179 512713172 552564683 514651531 748946127 531281598 799723879 679434800 921460506 833101402 882045082 41425038 165020988 62853203 832382919 208672450 617399968 265599485 435064091 188041623 298817288 161108697 567027349 371567568 644168569 265065632 418150710 19035378 441438066 413038097 625552148 360063420 826528986 437511666 535653890 38345971 520225749 50006651 970922028 492151456 777476803 626099213 726975583 314272850 866937428 440634682 897859055 215814682 413318628 70020191 798619540 394091493 667671469 278697285 778096799 386280445 795578250 364540830 901213679 32295225 576425362 39294479 304711056 259522679 337507912 308338302 644983097 462694646 987620596 456261553 951425200 582573611 968049026 376995893 598741642 387388716 696431151 295263162 929516701 593689417 984315668 227239612 667634925 510531264 601494437 157222418 916310089 853718568 919099535 60328198 654790026 205455423 619172665 422981864 509027273 18980312 684790453 555228945 833798433 610566352 613116231 284212409 731438141 288870874 300777908 4559947 114738694 111938019 543443738 159494708 607087639 471492135 916301525 290286298 947591969 13723824 177470436 10859929 753514959 151337065 337771916 95870390 863525103 158388714 493140021 214312226 277451213 107514415 524795091 253872142 657352874 615428373 625703178 342526395 500840708 193042919 526161565 189452043 689325683 655835861 746555320 377313713 415344013 287192262 856294855 317495056 455842262 192860406 443844821 366603773 603806556 322581350 891211831 479769910 486806031 260717087 349080011 164285028 599299392 267033818 936060906 583095020 738312873 423935053 803162061 61326100 675374130 222679276 679112666 69149091 925134721 876804278 979946017 734366572 930861643 849796913 988702824 12451181 438595445 163903551 794786931 728704924 827486415 342702807 715942940 248431585 450174688 146060806 559535500 152782743 179118559 169805289 823229229 740653202 816221117 339929715 655973381 232231412 563968833 174302059 807649569 704982633 760142314 421828920 722851607 299127300 379568009 44551715 131668317 45833047 496003169 138560413 311634723 40128376 804838188 613977205 638925539 459612022 623469005 67487412 963353951 875308047 922341002 492436821 847367897 676415530 787994367 557981954 981862077 713422810 716780448 505652095 609461100 212459314 424325414 99942943 125618858 11366799 349659603 31744155 257727092 144609972 310603702 250837580 971740108 678627525 987067666 18022200 95255692 83856566 357404830 2213442 433091572 208793326 227697249 90261903 566424212 125428835 642543506 474912321 898776354 210277173 525066192 346852096 718478071 416912169 830667249 300756553 962404591 594118578 903676776 863628480 953864442 480248298 908808387 505800364 913785345 174150082 949305801 588488686 958342641 570320803 724062501 220231505 237273888 47121299 987133272 981810289 996213549 245295517 576848098 6057752 335141121 180210604 674288777 557501381 816574202 26302253 931940121 427963851 845438204 66857684 336343725 63480295 321882261 234196142 259897274 633382 859541555 251524185 839438384 607068659 655844798 209796156 419288442 302257732 812891635 697971130 925648453 72915128 400742293 121269220 530360047 321163922 365861513 365252493 850828234 212595902 922643053 752942861 783044965 672822694 713896747 350775985 913339830 884505486 910747569 618989819 827006441 179737809 196105792 113146418 448300585 205313086 945146944 900866373 961618053 35761733 831807109 743320568 959070912 821845442 910225097 487559497 768246059 76248124 777803779 674018913 763376698 225915537 633792910 513233223 664671144 624342629 843764671 663009772 797760515 299276403 815585829 30653485 726760697 203373208 295092166 175293506 447098679 148715566 348523669 130716163 810340545 712033865 957487816 18803344 306218639 212750942 513493078 351857603 353343666 328097464 802024750 799066590 838081421 278083405 710065429 315945689 407918460 44578035 422737599 297389743 628650616 91419762 740961652 367774124 460462068 338690875 391686490 234785579 258704056 132585463 349175421 233538926 356128680 231228285 582475259 140030530 285917441 144733074 618978874 68323818 856905292 853580067 887204736 528651838 681041794 396058768 922666479 473311775 743941468 61627586 976974685 341141663 535100599 220761812 600915590 132875552 891333959 705153079 977316342 661126642 667594216 132347576 572777698 179164094 278329667 252481172 875684868 63673432 621000571 29671680 884320469 545144064 913733292 95451247 411901821 164072287 590415710 125626274 697938237 17199206 904312019 163604361 378089758 314249604 815163146 594310573 839205751 121501442 776611725 203360498 257023338 91875482 536519542 503554805 913811809 807913619 989447965 280638981 597787424 185140453 200416754 157763501 225812561 134584404 353529252 121662386 427146225 89785000 619919341 462222744 932228301 762910228 922860196 521933892 716901294 419138817 860828082 808756224 864960083 484075967 681151237 579014150 838496456 113120208 697955490 372349745 972625389 795254754 897823919 137577025 807529722 49845187 420044588 196646797 542052690 267940228 726997220 4216070 659496107 332513946 457249644 397267209 686192130 51955135 553382561 399857657 544515016 133410034 425604452 398402780 599960009 351790369 873334217 170334874 603257623 506956592 935114541 539395497 701055892 56395138 758861720 515012638 570898337 492514656 836663660 121384957 576438587 368139156 676903350 98174143 524908924 225465912 653080642 250474677 678292746 166270939 872972349 671639897 690657212 240380644 469799928 44985807 272376528 227759897 620747144 152695310 191419976 111754503 556279192 518914267 833752042 110372890 288432190 213883419 240761521 200533354 858898059 540261901 706349050 510652695 764625311 536293212 651452072 366760322 917368806 112958532 297244360 200970213 575687953 96448649 467406822 214327757 950141650 893348792 909917259 15557165 842114838 69648583 584075233 545770161 849226144 49210415 668359064 550336562 769006106 49727751 396290396 212783570 570946223 238979508 487498462 379465939 832539807 698776891 747358624 342236056 831858081 299789551 417065238 43179994 543160419 505714902 600589895 224164572 878473486 677076709 694284725 325765471 362547623 7382837 774038378 65770561 606151656 293505157 315078085 165365974 469424075 55213127 496035982 72759354 235501092 208896597 642499845 605004211 762238665 3570978 344127638 185131745 621970901 306916422 916176697 40420587 656750921 222084460 410095613 118676951 413455098 334959555 892811111 534625498 825557348 133181885 339144413 187579300 727980724 49999704 608791220 15779208 225673151 153657056 395558758 282920088 501103908 358470441 545961942 27791904 441791428 170670829 468731455 212807230 678629749 78107925 709442927 509171577 922737629 858159760 962874393 674193398 779521455 565044275 766572095 267423337 826519106 582503587 979463714 968795519 994025682 295408224 998928272 387981457 572489868 476170316 991805469 153434894 283079170 76729157 106013294 52019391 68177298 38150667 823959280 417849122 663226504 59389395 127554397 67039939 820284793 290680724 746353732 310596503 378855795 186789194 350505405 71871869 671307174 92134679 311851869 51736924 329616696 306628227 803801888 286740735 426021429 357437581 501211705 304069137 695298810 509042627 840885849 252352581 762023103 84165458 596370513 382148076 829487968 471031604 618740383 608099316 917100739 92878490 738981531 194999922 986026201 498611814 800791701 35747383 920705243 481543948 494959065 158016548 166208213 152225469 719271455 43297873 972197800 724388607 821842284 548080221 684294052 417910561 543899748 187841827 629781578 445176591 812071293 676108546 706780732 130523292 584575621 329987762 968745380 494228038 779780079 158854806 756112193 611562157 810744168 8022318 915331269 380014758 732682328 141991992 806557880 466777241 799277010 177526249 510885586 164411328 705808939 22694782 702475084 493047799 660320890 653779762 717846018 316614586 638330187 505955054 603146978 56818555 589278409 413498886 615736411 538186511 826829950 675635338 804474455 783250232 787012369 600917063 648444070 544546293 895034006 17592065 976754277 947739847 959392444 852657298 882762151 523199273 645578984 620712351 929862126 549994319 909690711 630416506 699209326 635600684 767297789 276211057 755535285 60485350 458533190 345146784 629153168 590847613 698187713 684714562 724286207 232652274 489208850 391416551 749089097 178021842 233660452 17825264 365515275 178751957 971951406 79135186 908584640 259556585 366106296 254552321 500639367 28749647 214303456 96278639 655142149 103996811 341453052 181190908 764837371 390971697 997071676 94831092 471219393 61853880 936163703 173145849 517513643 121757969 542919875 106563439 575659061 380628745 606796958 569701347 983080973 433144837 923863394 159608174 311128690 244856790 386489830 83362134 820353224 390505465 884616861 615927202 905862386 608106434 779596839 238243420 313705853 62967448 888760815 490026191 519562305 173066058 209222369 155238416 473073802 420925765 667717432 485494381 955226368 299223434 600015167 183269500 503144442 210437302 480083841 448078045 649793276 649492098 719699177 542569940 996447298 537944226 982270198 285463727 779944747 660631292 750984856 280677215 283214535 249259102 308596844 293215421 412084366 183277682 556694152 28376139 721119958 55216091 681763870 365666678 842763072 224293556 968208662 566279224 972698411 663255493 768456593 497036377 511233575 25508625 160987680 109265396 806546181 221120927 331165660 8873646 762114113 712307863 968557753 755405793 858177465 170155073 483674466 233296509 535598369 267991133 303091591 195222408 491994030 440695230 649531835 300589932 505268047 417817921 893008331 538370140 681237677 95782323 136019565 31292189 497418296 22475857 246032918 77496184 729968225 660501790 774056180 130736785 490981093 188978929 502071888 253975161 552977531 298824058 416408715 287976553 674917727 322583054 672031018 466122676 902060036 603512144 874742616 474101981 561088587 364626484 963338308 869871363 990853077 34095839 416761868 136474482 670522915 327354400 599204147 60957970 709166985 420072140 699388055 390520974 669922309 643377040 966473952 457732800 630138028 571353584 932053498 322071740 651812873 341127251 546404128 339325674 908711360 582598583 992054439 76620647 237593565 191509988 954525923 218854838 476237918 28825480 862458734 486991686 716688159 136330582 920672789 638475029 758702511 447528357 938462282 18532249 287383901 78563068 597762172 113180802 369729697 129808159 707384806 74614741 343753029 191937488 664960328 595444252 768048772 240378392 675763196 383892239 700595380 5996764 10770327 7698931 517735516 301170417 652684365 173879892 670479404 513009984 718506226 242500158 257792396 202461412 940709897 730628425 763365996 523957038 935104864 397142803 517644973 363363293 615508188 550107407 752627949 30329754 107643278 42905298 493488692 155474106 401985310 22760824 549822783 526639815 905695100 655367447 864025479 116508713 538970488 108084975 535981293 11698805 787580993 706779942 741318905 65331238 452547675 219028231 700100737 478599344 571009790 533430280 962303576 869113623 880775233 533086002 895538369 59855971 593654353 489217605 901262383 625747433 692884816 218376233 486402572 379669261 470461861 350101367 625893715 360108947 373338272 270640573 977616236 436684747 548111630 312001972 844128544 266463030 970866228 5652264 736937291 347143740 719655125 411983742 490214924 265899820 313416178 249181255 806430829 787652873 996696743 764700671 785511120 452330323 919481581 545379967 782294867 740821638 804198981 98485435 262364136 26642707 864893190 100631038 726763964 172317196 510197235 100040735 681757665 646601844 886314920 656543233 733890419 522155767 658759206 387436216 595131728 438024332 651783363 284585315 475976420 77439730 724015416 629776404 657289585 440995141 601898620 254345225 776638302 733232782 806526797 66402981 355052289 87126221 853647658 85075788 302457291 24422509 34904448 24900568 362089606 213984436 458744253 52242989 904286329 181952246 249291905 191454711 879967031 626616272 690438583 298530286 603971147 566480296 718847251 147016327 165147926 6191049 521684702 274778131 654257241 249515264 949809621 742733154 801073386 281134122 971010356 777255259 880173120 378352567 485630845 220371659 533470223 68901741 830510921 479286733 937505978 518832800 928028844 249478265 687095400 281119738 577960734 22808311 611080326 65435687 448452984 371181864 822054575 612169764 880621030 217978920 268907259 140571714 449786418 220804553 866797698 251672485 419586871 269296564 822336510 568130938 579597829 47168367 692059085 96771442 523617672 379177002 409216395 92513180 543405474 220396652 589804405 295341723 478683792 336149858 400821845 33829415 165176841 142987360 734556216 660157344 910578563 894339030 958048591 373259058 625928217 625380197 718522278 121636019 772509439 223720455 419196771 74183620 405863240 9637408 360918496 307636702 901152570 875995177 882508546 665183947 786623223 459498736 605212322 79061428 462681160 244761837 716117067 434033041 559347380 507910021 868002796 406200100 716351491 18835779 475130051 221582647 484721825 56886729 664643265 443167046 891180143 420699278 701260499 567211622 669227035 198925065 643084455 430901065 639756869 588402316 984866013 71766043 426742002 311661707 605271859 106823951 848193818 818323164 872213248 174439892 781863750 419320452 545624202 503227057 967340169 503212907 610576069 146139896 647513011 411013527 557124180 44330002 119076433 86287535 396490123 148526064 311667149 83767837 422573847 34690545 775035282 529205626 749666436 397367436 557886184 48990145 361924084 41335826 891587348 476726254 664352771 88759358 953796379 370712996 554235316 427636480 674901965 1457544 759473838 345909172 654478309 533825976 656711447 210724693 871288344 316851869 944563139 922244008 957223624 815589636 882029940 21013166 906136395 871767999 912082526 809039106 890519000 522173092 790627867 156211250 544300168 214091283 717500729 15148478 513301017 14363357 904230961 222784068 235469514 170090491 238326335 195555331 524069145 182348463 286011697 165853489 730707781 56205063 826269196 114354325 716773727 193368101 929108915 918025600 989133726 477279910 574404092 457632491 644967182 482899751 855929857 184347703 191672652 173039054 323068641 56023299 826959246 503437784 625718673 406446245 927356218 139582344 967636559 245787917 705827133 104136333 697710310 371234177 581131403 165094260 732669638 433323234 757679729 29654817 519037446 262028468 792989707 464803248 570753026 319800231 914116674 492287002 949924215 634109176 827023711 722121218 847932143 495834297 819454102 50644560 118210878 23632658 359174938 107856799 307286978 198485867 361822676 120237054 333433765 185639000 739656266 496560783 759771325 81631545 614720153 157827851 459237661 9100509 251831932 55731276 122400563 28442522 614610270 443187441 799042091 517144796 524247402 59609064 405433966 376463035 436270262 78960428 248902302 108529849 193581002 28883731 746202622 57966494 522618659 277419489 930989148 457635433 506589678 364424478 518850008 352062190 610608505 322031311 791226774 451440473 796796712 252296108 614775662 597211878 958117150 115755712 669730411 257067904 712815832 16729936 923555816 579183973 837667013 670995451 745545531 282164066 787764872 578516589 743572138 348602894 655282388 362399533 706548987 638019823 975188444 1577442 303586030 87621157 409168971 46840689 795083020 492665699 741306952 437673052 449401754 26848354 885506634 579454530 701504840 446044225 510154467 289827 790784655 61187294 705215452 482551124 895658024 441036391 781779387 753184988 957675844 732397199 884526761 877955875 946066235 116196486 197791506 140726635 692248437 90320083 364702244 29235435 845117405 103158451 497584738 133134842 161371909 143073915 330722372 263186036 608874867 598540962 961872940 177999599 871278375 516035531 577222725 330109517 517629951 489595340 839387849 702259480 810443330 26962335 116958633 93358217 724903834 523471826 575131117 226215779 350610608 179974782 550991275 264929545 925951820 392092926 431326145 30738843 765933744 48263006 418141950 187497161 272033189 223654124 965489031 765585767 897456066 255853692 470972215 280044581 959039609 108075448 823613281 86523340 542413221 114287078 190976183 146696404 651602723 215654925 274380121 118427686 721990762 515418313 549443073 534041017 756648050 222282388 845898395 795626235 912387631 12873509 182498184 133036817 141980648 92391926 348587526 341187119 503331777 468189016 642534319 292155704 890900497 139446364 898073596 153131464 647718379 230740366 292919411 234587238 258138496 110913208 678527528 88242023 417168527 205803193 591774824 34347294 502814481 469872212 642658311 546742649 854828590 360452004 939336861 255679504 649424986 282245850 922617690 880308500 986962552 499811328 630217323 28273565 995965030 158367852 472215228 400124241 408233370 131307716 332068985 157608520 385592851 311847732 583736391 107965478 515601507 391653105 485715487 296887834 885165455 742871126 791189144 463263031 788240193 303706434 655701832 36856683 235640429 40784348 864261510 691207282 991807770 346212965 649048128 175762975 701884291 643523952 787567145 681307867 968041590 438676396 808344552 512553642 663319779 375000319 450870983 222703550 558137309 76555513 222849217 152442790 610754071 113648929 780355293 485419129 899080524 364218783 713558180 90210706 789793002 641192751 868485470 153570374 488638276 331345363 922415150 127020263 448728444 190407019 600929654 384457018 750914371 601272467 701458620 684148085 841768540 165903648 424854467 129643493 475855263 345568080 582529349 578938557 803452743 329465512 665285195 21347150 857428656 705737837 966837824 376287935 376828619 318683845 744450848 222819570 815511278 329350930 833230601 332565845 425094789 8248760 114275146 31817359 617875738 610725067 692270023 16862342 278248701 54050572 923335238 798409998 908376162 813267313 844792053 218951179 281808820 129221028 156944056 78993638 564616930 330489452 419924913 114655091 452465251 59126099 873510896 847089155 905244829 711497198 957766528 735169111 897863623 254862616 857660662 134980432 503052985 502228306 767590524 59953744 903296935 732692514 823369608 658096364 865815749 192485234 565185774 305635049 955824851 47289107 81985926 49369006 878166626 330473238 753090377 343043061 972839125 158452000 279395544 10711642 330153221 9521976 802689803 532383295 918376019 462745613 474915391 326635356 498721004 216435424 566059898 52455379 791388515 408688547 799325027 476651432 953001140 36883770 648422139 357436043 963467965 381731741 883267058 163662116 321443781 91997552 792891637 389005590 505887429 231623195 911032406 674278037 765136101 1703102 967889247 763612931 875200601 412988091 883057606 744992070 977731974 135365529 906403520 118099523 749412562 173615901 448850747 191254809 987229450 737748565 772579629 695970201 821998169 431933740 884166939 785878686 856511102 510945583 692326542 156517174 999340100 731767789 844767979 798707501 949691540 633375521 819749195 463710965 733280258 288474825 957884196 441871233 649157887 115967564 929726448 125533834 304591110 150361365 212912507 102394429 646781596 452444068 849815523 455022903 640834527 37657205 883600135 463929501 980975066 46601203 105153249 82825527 340656701 265859080 640857776 191977742 212488705 98494502 117567383 42176932 977763120 517382166 757470441 413929322 429465584 257089601 498244339 85074554 285066582 167871629 262365577 196021107 689750341 150050412 826452148 414339846 926439557 713913178 998850366 598289694 775280910 526812733 724612974 436938678 483001033 54283274 510038350 301507868 608162629 283268921 909447117 314020805 656511036 350646745 377095869 261408227 296424136 107618436 775539979 159297037 313173880 191116149 763652459 406439697 790175233 336499360 878047876 473102389 522230781 106758637 189106609 34073534 656589150 537659348 990933592 521731030 806004872 193533092 725739106 198598609 724096594 119182313 556808040 281334118 979240619 415295622 986881577 750649969 989894705 296957857 626817502 210651123 660123577 131120980 723174238 213838685 855252041 691986426 792904682 327440065 559266100 375911755 810514649 25374709 321275584 98471527 818338899 236518443 745509968 404317162 471387794 421278886 972932147 179191820 999754760 876476699 903411318 684016318 803212312 144268922 589488244 423533101 923652234 885871257 957644358 157045222 336533641 99486366 672997497 396629214 495814963 193975589 753324001 2157667 490157845 25002578 200322619 34521705 917808914 249912434 327317885 156484085 504188613 301894927 490192433 162307856 835828013 101846127 386101094 202676406 423337915 29449132 212235646 95066585 910991922 748879406 782912531 449816814 651580080 117482190 693496580 122321492 601963812 126087675 769515704 104111168 909960768 386844645 745692681 501247190 543568855 366041217 915288327 25993724 499386552 18362559 352901798 59687710 676011632 194585115 462779821 166807255 948601706 919797278 956148215 436769787 495286128 268896769 572202749 176782101 875949914 190067223 924737361 110480024 450539538 96280444 171887328 20384913 684739390 678762332 708633469 297085261 386803241 105217726 873814664 455806936 558615442 491613146 605636325 529176745 684355654 464272682 510930314 222333610 892282464 203951115 841330609 555208948 962681574 116317003 760140020 609869955 969955089 550215187 670240579 176065682 676857155 574294571 865669244 855856529 937474748 246048107 262409964 93558017 510570858 498262273 771375831 665311190 910947008 642569303 865772944 828350713 989958290 831298263 988628157 714477758 919967295 542875056 640618038 419733446 807819755 391591548 632495433 537801183 711236752 174352918 615636405 377298546 968825084 245076110 690540358 578379434 907239139 199657687 325464148 34582894 245696045 158877876 946824461 812944797 826999909 40658977 368727439 202646121 244759526 119130200 199471752 145901244 552977455 503465271 537328362 217099289 925812333 589670156 909944017 78172275 122555174 31182254 636589319 563909293 598949493 151554183 552401415 472999836 687023661 137839175 208075757 12905548 531405317 223824766 789692118 76234097 826410541 379499513 940924858 635466561 918098016 444976325 509918964 411286316 768648311 375526754 933890512 454600544 997790279 394215954 499258384 312486837 456237095 41765395 237168231 40870400 896203985 608555020 779696897 207654210 909507478 374416415 529943469 317690173 669474406 499482285 658403264 360146202 495972836 67170871 116026924 25920898 393005901 314993915 444350897 91275994 873300449 7578232 383404027 349274305 852106870 11148914 450788984 53025869 718797805 52068028 231965777 131869008 160188759 151124149 259810755 154670669 504737821 110857731 528723875 338545121 881750937 217925909 226179576 29484509 740735569 500267705 772480559 586149811 688295346 123376997 412184846 332426705 475679043 218755605 297525279 228987323 664253853 298052178 661199041 215695154 601290579 194746578 393802644 140429639 601413318 9790959 902822639 723895437 935371891 326511130 355005663 205179828 621954621 272644336 795971660 35754627 253650128 189805406 302669372 133012395 201567242 11523599 285093898 222010847 491175447 196593753 963657590 160501800 534017276 492827630 632825906 404845357 798553522 504008807 664343263 362288794 554898704 113452413 251425617 71653760 973862390 89654948 739910065 258681137 784803007 291853417 685657322 98920672 271645831 86891823 727871136 149737005 591722052 47573024 513044818 162682384 598794350 201235075 868215824 827063985 968182377 670573895 801511344 287241391 950176408 93994333 957174452 99402466 248852114 108689949 746315183 659621498 918050328 793326499 986128492 125980546 501499973 488777654 990640919 623565138 704521601 287406908 910139370 516710767 782366313 422055770 715192030 81329535 289018071 210367476 520677475 16627936 467186138 247730483 862138124 143370873 475157732 296791920 656798240 481610417 678880184 113161417 888785243 762723338 803593039 535167310 663295267 367065232 530340904 260496750 752043216 346824954 601418395 43182412 757771305 313228612 862364503 847178842 992756099 716056014 916450255 172196253 513164958 450369670 615024033 125541701 947274889 524708931 621008482 341071203 921798345 117072155 784122656 13450134 180486552 133283508 211814798 193529596 378232867 173770417 829414081 518200299 773906015 498427519 670639054 333419075 419845517 329188494 966294498 829069955 849290844 103819125 953373116 551828079 905778795 364961408 665235124 639806968 715761509 524054531 683758271 175199981 707892314 641321722 981932569 512828718 686605973 619559498 874476386 825347374 981631079 866506680 890117880 882446391 924380765 610173333 686311415 490263483 973544306 527929198 849427493 114253231 799137922 319563410 441086500 94782591 416584837 319878927 400876974 336121321 879327620 717619636 896473655 819471953 837613456 200299336 877330742 299647319 549018710 232148766 413891106 93871179 463169089 60495352 177601786 10225937 410868724 191751263 218433384 8709716 953286967 189771759 673101307 509371288 732231579 724163358 891519345 487129380 679522998 267799961 947053549 68005904 269025589 93138547 240092008 234972931 811349372 200006671 459075490 445706416 953404929 348189450 351967227 113427801 414767261 234814335 496971372 457917360 812397104 458868100 709466141 190892826 828226476 437070313 597214622 486733445 916155029 100967893 174660343 31621312 633216410 171913136 348090377 17939814 597053931 508346212 779884740 32237116 303002138 166293233 509647976 329193638 521732620 343486764 703856609 595983842 679665818 643683559 744861318 477200273 863994017 487401789 576348818 464061744 994586059 222565203 308265738 16896632 325112652 171198959 973916217 27573917 62930611 47041030 234747736 91614724 514658736 443307307 925962031 169721932 251281023 246441703 436037550 315981762 627759029 381529959 993935826 885713805 988461926 954682852 965819635 313987746 331645386 28928988 631683516 139216674 671015518 252344882 751862511 118863773 866608530 695538648 778602792 43593272 937388033 372623403 619317419 277854751 784616966 159230574 276596602 264072161 603924418 18495382 800792875 35649388 100572885 49218338 911535833 423892333 480033768 91156983 594618203 23521295 390320315 113816159 275939413 189080255 661958764 453351545 870200860 452151870 782874829 339087080 836398502 380035573 972132961 188127047 456715676 52240838 626525025 485888749 875448815 747585904 945147425 920161275 943486669 927203992 959206772 312310700 831738258 177207566 792677965 350166606 702931983 276021754 316267330 56296253 96768430 67954764 82870824 8464457 390041745 261058547 737088557 689591908 829284831 350962024 833900697 822187578 916066974 767962355 922215468 499743442 899457833 711693876 841909396 471927926 551555843 32891892 412631114 242137010 365117500 22142228 110715907 31936745 977844836 177106385 321017847 238006050 710053507 523323320 687234689 68640297 734912349 270197598 360806120 287169431 696116354 498527488 551108210 270079027 603590832 594531292 814769890 583988657 813272254 46532253 387491261 376753466 478129014 365670321 920564618 298401848 796733546 507001981 685488364 270915347 364754016 246165143 893458799 880069892 954564328 631499951 844472287 430758371 899346046 662183329 915696277 805556616 905355740 532448502 803038657 303311822 762273935 534212394 704686749 288376588 749325382 288074295 981596817 122820849 932248810 640206136 718965066 431700546 781596017 338353122 546293512 484779624 601467718 591296571 674170017 93848429 608817376 418215393 444750079 388048741 638438642 348392756 603273910 539096023 994493245 409157073 986344355 498504728 989528663 235959907 435288244 153581935 484911582 96313278 386893694 252474840 967887830 405328098 786170562 197387849 667191176 657138553 834633956 469345548 894761951 593943812 969507939 956254761 974712995 952088292 982183004 510796083 667595865 238960721 382961144 234035534 388246546 375858523 958443753 361903983 718000496 371791833 554882469 175972701 290772962 41295482 316151518 58788927 205539266 82366498 901872707 24065202 688739714 625739822 829364403 467694552 588631546 154127519 467965196 347142816 735241359 167418336 261278994 165828092 227596568 138226916 346439444 11275977 64544518 28367318 184822282 265368 106877153 60984885 361036676 354644919 819993061 761147900 847872960 741610577 883989623 737556736 987535716 214837068 380082873 332633112 563591102 389776460 912230429 640404850 770836464 342433875 925352713 107656546 853259601 799628814 937397357 119865239 732841495 273016641 641673932 75684328 602178654 114131274 560702819 157778720 339972816 276455418 936976581 287771281 862727968 93857653 934398734 133942735 134309879 94280568 330577554 116609707 196084856 192835786 866796836 27282981 653231826 151545370 885224839 482891580 797698489 28746007 746848108 360193016 808747336 318137398 800869450 495649286 720019906 160115728 393002615 147387065 435210583 398124035 673861720 457515668 468403940 314674773 665466782 268972883 641752490 561413712 846068392 702011611 769858516 442338909 859733319 244919444 751075470 241058192 587575367 543274070 669208325 634911956 863378507 313068478 777815395 688186447 737512919 437477320 557493863 209503617 768457811 207756252 638215243 266051040 529045981 202312396 837804734 515258461 688321617 294848419 334155800 53396246 916924801 26212244 158092345 95071187 396257972 2701683 581671769 580248627 944778343 690839959 795111045 503448328 614524011 212329143 701253355 554877946 887524615 117495787 844229481 735916129 820511836 741235116 900422490 466513410 634564869 150975445 913073950 663954074 940801928 516113578 749997479 316680741 836694484 783702101 957866911 386921985 802485564 198959860 625250928 478378553 754943732 745496724 820369985 65801943 931766696 575069547 674875948 464396502 591661279 53311680 409503249 59137623 830315597 340982141 531959436 399605590 627820729 60259134 623111939 316999384 577043890 427237027 996250379 37514123 213766571 68159610 829135404 569604555 804798491 619834656 734771254 457492613 721160253 55917505 84080463 54086249 793364535 196999047 495585069 341149485 983832729 684009738 939965734 71772428 131713876 38929242 83616301 75953214 478691748 224933457 950817301 751907090 794891817 326750744 958522919 393277970 776986797 132382447 763493580 628683542 818986254 82690952 496855923 275556566 941912632 56197315 614505589 220604595 583560565 212345363 316219242 152604218 418197025 377695211 775988603 165838449 667935475 444496410 687821405 387781093 499852800 303981474 524360319 222815560 929476705 758565311 905599011 525867028 566571939 43092237 540869601 327806449 611826037 165374234 928370585 672932041 962443805 921035586 926756764 672695839 705146244 645444003 726589735 495984217 787710211 133226361 265973506 16894700 535688509 357363731 506522081 109972109 475263302 418827235 839300585 689547108 924478083 847898162 942308012 837686378 970462902 119111155 717548777 580853461 835129489 348875227 962438392 650622127 896119129 191070408 756837212 290944473 890616578 633331619 904046489 524073772 971777202 101970958 762231153 461178943 864629034 498050534 746571706 215596187 696611011 89414141 913046259 703579596 903759810 384401827 628035350 560060310 826078833 757641573 962867920 578028082 866199792 275874964 676611451 281281658 648762989 295963568 777734990 239167240 420914798 23807688 636807879 562491185 613927849 155681340 807507102 296460524 298661467 92274134 813931359 47812972 728885747 439844066 881237768 797441664 843705545 544824501 687370800 505476023 741308200 604104803 631672515 456404989 907295165 873306341 991494798 967389746 980315432 467356703 799666588 265325599 837357628 646259708 909315518 515036361 724298891 17350790 953914076 883845296 916880731 712468168 717884827 711033126 843998860 40844802 614116419 336712655 702182076 489017762 968782067 897020477 976727266 448832921 908203966 209197652 576538189 69775880 330236396 54682059 386243234 141562797 869953735 144506457 887427585 63233877 698413097 181594028 848814865 29246502 903583510 119451589 152135642 137419046 758331495 563289886 826595382 281683585 723714150 580396838 955698328 913336120 957032537 218802118 586979644 271115703 980055523 871909678 894879241 659994305 983008748 592704227 929372056 15632180 776773370 163805672 974715229 844594443 918890228 356480080 980292933 758389399 969834549 900626438 997436478 624692914 781353598 348902047 827251814 733434873 996577201 261840039 903141828 241000257 541511177 490886009 977107585 566061948 906923154 828432935 967625745 923709820 973640805 171629165 828449319 52001517 271091507 192617601 751370470 421550116 854065491 501571915 633754653 228784145 603818363 154426926 912079268 733551427 913470418 312700099 614630662 335682338 737949360 435226248 659489788 501684983 992582650 89208135 597219330 424621017 742476992 584580619 971464361 625917514 778158854 54962408 210591227 139414066 507518112 64489568 98297324 28611245 923134490 113865668 372146702 74515892 992451111 174001352 193405716 143443942 162942525 138623011 785260981 155955017 704330984 304466940 433956795 1701169 787198866 651389884 916162422 790485910 930109744 405716539 819224059 132121363 918764452 189094872 716523876 665842671 980982331 770287643 821368641 52276398 244331732 77806722 182388653 19725729 382632124 23314061 769506729 63589230 607866341 136901385 544834921 408535525 817461703 407816388 475116674 43415878 390157122 273336035 828468077 566033710 956684802 355864836 605345635 310545691 413606302 248484267 489156691 366134191 857950473 556632625 737240989 444076818 476641972 436426973 549976154 454447157 518031172 199048381 739196198 199429764 237130096 42092859 566590826 166865297 619667256 513488812 863023696 361639195 980411566 979088047 993058184 442950237 600525590 349671387 427726362 328891530 828548418 551287404 736739432 614933724 730331304 223871635 895312256 712168163 816917784 128177114 344379910 275885078 835824667 719444736 892074174 888934323 890498864 279663239 491144439 224330326 753855828 166705501 611508896 270838055 591628956 474533990 506606990 97566708 101248410 49223585 633198537 122985011 208615687 109390265 983094466 580065679 863564642 745729313 928668110 873265364 934777983 249608228 317547961 109062107 118673034 11513694 716917856 565856801 687803769 474196222 969759735 631515489 695550730 245719170 958666292 215293461 608612785 216969311 473052000 277525315 735365030 394640668 639547167 528219097 856923626 472679581 790611249 224780307 385664223 316353143 467451384 353390196 674733516 633000227 712732919 454800263 869333117 152424897 650177458 218749855 703985776 689407586 732906928 141494903 514045759 172316512 964857457 538704126 911460823 790950415 938193944 94130380 274895426 9993587 703823882 507988316 944838908 678882399 853535964 504751678 523856432 317725432 655058940 47568569 76289509 25459827 212308795 112745747 545384437 408232097 809305019 514014505 793590584 431140987 769029310 724855141 742204613 143570476 244811066 238351274 747031214 7965932 148428408 146120810 544125359 541026264 684592120 414283299 750696233 262722324 520683518 193823165 233567630 48912567 548083379 204844862 686144383 278556788 769736896 279274111 831877965 174100279 316338640 209711740 443233109 57107053 256333422 224525224 583946499 15354312 582047387 545654182 928223146 103770877 465838233 452764694 700062407 607786408 709089150 175104287 281920371 223267365 258489784 73598858 406732551 122877340 499304681 204048454 619682633 224510927 717959585 364140337 588530084 75846523 602713508 160066329 434820501 144541378 454500435 10460326 657968578 177898378 563526117 77734202 559762504 202629675 705262942 674493576 994637511 737856329 891365425 316433742 684863539 53330019 470320441 239721002 818276001 592268425 846268899 171707656 435498754 178453581 692636196 634734931 937049299 556085111 943432541 523224154 565341383 364632729 684298505 376690091 934600505 730936940 784222169 236514699 244959016 63263906 686905217 113019586 634057834 224604776 815416901 534133920 705201150 342009687 586832583 22823353 776886885 539570141 655241702 4992703 386974213 280032515 499770660 283561253 851285343 287674839 535309722 88424728 368709362 102266109 667454243 561464707 614236543 116618570 209899422 125472704 303880592 268872546 877421720 711491254 735220959 282730610 976353028 385382248 604298584 262349728 341443637 273114159 546297806 322628871 486804450 100711604 634779367 178232264 426522816 69674659 121015864 52347992 382581672 148686331 694661821 202962150 937016571 576780982 723951093 525320412 964842811 34078505 565732389 39951451 181824037 150575847 499226427 75505081 188392366 122147 517074848 428748167 657873288 55474153 695787698 662044341 741654739 34387463 753639143 199862508 717305494 151382540 253658534 240088887 302627168 77276753 758344907 148499246 358254175 211102696 440783156 20458191 805066007 511391987 997029333 593336273 687207300 336680392 375974836 342975582 648205769 491544686 668971419 292470971 606187099 572925177 856161770 795946831 908075446 607625475 689300588 237566774 293672886 211468165 254047103 55184497 755014011 555012551 786324968 123459628 972321584 41031738 436899431 342275520 839928821 152717227 284434669 161537117 558934122 108230766 890125379 356839644 728855499 141819209 377663080 24476464 941998259 238684673 952908677 76114470 661663337 35042564 974401294 747308213 868792348 746840792 765781820 480222518 680870227 655653082 772197318 623596773 784991839 304396844 545992304 384520993 821464215 373328013 431603891 136113794 313862795 146374477 259376693 252525628 408394606 289162321 585976805 127683635 527302018 484036042 854974212 180614997 829461955 281780273 470084309 162142320 851990878 268426969 762500564 551388533 748144630 719222962 902016213 630322986 744560417 166511880 756487444 505421734 733234677 588007839 820714333 179537163 484137898 209074383 978201069 772016577 958214243 539356650 699706846 393365334 637721684 311933864 320067441 273271864 758961205 460808436 624278903 551166976 666298185 416421189 649323297 332025605 724443852 268044514 331933694 43393175 498182346 107695586 763700297 247679831 440845903 130540934 136174620 39990811 146215644 101241283 983293344 903622905 928357466 498772961 716559315 582614649 999658854 669902882 685430290 397717995 508426779 123774685 948937213 780852742 812670892 424454380 530385224 300978240 680798721 250427293 462548231 15275571 39106793 6524473 925905745 632084765 815867827 137266887 226841020 182180176 673022502 370955171 956817013 89337156 802619063 283907383 431952198 67792864 784200159 176716912 577549468 254415575 549986712 88778524 266719179 42933761 573354204 504428027 686403853 300637793 922133020 598609294 653068761 549222197 704689688 301564977 689636954 186714511 811455452 723516926 741558685 650612568 718633340 453424691 928321288 395196065 930643324 686258880 933859840 825544231 994704993 750866456 875010033 585008723 659452261 564307533 593167716 268370376 501216560 56568891 81626269 47060289 533083693 12422181 617922752 332059766 715112571 69926791 781865235 151387332 286630668 172502966 531825237 6921597 498940186 130029303 504901828 479069685 763398714 287592610 357314893 93363007 146530549 139352804 784954549 356010783 781277360 162013398 702977887 200612326 503495666 45435149 153712748 89270171 653157316 167957678 557693370 78925623 363059908 122376431 947034342 534004100 999382980 596779653 784590961 189285861 792652909 389945428 527830915 51961165 338593191 10235345 549652973 395625 526885419 138488349 646835031 440851830 773392436 295024885 400803980 164311383 466537959 154666186 693290469 574121609 759996380 634894149 948767973 341088398 432124838 103372084 263245363 36650928 802407799 479983261 512924027 67449060 231008897 163467756 787876124 692063131 958336662 883846061 952728187 348310239 366264183 125490866 669783469 616477466 846320859 395932452 838925734 425480141 580622717 128236617 893044613 231232383 642857214 340331227 946898112 332466058 545919657 82979291 417458511 114232900 914768918 688571142 692279623 99905287 786217376 204168785 883194388 801806336 906359638 365121932 679592706 240305429 978086091 293358353 448198616 366541107 514752844 80305954 624297715 105396091 911334508 16666526 151023814 86452407 148377269 106920107 204406075 152452835 373553552 160968473 513739826 53046266 869843761 171568105 498491805 123994478 530732002 107395973 998801827 299158011 783501994 512691525 867845739 385615883 660853497 641198355 738683934 25830690 410775597 89223012 331632524 306406990 685637373 617832810 708506175 552029652 689243346 629504497 844981796 294581435 858847872 264324775 763533102 141917550 798583940 753090726 769395932 730505433 797282428 664586207 672434117 92445005 761952705 458521154 994567833 484011719 593145170 552054015 932645396 743145053 976759483 400736453 419915612 32416891 346621597 157436094 660530879 527328101 560813616 446542028 583957612 204773320 506616803 506403247 656700880 618948887 624157930 115434236 575628462 239848152 549759701 411727670 503889223 220453074 720864815 558221404 851346789 545562612 842072960 583426697 813149989 722793621 777753619 532090246 628872656 599203414 962343336 505351202 787091820 103636167 228170041 150626512 883059531 105367998 960080025 442289726 882384204 376529387 456583274 212610356 799545516 510741062 668763964 478304827 935894441 351225910 514800314 195444257 606235568 269273728 830334679 221112260 498692198 429130033 933721761 595560632 989795719 629941396 799654344 427577161 477605167 421119385 769567709 500286598 751164736 580191719 960147758 819933966 965738477 520633246 665327440 526237526 869080132 834015828 839751330 832048636 883774010 297130179 696716838 514703077 516430891 154189817 532414263 138360151 280790224 123987692 147308129 53796734 923224006 110321035 571548092 517599923 948132242 60677773 907682663 769568823 907743987 874419095 919004079 429186051 904493176 95404258 504822757 249532687 829104752 598457422 744717007 498627049 945718764 672697542 860981487 729200669 858722974 370092674 583656281 41129265 948636439 308266707 470055614 421446726 796768288 23863443 888823442 457047692 675995699 239494206 283273999 189515681 791179206 720802489 787681794 304150591 636391086 626529943 854417098 495508969 734776448 424028719 789563891 387818005 723916667 58243289 63953409 29880568 443632266 107080773 589570764 327051520 435121733 188438638 193970570 120032323 468262322 219611170 343838160 6438771 978757767 323810268 654104921 45970322 737886974 150495030 228496286 82033859 674479883 293506997 875688034 565518809 706937024 142004234 383037011 207216751 422875244 16807897 32033807 13241633 703109593 63018137 506747526 360267311 977436795 627118217 826687935 374697251 907077455 282189472 312378820 293146292 843377305 571431853 787034585 241273569 719124802 285938905 386344765 20467006 707070630 255437524 576530362 405551046 858776893 143593957 818698213 580547201 592953713 492182771 686366085 180387117 996753236 62569418 109287591 17950714 987463966 809246511 951525995 35242060 134495645 129620550 331742470 82961640 819688598 805802218 994467744 508999801 574665940 216006605 223959284 133734130 848684755 560213972 755067512 337593817 588329483 385210799 555338616 551424940 561967399 203632453 849135964 478188681 709217119 395328219 448333621 65846269 867093474 690387270 754699760 505082050 958634704 227564996 538867162 140354652 996824208 191625975 576530579 263797112 728911097 295792549 942890494 145574316 831103678 829311777 939168015 603493302 672147938 43989197 73668942 28167613 696732730 385153415 737751509 137441354 392839901 346910271 987459551 358480690 597107775 358956966 730701966 51148808 772872212 650532452 706580254 631158969 940120249 875591845 934374380 510461058 576473532 93543347 480135278 149431305 553424821 415233076 694650044 482161592 840192769 164431299 540616068 425236656 762810568 471544291 475765988 345546544 639282384 288235838 371718361 93756201 235735082 214202809 894852023 181054776 531053687 284209906 951104010 362091929 489590064 286851985 637931850 296157977 661604682 354658481 766000071 15906070 840893461 297570254 633285890 87599989 305822031 59572500 144406853 80734730 251800405 51414924 996483955 192794363 205579373 116333075 611860973 439677553 660210008 187928975 317056960 89584579 722402978 406885505 685308609 652584905 722226005 4451170 735959777 688015550 929082935 349205579 930504967 344057417 356315621 115692493 351481821 86905965 387851377 342000639 407369278 308918768 359836839 302376368 490514338 128088380 744779990 10254929 597450321 396388290 442673380 110331925 226455972 143101677 196165966 72910729 176575655 69709954 169278777 61753880 328160104 216430272 996147113 615514131 628264538 419292552 906554849 422173662 880913518 251017862 768961314 85374132 314939480 182158794 790365270 153145877 939708702 358217737 965691978 829040174 879073800 255565717 504456566 75180157 84495636 65919286 935116289 670513202 891932004 693431550 694824825 497479332 722001087 193654814 941776899 210317577 921525540 290448085 694331243 177740043 717150535 197708373 553635824 224578169 586746040 95378812 624465136 71098228 936475743 586008857 815933073 779839464 983106951 4919123 435199406 149792661 843715309 400465937 844165398 694044149 985425693 849902645 961574118 90403073 376350722 291802514 941348089 543413433 624182748 140946824 523606488 303340104 442430895 56711355 530681533 367615083 605293113 115868101 677379227 81778232 987838246 12981958 783825276 87803586 585143347 126352529 528651329 297705049 822467731 15911622 530865789 19306265 906394382 780271105 913330192 486960555 665209714 500153560 921800287 551533988 634437797 609017679 706073421 281044373 727986375 129223149 477394051 160868915 542498108 92466673 426021170 25503499 728555623 172281518 868900496 447003466 830962566 214007921 474682068 159466194 837257150 684528242 880717933 136882860 478565782 137837231 820586882 378125759 803868138 17966500 617367097 289105599 556390834 133654106 777065554 630032010 974835203 43815605 757728115 414307087 519756045 396017083 813592522 82598813 290837010 70560828 576695695 357787460 653928468 555861685 748203175 259681509 515691682 137322942 707272636 452554305 949477794 634734511 765959755 317973782 531255114 513281449 868118251 650913364 874515380 249558327 306799168 261183172 821948634 378803683 729601268 466158387 559127973 396319622 585531568 277096612 774395531 660246929 820339911 180302634 345009263 263727776 881995652 311883661 322010513 313228941 358474155 177380621 710646963 202528749 642247074 596052686 737890166 448916358 583167448 15312177 850038401 291543692 467017724 184698085 351164996 78490652 230019751 56262185 838017360 489827890 984327705 143619231 991226547 365982404 429816219 156272745 487808356 112083700 993509602 633257414 968153149 401690333 927928017 503892998 802240603 801283627 924765780 314386475 511320817 504470659 909139533 811845261 879759489 61059693 452184606 448220409 884450880 97837511 745721072 100306132 262089317 151155186 376135347 161409718 963554663 695788284 747819182 289247344 311137163 34227128 858784787 422867371 702012377 520365156 658348490 456599243 713095086 478440614 540918844 264593706 809152700 802051349 825859544 763459020 932184035 664922093 989829014 539898709 829858613 759697417 850714285 777185831 841414318 90983238 254155309 108034046 231171687 125426427 309731741 126340797 680124068 101940399 710365439 126661844 313682767 202605002 868296279 343820188 586619067 265695036 779183339 302912663 540199557 41267007 269362451 235199967 740855267 510356373 875569956 387783301 784497147 417565839 510947637 385012130 951656627 308124775 701724085 296085606 856706082 352788980 435269553 137861475 425311670 278383140 527990994 236975580 889571269 224925871 948152743 356886525 839646984 18835281 86330673 58822614 448476961 67372281 118304939 109701962 910418597 174859493 666679393 63706266 523711897 157193812 339143672 293332461 315552382 216721583 690152751 62915825 193108267 65862066 945253728 120056040 898670019 571751234 622441616 224551466 954923301 249477179 923395134 682198154 834790080 792758319 811640861 21215065 420131869 52143891 734130746 605267990 973627803 875696787 970579601 637945482 707410328 440155176 801246654 543524461 819757340 434068262 819754593 720088826 998223851 447961349 891489919 448268980 613207567 393571257 504929463 109018618 404455118 151301674 810787157 192665247 807908517 340465452 478061994 446028397 893895506 262477909 360797957 227319947 370875222 133756506 990789950 741379237 815671973 177586914 444643775 86555185 365049872 341850689 526979740 195423986 692853437 462432687 890960483 133031560 463634114 269884234 273942476 125024439 620377588 43856653 803806094 685143002 798603873 523545570 911313778 649528273 755668053 655580769 873229168 523914700 769770119 313964911 881518045 109466254 427535672 308585989 431594623 90696088 584477011 166845773 836515553 623991452 745569830 598384008 981383449 62874979 264627944 157613372 717745002 597010578 903912174 631423600 922816339 913387833 967636418 399141047 618615129 419652288 468479467 282127685 825604279 494326257 573904758 176393713 916345573 82795720 157241681 145675385 983949629 93530882 822480465 755981395 867244985 368775355 936603718 590897687 961554002 72635972 957195823 70869503 699718333 237789582 273061407 251380246 365817815 85481417 961697011 648961661 995351539 496497056 879664657 692787318 818012877 359123885 619002938 19388005 730591607 724752303 835004606 826537926 892529938 490215921 626488675 577237907 657085393 73682197 463449026 359993523 838193795 542866502 620315033 476426980 814418832 714916801 762631187 281068254 737712418 470711456 680642367 384534455 445606510 157729814 782296706 718866944 973033577 678403881 960746215 661406988 841834652 130599920 416262105 294349787 905479849 175491593 878811348 170751248 700735639 361043327 654022489 241787228 313541318 270340798 662056336 38691772 632666939 567498638 841518533 25239746 531951650 259258855 418021488 301971230 826095684 239421440 881485116 767361547 948095174 415769809 526063248 165087754 695926304 298514006 904593002 384865442 543242162 86910272 735878530 90274118 583808536 9464953 677914141 266502192 816343070 20821697 831863164 163267855 368628966 74826474 901178149 776175567 986066746 871840028 882562380 775267134 824860414 763455399 766578839 435621425 934908054 503948842 766548571 710820492 771939250 340436256 495854897 133604131 612153713 37518747 677602709 352508701 801023655 597234125 630009535 559330953 597609500 480811543 485894125 2598961 841487175 604378367 799534282 540338636 871677836 133810926 159538060 158353550 770480758 463872934 724407695 560868175 992175704 473207023 814614873 753219915 924905641 384702305 507742101 257494289 533816147 128071043 302362490 6093731 332173323 18084312 313480633 280296935 605557245 494335799 587031982 243588796 904622410 779329792 998161935 466332581 545755765 379280663 432181921 184106027 382908342 267240855 635493295 264300124 366979664 167497501 428169376 302192405 824527075 487470853 800831860 520385148 764648821 44395239 980986217 230925688 410940623 230066957 727818293 128981567 994565380 656786851 812152753 569973844 592780518 353043050 598192477 342544675 698072025 145001316 238415323 141194396 201030472 85073249 758504703 694439428 909651897 279835021 935041049 685854498 951873510 89341816 829783804 65372650 73187249 28615954 652617393 539448542 817342937 172883227 679848999 316462299 971083280 768222301 832048400 512994681 688488842 127476739 530207645 382984930 962342257 833789645 926611281 352280406 785761026 226826853 976234493 62092584 939080550 467446567 726716696 216901865 427752907 12098977 393626491 61114515 841945028 752666008 962857514 656161820 897324053 524029758 877474362 75200990 938472509 633836196 931083028 877549553 903177910 669326906 736870741 279482723 652021306 328230943 413773145 171378206 517474310 142963538 810700470 560028908 610239517 393831108 654856869 213522927 238654810 68278934 740231370 131982576 304568637 133436290 850789481 663502030 781456212 427003600 580542574 423585780 726012963 133440376 579145142 158580252 631920196 573810970 789643370 568601354 681586119 672254045 987552413 542348472 860982538 69132686 906963660 875853777 878488451 690700394 719969781 112983241 690074302 248126805 843671590 817782946 907442652 822104995 950017096 665330227 685170422 601813614 946845155 398304633 860391198 855561087 868329744 282682190 549428960 416156169 944751100 373269224 452898816 35587603 462522504 98828606 309974140 31850269 761408384 673218080 704826031 415936738 874060492 489201162 541498500 174543834 457094743 28422272 275544689 79812129 601791675 359465769 374100896 241701833 854382721 609130447 716853635 430603311 928146642 901212629 986849402 951932679 977930278 196780819 616864055 401984385 974841041 928240362 972120091 13300189 201871968 133358679 232588355 107018201 446258972 28696541 912849318 704590963 829669324 438416279 644769513 140710697 829531516 180884218 956622655 881355558 910785603 513926891 653471732 261942003 959728454 370812234 389071308 116499711 920517389 576477405 894119970 281016761 554466475 205810087 439049925 235967287 332394526 107686466 668225402 262762900 618383681 545516459 936526449 84113309 859182723 749423492 942404192 350058104 781258278 626637069 948977351 54030099 414858724 397420228 739230913 49413455 346777130 84579258 999698338 838545304 989056346 850156589 940087339 752717837 889578589 424335963 769901379 466569434 531690279 335454010 683241586 334832316 708898457 354187389 385914116 270116018 967678289 875049863 956584823 935539641 987327716 770769826 855673745 648437925 894562938 227882649 727824518 352834490 894001983 642467407 726787074 480784875 742465371 5599091 254506915 154267036 217720016 206240557 837838490 764170863 863422750 104264857 822966945 364861652 944902078 56058399 770057452 705110479 796575214 770506580 782441828 627841003 973732345 296492196 733035036 57712286 906431550 375587396 548345847 169512021 634068911 403535765 855463874 383677807 791039000 424310311 913608064 252592879 985246815 886884520 911636802 424419066 873460460 643385732 647267556 263465820 341357065 92203892 517622824 463204677 494252949 451490667 628931332 433943103 723691087 513931039 848660843 501645835 629515925 7573754 23903403 10645403 263807450 6526540 702339876 107293520 637885556 391245320 904438670 81910587 428641536 334973755 905232005 18847519 906548228 28456239 102539337 10561492 545272666 294771385 341697333 164427062 781494309 129975580 156754819 51338462 956994496 221606242 833980860 713798876 908175569 272119533 823009421 239265298 441068475 57756645 452700935 78213626 544235412 219281033 959912718 586810246 824877361 451825892 982493903 865768945 967385073 620716260 871580696 748190053 851384480 457411234 731466481 187811576 621431126 72184269 578521259 78898373 873018903 203906675 516133671 10028903 186084168 108495810 909923787 407563253 780937111 430741515 925603936 794793088 995919995 91933624 386822606 362212238 828886787 422981341 773904714 8536470 327181593 121668053 973728047 544905253 687431732 442181293 811959292 394284820 436679719 174388788 914568168 810566378 831473384 806298328 967392897 834116118 957191752 428069488 468892500 329065324 629006521 287352716 530802076 265729462 455017686 267865922 988975535 404554936 731642245 686934613 959639363 880328987 976194697 430494008 995748140 139459710 971873612 949064820 998528521 845854421 925369346 906515346 957444050 621438997 669026402 414349742 731788487 196601095 863908051 704052629 706618440 107960655 137214112 50516497 691545381 482198934 819952971 419764971 447533213 80433987 305246511 196203282 269231043 150914508 529459587 205309373 328463636 108614269 647873769 507579301 576310255 459374673 906741112 200331234 411807897 23220866 651305165 147153858 378297139 22473879 124050239 7980507 658188785 550239512 800574696 478791881 890419205 876084949 892812439 357255233 927728604 48461268 873278502 113175927 186643355 151084661 490757963 472846707 969634564 421837171 956353449 830928553 997595578 48486501 409575131 89447986 658046066 627678845 721900894 664409184 977439815 395054738 860954823 443990485 664936388 489173351 494208620 297211409 816323777 580857700 694410077 478748633 607531776 394818989 794849748 210376664 586170111 126207444 810902233 268557991 916799253 522736458 999323474 683674434 998162172 569184221 635724923 69491813 723357305 185333108 317475454 165581906 212910079 101933969 195562905 25859125 367128727 241995372 650909998 416462571 517638042 286900232 295092079 120843018 942636914 166005698 436400101 32632708 290459424 200311695 902888279 62474427 560700741 92314336 122085744 28465108 709640280 304637360 640613470 120283057 342603167 144223447 158341882 38058973 661695717 270523571 839546191 539531181 702423677 456748229 534625928 479717400 796171064 659209837 732000831 62884150 679766293 670206830 683057989 398171307 410544779 129202476 653963805 442880052 508829627 426839670 976097038 837840050 942032835 416039143 949749029 446713166 992301714 234080886 737260081 318686994 913537848 192833519 594839385 377537341 477152142 21436134 157595911 21233452 240360599 38883352 352807303 243544366 888393058 190463482 419000674 126719673 629886748 110465809 358450246 209943340 436213977 95737807 893144907 113602104 908480445 805001643 818180696 202840739 458066813 148127626 810214363 132742315 197088773 14097144 363200246 202415814 742467740 559098005 788406654 557589974 660762141 196584969 453881643 16197943 312278025 188278271 926411802 452496081 562819471 253212073 359035245 188573242 262704640 101984942 755679000 511967635 731079089 678606436 915576395 460410439 615745621 91537913 532743873 329406634 399726097 321929387 581086130 76902513 389198682 163691978 898095319 673886390 751797321 442130487 621607104 261184947 890051784 130736203 311108379 119726082 411821230 402447337 508869820 278601876 886185703 250881743 857033080 802292596 925934230 756226962 827804326 374519957 733855712 653752230 734674732 275665346 882467700 340286185 757712208 536562959 601647424 192390162 596928623 227374535 326342297 267857055 688102136 396201403 567775202 342250012 475907700 179066998 732610382 681163367 907667930 178004266 196747927 89671895 156374910 48237343 210077143 122575560 210661502 136808625 290263142 41773081 420925088 186604566 541522608 371769167 718827913 258085557 618300784 30968246 492402099 20824941 591845840 214900787 736713901 343048837 667455783 390463334 617466279 319674825 902946051 305738441 707984378 161308 86793717 76852761 967148253 733099967 766366436 130429129 258431109 113749704 833040425 429787814 530601888 311815878 546633639 319460071 771461747 457299061 860035457 665659927 871086285 170371417 897955732 140545261 808705307 159759333 475495844 144982535 726103055 137511149 297132232 279430725 452235606 396099117 514380042 147660021 578125832 317632479 871919411 703007482 830638248 611820647 878976106 454771987 969758807 150522823 876959640 629491760 803835272 92285948 837548237 539432484 622170124 272059321 759861533 336600465 779091568 310173683 365572053 317691005 789522062 94365052 207768577 85353909 405625801 92035436 122504231 64152598 103074657 66532689 428337717 295998106 420139660 220301470 999111399 540538098 557658854 444856967 854505602 449419148 672778088 398533047 944572694 383694003 387939023 372295924 827782842 217791010 428538100 407042224 643842434 407835187 966402051 594369979 798177735 793703712 812771101 91172230 833859841 758323092 827471091 494689082 653994287 650656525 776332203 255057569 430903092 319937618 368356272 243030770 265231605 45384906 875133316 46155954 580944596 552731723 626742495 360206852 512481814 394067375 589315083 578758442 916603880 528975497 696043083 206100101 715126016 180309351 202947010 194435108 227483577 217043184 377289966 363243630 512234000 45546444 381094511 146291331 676666329 69772791 223101368 61674246 295419186 111622137 177801598 9275120 626355867 163709317 344341022 245286971 530178582 330529500 567049738 228590842 279985130 63135503 238911327 224866544 916243561 68616243 468904409 301495130 685675287 259550607 974033556 69713624 771931845 674511515 944783432 594874588 989728801 742463915 743151435 98435435 901773310 735929977 965467307 1758095 485628423 198781681 556847109 546193672 989792936 877568131 918970470 127165859 242800091 67910498 298417458 119128750 567053583 494108191 786065357 657871348 960094520 214436519 257118615 32663540 51508660 46408160 855904262 196951394 625182801 142658227 468906568 333543776 400912248 115762667 987094952 597924457 886072096 401920725 560486962 283218220 646432428 96368640 930006119 556577721 563092811 201234311 314484374 271495465 812871933 365417210 862987774 228908411 271726120 86584414 266132509 19343286 422591522 139695126 921046053 737362662 928651328 106989358 782961927 397646637 716546884 470255351 516355526 451827147 620507617 260467297 755572520 37599198 543768854 350930600 663480972 530239716 940467499 455406377 900299374 726926247 955051054 641220020 797730072 456305870 631588818 550756228 787559342 374527247 484164420 399747724 476166623 141030467 936572879 526301638 817595506 481062396 758627631 560759623 847230168 24980708 78686530 33463926 825423085 114405974 762384355 570646698 894328676 710352296 754334287 659308156 867979431 55945897 547818087 77992422 300588681 83247544 681904624 669447936 674247045 583308835 991766316 876356218 973256367 125607941 590000797 148887633 635715788 288077779 507027298 286140694 669326139 594824009 731460299 5175350 452528978 61497347 933618433 646144619 825600135 36807281 609972678 592679123 670339785 55531551 73230512 10582870 309460169 183328509 914577058 808941680 986641838 249716907 543169278 12093498 668348026 655323469 791569587 336342538 393496831 102374326 825484983 519271342 737623728 34666954 571101458 176874864 361102061 116955838 846847320 351418010 853282203 348796504 694374565 420977884 551756394 39630784 391810402 166332641 895141652 229348504 860816907 673864365 702568205 373341944 460202982 288726889 335073112 32484403 488185967 475683541 535872468 434717063 940008410 200937392 934503304 244152705 441298745 212211465 897547637 195384784 642776747 119078032 970933237 741976078 803207300 533248863 978380058 614734132 982865642 238960153 850652726 323262244 459677256 89526968 484873841 340275784 776261634 399930092 611754360 162586525 303294781 192417880 526209062 31334172 915891372 734732096 815936944 666566589 918187803 868645107 975460345 659248501 937886087 192172513 634314494 623300916 704711339 209174500 343449122 341745620 421999943 96274271 639375114 391432739 948638138 769436308 833464355 15307378 387439832 141771826 526832789 233954879 995989423 161404904 319732613 27768860 646054121 346468685 621897639 262513148 743998016 81800804 945101430 114420856 507569872 68770671 527017239 372266594 698372864 408394991 474559653 19727521 45908878 44149025 822319919 704512961 765598085 494857801 647556049 624190206 837763652 281139214 725992206 115742803 416125324 179097467 615939164 323968162 730494024 665191001 676968232 580766771 724867907 546393024 870532168 297209555 746700890 598283698 793861167 308490522 418897979 338636098 354670397 81754423 578238505 401189578 998010303 9937857 510650119 434002426 570843672 241387319 723879463 139908235 142845077 83017879 662497095 178191187 419167281 418875632 772214364 391266848 612700470 451236888 962013647 114932164 328597560 71811874 306537519 197438985 588392880 175935481 226554300 221171734 958412754 382308624 514982459 26981221 604338684 266325816 463663107 48998409 196113712 9966284 234520241 134056750 184256363 44879002 219405386 122641320 281255611 142732853 516032763 241366604 403778758 270628263 408878305 43828146 772080604 55488473 197002929 9297986 207776580 162078249 674438008 556040717 826836781 294710230 517187883 198389273 782216090 713020204 723629815 8007028 986371102 586023335 979434883 552549217 619733291 417245839 631438280 52147556 519414159 3975450 872956069 45678517 680475193 237847382 462896388 429831604 581907784 162900799 947377545 165364983 476496448 139690786 169575072 91797221 311598567 253048107 689565668 623570949 683368731 103912370 969208878 479439390 577672125 159045431 691854144 86637210 465792366 175772509 832648727 689361016 828982333 26754863 504974947 273338818 758289930 369932742 808403648 139836107 721073975 89881115 951591916 319685608 994522632 261550946 668251100 215560167 764292375 177570592 343236247 47009963 293101260 181122476 475309956 356466241 382842788 131523642 775350370 488135382 586817643 127256874 564987901 331674034 794545973 620227685 697810791 80467905 956137764 580893595 593931668 494157809 858352058 364482626 673245688 311261736 992904073 397895265 571162486 379295949 880364779 120720619 992975407 985401649 998765528 917831017 980964099 898531712 978301659 563429839 901585332 800244480 814021749 94923094 556286728 162346884 417650410 411644542 449712526 98181951 974399681 682558615 712269168 634705423 973854612 936865263 958249705 640526862 963229770 243905093 840765006 738435519 898539131 20584319 802885724 354141381 884442828 494125139 632581173 132784724 456470031 168164476 613325643 134441579 497511657 294098977 902791842 72823036 832077733 156580737 332876706 255721457 892589372 878957165 944831855 322911131 448247103 376755879 546964902 196638267 661624099 145642889 326829235 319399215 553361051 344889601 759908660 634126950 924477631 511364362 759098617 29684249 414225345 42457515 570688471 188551828 694856366 25365133 938133064 394352434 928184067 10424074 96564476 8883681 183876208 141377730 630287309 161005692 734282514 378556211 477874831 31177491 528331267 474192123 508560871 499506010 766527012 3506757 916164553 287087897 890805018 800753272 977139426 246618741 896046691 85558405 681987663 366090706 919811507 646756263 889517356 589390624 640019226 527602980 726336936 444781609 788343197 565965092 769762927 206715113 380399214 132669748 240896207 108552067 191495819 185212560 975946325 103561805 632125174 188573144 317803996 131029758 584626315 25884830 127902646 122014947 343559021 18027987 328995139 87621856 273703398 155085173 930750235 662674102 701266809 606205719 699062896 1231124 696723201 203687001 726507969 545614130 879463002 727187437 844530478 512985219 570362516 384528392 675283127 61916770 951209992 498840529 501627251 193619909 972721214 90857004 315294146 265932279 626274024 392352703 666021469 606179903 715403545 407717045 719887427 387973615 515877980 370429964 830766727 419736261 858024636 613975346 916557397 167612907 765515426 588887113 874740293 523139806 719633867 420680788 749019432 5426588 155173772 15357284 36917194 33032408 548082266 89297838 303405411 279872239 630050632 204005950 897168449 587334629 615708677 485234615 808305349 66334864 501334834 312416956 512998683 102023582 426184592 8393682 620621167 457409321 756577417 227419427 819647382 635451045 639245166 266524506 564415688 492439466 734616900 619303867 921729082 249169587 521771079 470621662 625358705 87222741 293699904 103995565 851940883 18343232 459956610 456277257 760167329 48302447 162443670 107345136 953758210 757995916 786202575 410272890 688429511 68809294 347951977 209469430 825802020 93921667 162130117 144319325 460577953 93770521 673267554 225529058 771310314 272464152 831903352 774473322 941461932 460230768 879398212 159617534 351978130 273745705 366916496 185052310 289054913 129118423 508920187 326281596 870517175 272697693 583062997 361118757 792961454 630806965 724429346 193428075 573445475 151640625 260509830 8344452 290285047 189668138 461321611 370258883 725991937 474858326 936992813 176704258 942719860 319541786 685442013 389452618 938909754 537667353 879188331 129749893 481347203 205678964 879653232 229864134 369490964 301182939 447305693 334222830 809014418 68222209 177583039 32288641 994775819 789663374 905880221 738801227 894233398 434196781 556673424 214613977 438733966 268739155 395448820 153899567 919256808 131228253 478106822 265176680 421630175 79252896 912237790 448259790 676031683 317603232 787776167 56397890 448597868 4232519 705363543 112485888 837802129 108341084 451954643 426774495 942134716 743437281 856264017 389500779 793032543 687454026 726979820 257734158 321993860 58011919 451185775 274598842 827911853 798418528 831396466 66913543 785110537 73920325 906259246 18245231 451467031 408730796 639624661 130351291 669244463 57835645 204677405 145768621 946697525 434477205 979543698 247570921 690096434 574913337 836844009 576359351 793698807 263146491 915094573 665565640 762111082 93319163 589412385 467081068 850082166 623477798 930436782 202796307 368933964 64175333 642809895 477787248 708300435 703130712 852944348 668280253 700253534 541733222 754467981 407011841 452411224 436701200 853670798 360456823 620793465 549855514 616798356 349262803 370998982 322866531 415534526 328829722 647114070 103017314 712895865 568344044 588269658 28532633 836547078 366918779 680676147 584335267 659677048 380679015 738600145 443366592 884337416 683989145 909379158 47433979 266729434 148959221 496532867 294055907 749692773 365439521 819228946 423924255 480497681 28244944 419734374 256139126 357944102 219229757 443803467 93381853 627203688 295752963 719467568 378198721 562405905 423595083 628285406 437297843 722803276 27115369 430835220 7667464 133535458 14849297 850422457 62579248 868250368 392448334 848722320 66156348 583148001 569590734 594685884 124884192 459506524 391470046 741008674 485285159 511019931 430771764 590209303 515134050 683527389 481842988 588501468 13235008 570116888 40550803 336075864 229779539 418096624 60464729 938405327 399401400 874941600 811715477 877548150 548752754 710748701 163557677 612979253 471297265 636712463 204900722 637574404 482266532 832374068 456057225 577278371 63090281 164082090 150912411 867135797 801913198 820157710 618054706 975832814 677313009 996174836 158629434 910635997 626111260 812039520 288225390 820117157 558964116 637906410 575681791 785932266 569525082 701772109 132499278 160437667 113189089 858650926 262284841 334801629 328732133 340574832 62995065 296239823 157735955 492922500 419423384 676421271 402741695 825008981 529598410 900312128 100143270 554041959 82304452 421978185 67414168 843474205 55636382 131615149 82106644 542777885 40995384 304230378 286403727 487678078 90946453 878965647 360541334 983391235 517807566 682177385 343269798 718854260 214340756 388555211 192160241 773376401 466428253 997983609 148806030 302410313 278499493 606833141 586285574 933063828 199045796 328393740 186206482 366683473 121763558 204817225 139703508 937994755 677810803 754475572 384600092 746484145 543265430 772565597 257835223 459558068 139630305 574527702 58220130 976519326 114299615 820926920 676887148 949302532 645638990 827343389 696345956 954580997 839698250 865021644 226667511 675129232 231823061 739314282 258336101 279532108 40366964 133494379 110415192 455450524 173604767 841645373 676705614 812064372 383576721 774193542 298231402 606319274 262055663 816653798 360141398 750627092 500123846 587310696 495526395 905321902 166823163 595370469 156548465 271706435 125474442 291640680 251765251 458472737 254275120 564028497 41586034 487192443 413177470 835764906 665207584 947501188 331368190 906570753 666856418 744222542 304555089 720336991 71440964 629814593 543179467 571768632 535718964 855526688 281541695 899344123 394623749 887198588 634491256 676595140 17921125 878736737 804636292 895707485 162192660 936878608 620945468 744879689 164345660 915545631 459613008 750774752 119388853 894766494 211942977 903950888 766259151 824846698 555145590 625135818 502627601 729120229 328410507 652525954 157890636 649579207 532989551 612438813 453706068 626636938 353525210 569585851 220575825 512325646 74724300 415008969 128789579 854462841 393925627 408839774 940914 732475907 534557100 960420721 931148700 957204053 842663203 902134806 415569997 777026993 637410995 845197999 699004520 938276943 703724287 787976067 422191484 788932534 88423743 606764749 575476118 673624702 627140354 955814793 906989518 924454645 587820373 898380834 403620742 530881540 387091447 432213317 94696110 670377905 157515313 238541628 1456039 161269133 97387715 529945106 464582071 621093879 381724304 669856274 359872015 814215289 489644709 918976792 875583997 946689404 406759710 611940206 420080494 862697070 166805012 595604803 162261899 569155953 29375875 426266621 311103932 873127943 223741997 502278592 175102008 826182631 705018346 994390132 89605893 534872953 179365394 416705079 370820747 456184600 184647500 843186562 247471067 956530444 900073889 981869364 668234663 898607991 884963360 936338991 288633697 374082599 342239425 876995043 218957947 949230317 189065765 324221583 52270878 852139500 214046370 290523210 161000367 604480194 93992398 459449351 423265418 579596800 159960873 969171768 756017365 936271785 574883809 649545337 592242266 599960294 545429791 851515511 589143116 921989717 393494365 845074677 660017314 802936708 261989939 382324767 241136768 862231308 494834470 693210515 163057858 540624008 303219129 900438352 402723654 882784915 648318904 840630060 672592156 906116276 83777997 221928289 91778615 629383245 428693705 850592149 389348633 939933885 464083116 859557315 220661050 430037845 675012 251144801 78745182 331973425 94306089 730555040 134820901 176766129 9765611 737056570 277400407 872805585 583373678 687474513 518601433 617294421 54587296 791073447 717842401 942393449 618397002 728393948 440796202 838110116 312368369 794561473 605642663 978848779 961012603 974912070 342763945 452209698 418657128 943098987 560274310 976235569 523620776 758880175 446413859 452543837 244646757 322405537 252969211 649412829 466530809 903914069 749760430 844689357 202534691 745047061 328147342 587393637 71790735 230544071 25801417 772695400 617426855 991277586 237944966 826925582 114867856 210655514 193538745 693764328 392098060 782366126 277899359 558950532 175242272 811511869 63327946 665517295 232146340 243162364 151989572 416507607 240821123 875921852 458865704 729404060 618825809 661014315 315351466 753456639 118461529 638046658 147512759 585107167 369965884 618519503 115416503 920954127 557865372 849484661 4336850 720189954 116357678 883354879 137192586 195024272 20056816 635115704 502867711 569313178 155516664 943242940 577080194 994111746 273132371 564323361 190044073 239811575 63005273 573519650 138444368 785775623 488393679 590384237 280821003 369603171 245130505 777369640 260380306 654381401 552371625 770974882 329681834 409734064 309310995 555512370 92788409 326106886 282649232 322907332 183020469 921963184 171501723 444971994 424543888 888049813 763720033 768964375 273868638 462613418 220394957 514047577 347834207 605380670 152229903 899326429 286046733 668880819 534917685 536887497 259609317 895845933 378681919 657939270 81929915 407850175 204111750 349870776 62169186 287805205 97181690 660235108 445519493 831421671 355906733 359411297 144890192 875811548 769017351 945010625 481825523 882696702 437127961 932773167 812402770 842695859 779111761 851779487 357872257 396648747 329417350 588954636 303925350 324158993 286602354 483719466 124479043 628967557 55177987 561295189 240190112 802710898 561183788 822471933 518277052 779269241 430070361 727494288 345444322 649345920 456886766 557065825 192900765 655731231 631403908 995709990 56362890 941805857 221015456 597202592 211709524 966057036 893056941 946795148 87404601 200899766 68461846 655914572 631435323 924129128 123212859 697319524 677342478 777504197 416841456 787652409 460297027 644220473 36191465 603965399 565337482 734157633 126589352 969384439 240705388 773928230 369499037 506838410 126000439 544134614 182893413 189230204 180379677 496314755 184094047 922523132 337647856 857849680 626898561 989868582 55335697 172247845 79064114 782003861 209589793 340766184 209705637 946816822 847562264 900698826 734387725 953384313 503482553 854739869 818996512 995555926 679009195 770327289 425573696 653844520 525604323 632067381 32800100 958751724 433636040 649267279 68140261 700446096 513425515 739918212 476567918 849403848 166334936 928635974 500597467 626391592 493826914 863665418 190908828 321613800 174766396 830370147 35855429 379374839 112156221 888282453 208118656 474485796 39475072 915621075 53355491 494291245 254560184 502584515 350146868 867463344 314948700 513020863 404688691 912561118 458721575 772705360 410538205 670480485 508588879 783523632 630411735 827438552 332094934 338372234 151064353 293819478 237681408 904435440 761085492 931234521 877300622 903970989 137713364 366530120 189993349 378036214 279557326 532121207 509749168 880598176 67768549 99599747 88813173 385940627 119550151 579666946 377695170 994821832 663928041 700724870 75640999 375853451 178967936 672901290 551178851 948674370 536972724 571774002 374361731 673054713 537279288 861682952 509717407 681561087 241246237 381071294 363948738 719888069 180723953 639334096 420680030 491214358 445607485 512666945 83141726 792286354 259217166 998454076 234219677 722936455 143762178 547665553 420492101 919476190 128998375 686473547 408536380 942612107 548008248 589746620 360938693 478242876 98660454 203526346 177107125 444210266 133525514 917242525 912131999 951411477 382116862 965130439 45655089 200606683 120635593 126650036 123878650 879605937 538096761 621802651 26606373 191150380 165254988 920018763 568054162 599448969 388185222 734730288 566244675 659984581 571392358 876605954 473377473 836062892 63495301 887824930 792965784 827461175 459050449 813625390 23234095 533547573 15169494 90876927 43956986 199483480 49330703 752852515 667377004 750400086 78006368 419187146 262473577 486419592 39971019 867825534 557023021 570649165 324771721 857739580 438090868 466369124 352581862 809591096 746158571 896131693 625170964 959652264 910166636 953372346 245767981 776164418 457549446 522290239 378496407 710215085 447387101 844776639 707937684 866515950 147493970 638900113 500529919 979359363 761880706 841391258 617992893 862223459 50372263 639482791 629697613 713174382 432365777 436227470 243909667 747787219 234121605 854201671 55881491 428121444 23935930 613984938 267820997 336823597 320586279 870496624 471236557 879048797 364116170 629126102 318991664 391988320 384218936 431515435 260733944 341035932 66023487 644019144 439161750 969904419 203559779 942853550 764835461 900140940 397591051 829081445 25247044 513889487 476121957 498010467 152070833 869944010 583114221 868550963 446773922 489842233 238310416 816855029 594316678 961732579 322533599 648020788 436424341 869487882 651747330 952397276 69029911 333678262 188471052 859393412 575850729 840108703 677549640 853284200 274835145 895517784 841157859 977788809 85599175 721139685 202798942 739695101 700148603 940941100 123247473 625268955 470695143 909158989 674015030 961860556 161259540 981709912 698403694 961050403 268594994 881917316 364355733 800338795 487869992 571747061 176845909 328553523 3916061 47648821 36461841 343659491 183541404 784937497 370152007 891284690 756363387 952317179 767095686 791283245 517510290 707870425 547544654 825287114 655473181 814719940 752596229 915213343 854349865 886574397 480946407 797191120 142052763 660767738 532397845 670739128 158905441 648126464 299853648 599992933 562878011 737691112 736248803 821980359 737243023 893477659 752141740 974630465 485687853 773257727 133154163 366893481 141639969 583957990 309306295 568606424 131316320 277763001 143462338 821335146 728390184 839079437 291341608 606181413 33291863 291924261 193975657 383260471 362609236 467470542 112051505 974539170 434517148 482285655 257813327 386312788 25023446 101912909 23893839 101558465 63880744 190141756 57905403 176994967 124066111 295786945 74310628 814478791 196565597 872903445 453177810 864207887 749547603 935163142 879507446 958289251 611026709 820263363 794529764 893468832 462556477 484471711 349945279 810105185 97690862 867183724 554246298 598311727 347793629 800691446 587944715 946103461 361144910 446940031 117178070 758469248 377711063 432604030 150668463 661460489 192269934 275529590 248645515 592725295 227636972 315031523 165125792 973836189 284391765 602779919 26859254 816096377 730972626 936537824 187755939 803553251 75939338 750907309 695103999 970799658 25322990 353109957 123925011 126359991 3530601 110768509 41123595 993348182 793064884 930911436 597887216 662512194 129249259 207553102 5210553 149018252 124273913 508931463 52559975 633438606 594903901 961211520 950630271 979293449 399798537 820268404 354491185 876850870 458203283 544174128 25630895 776449775 527577516 739184982 593017370 605949662 166555085 623447365 377204440 778917599 330077192 515203775 30597479 74705818 17515048 560600020 370993138 825803080 540763059 856818425 213961187 490100444 259053235 832409473 66490744 515902678 123027484 467502862 141301526 756490364 5528087 162869365 78491394 664405811 606714575 760449815 152415349 820809964 817283324 914913209 884650423 904866498 539283327 566480298 277191588 956754740 68131939 942719069 475938578 533034930 268718971 710362873 661229207 755783590 564259057 828930444 441989826 508850476 31188875 912404693 519232081 779088099 531464642 842377227 297495999 759001926 294156226 828394639 647885324 828583294 389436368 508615449 492362013 825326988 274226965 955055590 423600935 558479443 492890322 511457044 116906700 447914393 130895881 642561086 139355004 412794537 89668635 575720723 82097527 513090463 143467327 401386703 37365756 630065876 14989482 459197764 137614490 245061657 14384364 556523066 468784401 503078199 59968636 329398351 80429333 391082868 56091652 59496688 10274564 138103483 57347894 184967291 137760894 908069505 324844086 937233770 795149345 881758026 648992375 700195506 173691149 234118918 89358769 222597732 159549855 291094688 103115870 769820837 640953709 945198024 463884845 577138767 388422000 813350440 132668760 951051409 594997483 947975360 25746349 326731286 306629191 951893480 23579871 802230066 778532669 806873737 164835642 282787814 103996332 927883290 35484511 150606410 6666264 539929996 219868336 542906330 20396209 941589091 350480697 909842499 893550934 924825968 857200605 893358568 92874165 453163038 170597754 651293039 266812647 447390084 37535229 522614170 159344460 914935889 495382636 800324343 580711094 837309972 33598331 325657239 75628877 330766459 157195753 318174065 115478069 894937855 633769103 996814063 188408713 239506579 228386906 526002125 19962646 930483882 759430513 948981105 86171736 524807221 242341749 540544839 342846973 921709103 578570190 680705465 184810878 417039899 147183150 269653789 26495352 789439042 239347410 370828166 236121096 685635695 152907694 244530419 131043117 658351074 156450635 404723315 278394107 521295824 475860067 871471361 67270382 219405846 118441174 533728722 328769333 583550724 301854074 429595754 389804208 673380610 248517352 758087328 576430593 965348541 570314176 844797952 704537247 959100701 175747968 644970902 611561679 826223649 508528003 669607132 84805320 934423361 931038954 939960013 847784060 947203758 646717976 903210683 625539875 824388194 332867393 898435122 492438177 499213841 70615389 727600064 253076862 287791288 39627873 424083113 58502537 89907857 53394691 761621580 384203813 893705292 792403597 870163642 438488047 902190767 27822825 630392393 219705275 714412455 561130725 763996556 11447905 193842445 187471907 318115069 160698620 384891134 24083501 410826026 64027941 810520696 701981234 801616242 247863525 817878508 202751574 401705732 154123240 678127955 380822336 972305614 419751 932786622 532059330 868076802 234632616 250327677 141064163 744269007 356696472 976750768 185178565 232687014 86845005 94245444 67845875 859584914 593124188 706276728 188981516 595523894 382106513 548456655 357501438 421201846 191812736 500284305 423007571 694572956 268779967 315792242 188414130 260028201 245755781 287067235 221907611 609438766 475228956 803205311 207838188 320684928 158883147 951657029 386297947 574346719 172926528 695882764 202788616 381869151 125319029 850152209 525664055 691826721 359156133 359447827 98217634 617845286 609816939 872179041 540601834 793169289 141619449 147996765 93845222 521455553 470090194 714963500 398226982 570359150 275094978 877679375 52360182 862221445 393090049 843361318 341894158 449847894 272590087 539093983 509246869 517764223 366012567 819788319 391397230 914880340 657786109 800388358 53109391 472758278 306895477 981393961 883907210 973516721 216421016 427252198 337144737 462206478 416021037 574895516 324839369 566004591 159953988 325645073 192425855 488295244 435368862 948559095 196873629 753046303 263231516 387649333 288131580 713946633 27901010 644961965 335486170 961187190 261210371 494309917 194061172 217721477 106232088 888648320 476662850 522888479 246515341 869396023 264474073 308531942 166809509 493142318 152843286 267171804 48298407 138789281 100542198 390479708 170494331 591217478 439034863 576277738 437640883 972034042 891233179 893576191 496688191 804501181 573150848 890825471 553399453 661057917 136609398 880800390 769856028 949834896 267187591 478045965 267952284 835218021 134462839 961655223 203186109 555488513 358484836 844665152 530811898 859738667 386117096 550910849 228533899 742453554 178170403 294213161 198692923 627907311 254211370 383256815 142754263 454960385 46501512 522128524 342905968 552440851 176389977 307831369 187872826 945994964 582043663 773365781 315509343 686606712 30781532 261666230 233028510 730795091 245483710 319057665 119094963 129451256 23904898 448323779 281741664 765397900 191632909 993157088 179076495 828230859 261316091 820920311 391031501 808680119 682538182 738566799 251944106 269199698 149601839 794321749 21818272 219994518 152579829 733320720 552061184 749548838 645747345 924996061 37944504 295352344 80632239 118748826 69907434 306943261 159982686 966255670 768890986 785682543 775828695 962359066 332244229 567431351 294127583 820877385 461025506 734183512 154926771 776041365 258476393 327689555 309737697 908681261 235884338 729034706 704822216 914148363 76035138 679350739 265052480 817859819 387552253 705211755 485217754 842715959 439387428 516453588 146449887 921003857 677029849 682294315 440276208 800275196 540696603 737552503 664177238 911618101 748793944 774347081 593947397 650857408 176974584 988410372 782596080 840813618 141753502 164975170 137217610 310979144 158503306 309766991 258456413 279328319 151549086 847518165 470979203 728210534 158947466 168093358 102898807 838814540 544317366 757671735 438460461 472357545 466590124 525804224 309726743 406091043 280645113 462452288 327302401 348816299 113232142 166122603 41133545 304424192 102068869 532860719 430827427 433823427 305637680 407995711 133548305 329044476 199843917 358932618 474646 835277035 339993892 849932892 127113302 181653086 69920835 220908062 122899562 920639950 833742613 998316585 840098153 955971338 9606316 528707950 14022224 864491784 807367393 919772831 806293822 952018081 343150056 356596786 95409989 602136776 326043354 673028179 412094700 789815921 544149125 792755135 478898996 802201452 220596444 462698108 148894149 801888353 650820788 672453556 469690452 821297988 69017116 216218626 8395282 866726498 501112363 685673808 395784671 775288513 162803700 580309471 517662669 648995614 156825261 595803869 182654734 392969509 138673657 547765164 14794600 897713138 106960299 536948412 152046339 415865597 299766443 707115777 316529480 416899924 80667404 912447378 270324788 908492318 515142236 838255264 516504084 747818783 80279325 315348539 241572368 684809188 211294648 435037911 154112601 497454025 428580307 868576032 465973399 814626911 114674295 682605291 564532758 591270467 532369164 800262139 25643545 515524249 394475936 420870010 250031787 293481084 112275688 746003921 156861563 293285027 83867367 772853561 419722958 775581685 354566876 392935400 358951859 907538900 569236072 631888070 355389294 616148237 584304261 913523302 718987974 780295387 766943089 880469906 706481140 949805787 660733127 682182940 345444506 806988326 435654561 628984334 137248160 605559565 102939547 864133512 476956128 999237599 703250851 804913690 50434037 314454603 197481447 585808465 524709851 971666423 541307128 624594717 126491225 639743362 25475146 413799756 45231950 444315983 126828247 146822918 138968449 815453789 389226048 576651739 78874597 457743856 62334380 279527183 117085067 160160128 30194247 222966977 11324810 876162109 56773496 621074000 7105122 116311734 26215381 141266175 95608017 921042862 836605610 883275398 748416173 815474451 430888082 492965729 29659180 972349207 418091059 531442457 255207817 901816693 386143881 894464694 300813354 386264518 170970768 372809960 213345839 940084787 270042687 754547576 616265292 959331930 141844605 174917730 148735607 567560275 482577830 685798659 508516570 988964403 639702589 690488188 407517368 411771962 116847728 416990550 55219015 263054993 13051376 932754454 311772909 357730010 82947046 870130514 611148067 878875651 607150768 793074841 226567540 827783660 716729044 856777019 555069512 723101465 305652297 742875188 70785405 771754907 7737162 967356166 627615870 836167055 285501841 289718180 89937703 386129158 252035691 408263803 294958139 917135172 727568506 740162898 435968669 760923715 616373365 774178140 260286658 896735416 126629821 700164803 688637690 964800080 372428120 657574242 419614230 586431278 525823384 602154801 472566520 679735580 126115972 270964763 68016042 895043807 457200777 682742863 435154273 979656669 856974048 924120041 176153676 731572175 20598236 959693458 429241644 958910542 516817496 957487245 704788941 736321054 604370755 931484952 591700826 918264030 842838827 843698933 805486104 898478843 897364432 947874144 161367136 385961520 199156514 752567033 659476212 811956249 447126160 782479116 553320705 763234590 5904109 590724694 100237075 643872704 260553559 792481121 121224295 721524023 318324627 976892626 118700834 908446831 506118454 900695516 805970507 808418708 784290319 913475193 170952096 721157369 696997144 817275137 742314517 851076505 657887672 663197201 516480423 778712278 73323237 632026451 491529567 817077130 243321834 337348489 139451207 190660409 135429881 361836315 309465335 397811847 362575570 929198630 379762956 963252327 55790253 245807522 130685755 785054038 689680083 698586004 243880830 250195684 74601619 854532099 82176461 456836115 454520478 525415907 335148654 486119441 23860159 952508773 545393982 645981735 283764661 600055478 273009976 607155058 580795799 859194222 163425607 386849868 277486717 487847966 56489931 515812339 285602212 936340265 580108259 622065503 491369444 703016635 324062099 974424696 427949218 623399848 15278479 130049028 102823480 761563923 239036594 690142082 203357808 391381515 117586501 624343363 215577940 275353421 97998539 599110067 385870182 973962868 349498328 865591597 862122869 868188892 787551403 958170605 707451967 721531925 264040449 621352369 306774717 689720070 204560544 392864386 109523538 421799367 313691283 890258307 507696020 766099407 174059339 600045900 482198083 680918064 15266552 935402357 322917257 927330659 623415783 911538897 592369113 707439440 327483244 703668185 496789763 668828241 652444835 948869621 254217866 733987640 64946475 164987799 151895546 763642765 579070324 787512194 511119277 996576522 639751787 694586049 339688342 694906587 258276127 818202332 444160990 767435568 475138974 963186386 199243461 851679436 157187985 960682928 280166269 689956889 557934718 909055248 442879392 650966063 26687125 935859596 572307241 968485964 659100279 792815286 180193064 833592918 663235843 712759314 604537626 645476074 364871774 853597147 163228106 659147662 530029518 818455029 808112969 980485857 376267194 965520061 811183844 880293091 188246013 612285060 20393197 930160468 627589713 635423309 352966272 798890390 308944298 380340934 168332325 846829695 325922487 845470000 133411832 321378086 133970008 649853301 190203367 382643852 253764862 663105067 305099826 665273024 515915301 875477499 639312049 856647937 648743140 921809710 703837408 848952083 547828796 550601360 86912228 858962660 367208488 518440881 147671500 412406962 379360880 537844639 325253683 790327384 694815304 938278073 424406471 827007932 625122119 700778737 581907536 994596959 345889859 891969875 135690127 150629298 74868603 828826404 411413885 648382650 395577076 570885175 297278848 543981418 92237996 760216619 107381662 893499786 167189042 872477789 331136864 762567907 328828970 834543221 443006340 939587392 471953037 578170521 2942478 572282364 224779969 610441686 152753467 423491330 40493677 827646911 314468163 583716441 34089397 207773631 138439842 976808864 452027621 779273883 384104746 818011880 215957184 279615931 69943899 322677287 317053572 419349898 413023040 461208672 358722862 827347611 760705448 892715530 488358464 994391782 505798346 509049351 320453903 912551518 259682469 830622525 560095377 883351929 532237559 599921138 7947659 64954950 4321791 457964199 220200792 933189781 501983970 945016172 343050223 714619301 436664969 919285533 249955042 762584632 747921085 932393353 689184540 784698189 134950236 456545173 72427357 126019648 91782056 242764595 238782087 598366475 525854193 655250473 302846201 947094909 430521554 440968512 111494711 819120884 454408057 618804749 606872384 836494713 115797207 599699337 303356708 928088931 442828232 498560405 78684343 613973663 405920391 836932259 251475635 528020272 17045407 632328290 463431675 755009110 198977809 415692956 64062254 683890569 277520972 648486537 408827448 901306757 602202594 731290195 166878231 793207339 29248204 160091454 84622556 969068873 932459742 963012151 380818721 441031584 264170569 597404107 595705211 719752121 356117910 981518250 34293740 94062806 23673268 932719363 301629172 967184090 448167511 624787491 352929901 985308454 793654655 826015959 616633129 883007803 474750124 511850582 431099896 908041717 661198400 743337012 600959950 846445216 558349124 570089078 193321558 601311165 565902281 848814247 713136955 802339362 45750139 333725685 314697212 396469885 196191499 621475699 397766336 504002060 238285615 799720977 238784802 588686932 267505277 866695048 730994114 974532356 60281684 741883563 645394788 794102677 115710699 899345346 359570157 834409273 760321751 941669338 684710395 963059805 850022889 977604860 378384689 572263157 560359738 871118845 803307087 874213303 586401139 867590584 101021630 778630207 130725477 526501826 183588019 636273672 187582699 731563139 674652889 880578964 417290465 669239579 286839561 582074817 48220097 565546951 101851559 468143406 37283028 351672291 166577757 236773066 184660569 240651137 132444690 503240135 477588745 888672008 414518184 443507850 171342367 295514091 70397361 647286931 429860243 560425187 305629980 450399002 126404039 662668407 349788423 957522764 51797908 382732734 212969567 886374574 313034609 748818948 586722730 792148105 415763492 619552752 176587187 463520266 458112716 737755625 647642199 720938634 661075370 784150379 513190331 828439173 800353445 960940455 812970925 894548678 300536731 380390661 162417034 384394866 87366089 164528148 157698021 713815172 29463643 978359941 715770730 852076529 501242172 670545590 283862340 951038796 239530836 600168729 409432724 688385676 161534952 959439460 210687639 377032967 111040110 856096471 5862157 785723894 602460282 671721548 191310167 456807457 376393654 926781594 149577399 794176900 754886471 875094309 647464883 775757121 219916763 615978009 134513585 876536077 589584471 611790334 475573272 937020189 288063363 615450289 547079877 744248166 707371945 827445192 45918008 570872237 298729788 361387796 269022145 671773636 93398013 394872172 365398937 481960353 77792919 405669032 14308273 929485196 741761211 834260169 335046761 833372851 558140022 911816262 768959664 927740962 856257638 923980967 388208841 674644302 74639956 363882109 171028981 507095159 460349584 811979040 505255277 644037419 527536825 763001206 667593801 898330319 588505233 823699498 82081899 897096488 91356953 138513273 80607899 481465591 458147605 886639364 634618634 979761383 895412156 934467012 796355003 842097237 232158841 814551844 691676785 768587206 134178840 821221680 91090597 736164094 50631528 590583339 428182888 971834913 51861485 296633067 283781683 304473396 114893014 402901190 143535162 799616515 104609337 931188183 3506845 46727665 12902076 877107374 333176075 668016182 605753937 990980697 662127901 852102789 140564184 394731188 377585563 781059379 603551696 869793064 141629307 997066223 600018150 624441252 55103384 260992309 186865771 390106720 7602799 224922373 145899503 677444193 508436458 521867074 303818369 736079843 309297250 359101665 158331083 845088943 389120750 793399871 392530494 427476362 345657043 814813098 539571001 917511370 187895683 616771503 184594178 905139411 327726684 534246048 173191737 665516524 593770531 665732075 282793577 933467939 499582954 980596552 361727928 680841799 164673080 432812156 49758400 969043974 400214178 990855584 788911052 962711013 921621413 951833014 112510734 994871116 788084264 853415020 558475268 981898065 444159524 888664954 440681872 461111289 296737413 624573795 545007653 852740458 650129460 848782015 41480933 94270122 24369700 710989654 422056940 433066742 153151985 498845730 78608429 207166159 189195793 414432043 120558689 738628153 680347439 913625671 54223933 306581379 260671396 907190610 311155664 733625879 83492885 323478429 271621443 298249590 165319082 452634493 156424988 762953721 678553924 979319291 64029219 725355667 310743957 966262954 695246174 849924498 355861866 449570502 336710297 792807934 304606301 744099813 492830583 725218811 116743871 944738388 787363624 958680935 160957624 999951718 736738411 913651170 411231820 520864976 35108735 449187454 98993516 336758226 217174890 497939182 5877102 199112499 167193940 607648966 24582689 248777390 151338485 315269720 252304905 965550309 463774131 781923794 408018871 750017300 297497953 695493916 361851279 918993577 580619813 963963679 865138198 934674999 475832519 657098641 402723594 706615561 515610992 659858013 240039630 516336748 20453867 682448812 117147328 920921910 413444758 594209549 522144875 938368208 4317847 336983686 213530545 464674940 250426507 814092026 208458403 655942741 537303273 995390334 593536490 912872683 629960211 700687035 2953461 422048467 161057744 753525614 149198312 200630922 108368691 154549978 10713563 17543244 15058507 980919788 342202459 768423122 381608379 518756349 443777043 679167498 567437339 874589279 543447285 989397523 899958661 966644290 611861941 875273557 582646072 867524821 285708969 808658495 221064505 762766686 54391186 615804816 586740210 644010870 139816242 169913389 124358988 215946011 78226628 535245541 140483034 823052903 652685291 707252431 605643887 770673963 174704175 996942716 829903099 976148572 899943156 915736078 403748629 593590789 241207421 292366455 152246648 993464010 373740790 479834929 190126134 686738205 43053602 122199653 105941189 497329530 189639150 383688569 185823617 262580720 126861946 576237150 427237698 830688660 665537460 824672298 571944579 578473724 238593539 669169405 512071179 540659741 262378586 983107436 945621715 949682898 229864008 792136042 691149525 972180761 347662157 838446877 338014187 401274823 198640129 393337503 147152052 726724732 223318046 988376583 438651163 777832581 728128518 923599406 568223999 932215490 413859879 905694981 842045350 881453990 453458366 908186909 722784959 886653181 8234017 93082127 39657759 405789232 283604663 632393499 465446967 622978189 579296143 650373475 583978045 954853265 858943290 992290832 307242465 439239408 207096848 344780067 209173301 484394425 461819652 703358791 297299260 506460742 313562709 728957081 385537075 903051546 552611353 962730328 881454682 898992347 717547764 743547791 576049328 957647757 122450325 283782116 52253696 365688176 302876530 400318053 51166328 837393795 682075288 887872089 401524404 611206574 576268582 739632257 415008229 511379772 377008893 870311948 317602053 759498651 466592775 689593522 154508711 461933709 191650082 942758536 151026184 319380870 192883620 585590129 115478315 382238136 357064087 508789275 230963726 531366429 253464481 860504638 571237989 986467167 579415516 939971542 231039253 952618216 424772508 513942972 97395238 207636807 129683347 555776774 145458118 279833686 226187434 540680287 105104214 905706402 748217780 940934256 878688401 927383581 866846989 871361158 412508654 615584235 526600736 919241641 25135667 155880922 129676387 221446456 3406787 108924872 82374389 857175640 683155814 702554901 274833752 666440481 239002950 784469706 224796951 856499799 423924281 592913851 480975508 520429136 133945070 917974235 297056769 691865311 1564673 500019130 73657015 540619848 517202842 823130295 84432535 207849646 106746102 365665765 355320356 993921051 285849301 544755820 285015012 594614689 455725957 734177932 341613464 832630923 394672143 970661762 850108469 863535429 308258250 989475158 263485177 786366470 410803943 450659506 428257931 994128924 745505216 975217429 140006517 827002373 146505380 825938274 495698238 703470065 75883897 689864694 603956067 872979793 577660668 853738090 816137327 980235918 159351418 940854416 425751405 450958613 314592279 574459668 517661032 527763795 318261922 978935742 29923468 93185034 93180890 664805578 426672330 655793217 223875425 775534814 672234998 691903081 673437245 720438422 610568920 843037969 841602937 877445164 799299544 883137564 242929073 355294019 346358573 516363473 433111112 688379115 651406102 792428076 524807717 999241923 850010573 888423153 637035267 770786019 225845822 846520999 124841779 670622105 350802296 849150333 676563598 895805022 561318298 849562457 96989443 261562351 132143530 331940156 323003350 912674956 282283191 397404366 220787655 472410872 49603505 333942954 253711698 322927483 102327377 823249292 703008896 935446934 180370821 604836646 62829065 638420662 83764798 719835249 408164428 580643375 240613055 913431006 854913543 930737814 348073482 844185028 593875373 982468227 202062944 832378654 177572482 382914271 11467851 209632628 35237116 954331861 423929770 762326634 115848910 553116759 516315413 995410659 602162316 889294544 653838807 882685840 220963875 586983329 166628019 984815974 397435536 467281278 215917779 935582912 254992116 654984666 252204587 639357026 260260641 564011329 238104665 939811756 520648242 561411848 12706846 683969843 527839898 975747612 378494462 980503546 746395638 979246307 23074861 288897740 223304587 276187984 267626018 887987159 19186724 20728602 11263545 119006399 112914350 471611162 85075494 939351044 69826822 581574551 241632983 378626433 228880118 427460869 196017335 725808643 105743129 505281634 314003185 654394587 348527435 911048250 195114842 503696158 331754017 691695177 91768587 844268238 605859517 976636107 799396435 819167957 63892287 157278508 17487732 89736812 54712289 234225833 165396713 865380649 331703879 780940076 561114874 859877389 187757144 300651399 296627963 729981091 94778766 862348352 328231240 887832594 507071330 841386949 95096587 773167369 679280284 954509122 417386349 542158643 326276073 957406657 106452720 252966819 4652469 668347343 248407751 579989818 428796210 689067200 602263085 720848208 596715347 599379782 197969275 245480025 149843223 757126379 217291207 301631635 219243017 263597749 253563786 913303390 544478107 621897544 264164004 761812013 227015231 918667836 845872444 876193820 746578092 787036984 385032167 422681916 310875359 684583352 393266329 829266575 736141245 874351419 609891238 697455003 433678869 937556641 4582118 212137508 153550244 706946268 41030481 498626418 285445881 645132984 372239524 888498152 284795820 533130056 186913930 805410213 198369492 813729152 7951735 793632777 293782715 416972087 137320053 457245542 66887232 356631465 234072823 882101621 312518316 988755924 97128338 402004636 33195817 254650413 124232953 741902168 348390825 412374930 309074766 731600527 9844384 680146869 530114870 894088465 503009162 512358010 239969817 558263862 90503317 791269702 94333152 741759210 180382390 581464953 384940700 978302085 690278604 985933992 97455759 307403307 278623263 832370461 440451598 661307789 290706956 303564890 227589128 334985465 122470773 440382418 225736959 966635203 728352392 762832743 6969322 481119416 233824479 441330809 8538941 682501054 595838303 660078420 430987829 933644084 807360156 952041590 745912049 978506967 157568804 364871270 110085736 904588088 146065701 439186626 182587986 986183981 560046319 843938243 921527 562346947 468510937 626935216 168687585 366206867 65863284 691994789 288553263 449148381 377369357 606758070 127768107 390622029 212213463 465706441 292454988 575034107 120779769 586471306 461384776 814515160 465191853 535536150 134570365 547660635 221021103 378207110 285649797 995483127 63069630 344656981 133891895 880773449 826614851 972258448 471583975 910149093 209309207 695325302 455461787 862452101 651365245 974197945 904262365 924052468 266705020 679938925 470297655 567650782 560291140 894581691 692255744 778458417 167302893 551011174 289376996 530335825 70414775 141316040 136623370 797378246 206475777 273848111 53524874 708158065 628286807 795333404 25717445 309000487 195999349 342758083 135886925 518157715 64489287 505559341 412551818 736228873 671941221 689832292 119940833 319384882 106244917 214532355 210921705 603502663 371366721 559702667 481173422 887935003 340951329 765824800 670125067 711646884 106949200 220127058 122443122 153368084 62843692 745317389 100885350 195052241 117186368 592750856 499073980 947067548 899102054 982268106 592767114 856852129 814113063 929091267 624740358 842611180 797843720 916681076 355406978 755058486 144529401 389509712 168666182 863706852 575832628 753378575 634244361 664095362 68410588 238473248 6465575 762721808 180441572 220890310 210918680 909619318 608259153 774468595 458562257 462616216 73025696 765102048 702070764 970446389 649114776 718252343 636399396 765305028 180916447 504737248 194900426 730267632 560735377 680508477 437474379 706068850 105189098 490665625 268407862 764947799 314384410 454057259 227115025 848589475 795405797 810600278 548940232 657044054 637406143 677044833 212675523 838891647 462249959 805883180 266222054 752889539 45775012 107477750 39481046 63456490 10475420 642015870 35452261 324124617 125700962 856818436 772210446 877274459 198987011 384543872 17658841 556230590 510090587 858635237 536293127 846525534 295433613 588369358 561468268 784831656 157870692 937605411 451714330 777812023 398953600 582207846 136049377 243139407 104932723 470288467 170466429 348138381 115993143 408408309 58517176 846000425 217088084 763376604 107504582 582366723 93724032 631409575 116735236 884308778 321318681 848239891 267092377 543164996 341962115 636303968 125211912 395609491 229593059 766794067 572756608 939566083 309913119 900503543 259106006 809002472 712585372 902043639 712286766 943830246 891173893 929632822 720394014 997536819 742841716 821425307 485007345 892243308 627004264 866447364 179678749 595427864 232720126 724062496 578365603 699604232 272454766 516278305 189895894 962058738 711740709 786735083 126260510 504605790 33528247 358728785 145761132 579662176 294168003 621842092 559981461 732392367 643753390 721111895 42130419 400947202 210234149 691361660 28279067 308705229 163876161 698793545 628389890 897086008 657075187 791538511 201510246 827376849 285916351 562055836 253550665 937289145 316518659 726773394 678309935 687499863 491004094 892377022 351112893 739192413 206023609 612754660 445323428 574151337 297319032 913751125 671172064 717051525 474690811 655598386 464675824 620807129 493029411 824878475 699089991 852346940 221681656 821758488 551669848 726835525 367460609 731794852 55954912 714209858 265753175 381765153 118069958 777763581 389463935 888639927 647522363 846319787 544515387 828758991 32084533 114221577 103440481 253168776 249876072 927817968 750693374 762929186 64297724 613019658 23118813 716869558 347510668 721489729 460988738 639749671 443904060 856039533 246913130 784549329 410133795 774758321 49522878 746938414 289870387 510191857 281172021 655402734 94021434 568283645 139983740 587042037 532611515 975540147 609487413 848198081 130670508 687284054 418331619 658646184 622506808 653295994 341531605 405177594 471793 671615762 536080369 597024092 207419388 862725768 28844394 822563746 105528959 740726213 62184543 968904190 844159571 965650125 226090257 921683391 776613824 945856352 65567083 968652896 49663819 942270665 51697842 503119176 148940773 872976885 401694174 572945066 127034777 652831796 522040564 906535056 803494942 834734477 224735272 414498217 170736051 516536632 71643305 297720050 297626446 762505475 401657467 851980214 322572380 355602478 23274395 985278588 402119783 511497567 390079472 463652652 203220228 695184964 693101009 905021483 297958772 515377851 429774479 771848944 236467979 248021271 202279882 717506838 220483769 990135037 185084039 404317530 71793404 514851623 283132107 594417570 495585937 847406920 86883499 303504302 249488725 868671684 651885307 808931847 204516789 490263350 238741163 256610864 189935627 363691979 288731924 867760553 750036170 812771321 163240984 573050331 399602592 457955771 388914025 899833530 120523677 521076175 38827905 73986064 23966833 239272144 227768910 678091355 542357238 820793810 769826465 791245892 293769648 778474007 299915037 894607466 200455433 335093392 188303014 625533914 323515227 446584325 357359708 460525219 161220765 563134458 498447708 508925974 461026802 581360263 43680588 184070494 34703630 449847129 108821219 780867501 621161844 785996501 14077640 216552851 76378882 584649373 134174580 275802941 196288855 483097915 173451338 700145374 628407166 912659140 903315866 965013843 644270775 997330034 106854940 572888952 184296021 447387674 389967018 408620893 270838559 682217820 109322087 176642871 71486008 108615306 88764916 562651247 146759382 869298577 666512572 805693393 491170808 977322907 463421706 874054961 265299574 709485535 675418847 806252987 44753036 409495129 228178106 943409799 489190525 599978779 299703036 770175659 265939268 912407442 485050015 999118007 601263279 722399479 195925679 317679140 63119012 840941872 800492944 976248813 965097296 967273773 806008349 936573710 868094199 975153660 494535169 909611897 612922809 670024085 178091376 698454503 184881429 505900637 188121612 379012035 377375631 891381706 124839122 246879282 58792017 922589421 463826980 633914834 561069120 686682090 551961600 877809226 251687002 862881137 536497459 621144217 617398358 965742171 253341822 672595185 485761445 860122151 49967945 982097587 771316906 877758677 184857205 606431907 183585433 562826214 483927483 714443358 322244284 484084111 459034575 964640377 245606405 640869854 315767899 945825768 14044639 842328890 688793735 831041710 139443340 193726163 93717222 358422014 353357322 816425933 774050212 970966008 872025451 908377139 804435439 898979842 119330438 733103845 537084993 807002707 588086047 759387534 592051373 785759713 682824028 774475082 718310517 980849280 310066677 705131898 133370788 475165020 274818185 315320973 151255381 419834919 388838994 421573360 343058550 420987045 174920119 350563050 138459178 371945832 168981208 349192764 267057928 443005450 415079487 698690908 515029165 913121014 740152910 754420492 637001886 856955917 726114873 794005780 183169207 348860048 168232824 788439073 45121780 431850985 163968787 175083102 66534778 353055338 68212253 256689594 74435361 257437958 96244211 449527039 396296337 722379304 647208990 739650323 715248535 755846972 709163848 971768338 855188803 932540504 357883893 569694196 317252877 676412203 192396097 946531078 887468668 946421831 6079341 619870701 124472279 741460522 215685270 514117463 498670354 634322333 616846597 923437448 338672824 352458825 90715960 554736728 78312384 654287208 536638377 993619262 302264480 955274428 504510592 563224831 273803983 457728838 9410514 55919989 48144785 691673882 38251581 458472757 11409304 853702067 606081075 786174203 399345214 925173720 24357683 416961807 70374097 875043014 804585933 870457693 451394165 641719944 190733187 701280201 419559424 976914520 232667197 585341492 17274150 145730481 63105738 904571235 259463944 899713370 440881394 882831531 363308751 653820212 648522606 764036753 71908280 109384037 10857738 325481210 291981700 373304692 99272243 996424830 967171656 977936685 125728322 563305409 201274906 648249343 330456163 844667188 439153401 756292554 670352509 709075600 64730486 765616251 518876114 617875188 124131158 582589585 528153007 657385328 385284543 836068501 766519900 880696773 183576023 246675194 174109822 810243402 440540208 738893831 719655353 882771363 627522465 634880485 296343593 372495043 181447519 571319989 400061230 524799441 137240978 581940148 334536067 722277332 67703888 849814236 604308015 956827482 194722274 557350872 223450299 325979191 183184608 709437400 95781010 472045638 242797355 949929805 138123061 258999705 199440271 207580158 82245790 188490393 129187927 142865693 14029179 899102372 687328312 800265948 213544585 401894746 21239819 911298015 558374308 795344120 781320111 846652227 364125826 582484328 569311753 894661514 89807604 588292893 254842646 406488712 170018854 798760139 283227697 617181562 506273191 645344051 593602632 920653602 214287819 731316145 80166163 312359812 51757854 287979829 228282221 543780937 379391073 977586333 519468664 829510237 436179153 796533956 675562704 870348528 199718550 783498157 710026007 741602374 388954063 940323696 609133703 911744670 46791638 828038694 167336845 823095829 338551113 649594465 18442502 815060117 644035411 967658849 126287571 725175382 145889346 255163088 52968927 343616924 81709921 243395917 23520280 988570644 382308886 703718332 574841062 939507785 330806416 861296816 731659867 974006179 863218375 904420178 91739798 757819947 183866622 376752338 24351174 867492482 169898480 727136153 622378029 926912196 585893492 956605182 357566065 910676095 746153771 777094620 725683569 871188031 177419332 938106251 105215376 141526413 15784887 300271375 93850471 225486928 114645313 981933093 51405133 330935142 136019521 877318357 311993871 349702894 35964079 574961190 371036878 996127659 254114179 456151494 64083265 326139519 50852900 882400603 389732356 987341710 243449041 565638456 490748819 551665174 26235808 514079434 343570967 658987003 85137981 532763004 54306812 869989517 824266706 852653006 22792469 638452611 427122307 861529592 14689894 860361184 16531108 275859838 84974746 828430597 698520701 795595386 72101161 440887857 297643985 504121602 444170376 904971457 322049048 733719414 646058065 910101432 194589735 720485051 190066894 378959168 351979217 991386340 371814141 805729453 519410469 708516785 17991651 194002168 27071297 226314774 36671693 898314449 689667781 891348185 369154089 999408050 200966270 820036285 517394263 787861293 493254211 609998474 84342627 811857544 630061379 973158105 802269098 847630064 605954594 943903222 716235256 865052693 58972290 105011051 22764899 137671123 116030363 243192592 10726366 763432069 595795930 951491563 921457859 997386440 134715474 876164885 5935493 370150757 274117419 300608127 167950976 960109342 43120135 692371994 517924373 926022393 122910954 949693264 617301685 753461492 33973488 945079160 366126438 872670101 448639318 896706780 543268252 840726933 61350677 985624331 673221849 985781780 251022158 268002619 158011202 882729540 742488844 836763762 411044829 957937060 549253111 865396038 344990854 840047489 144452622 376699936 206010962 811414609 57445643 188995839 41540928 613074792 80556306 492078272 199697608 672881782 103782451 436601963 46036811 302757188 242090902 331178424 211310525 404378658 7408539 698756434 307282699 472222776 408956359 710802768 97543936 582864331 338545437 503518905 385172264 547719084 73799023 339201573 39011955 193761915 77019774 271101774 232215905 321895695 28402707 531960048 265379419 585710066 488781937 585911578 102772485 589269286 561801177 835726247 386876227 396497752 153549047 783005310 119968213 802446537 276987908 796410895 719737182 870359065 456992745 616703108 109814730 146605893 75602938 447076698 223189737 477618632 37301156 430737461 156031685 323068962 272923816 584740932 292648524 567581850 271056460 550112950 27610037 734310404 642418363 763461267 599764738 688175588 45606908 713027768 524037825 667759996 100747144 313412353 272639157 754297864 171802276 341582228 39271341 641026068 272179141 371174823 162089848 785500782 199819984 321305645 147438308 194634591 91207513 775885945 542048171 969739320 330939258 849810382 218600309 775443004 523813237 528040402 366927224 655441884 81808025 193486008 139944693 619421056 34631866 795482106 747070811 935956402 272924040 337916622 90707609 979771521 721135561 951395538 943252716 984176088 623822013 651074403 204235586 325822195 26656534 665382709 413024870 798266489 201227011 677929265 495976636 796006798 611450714 863420388 576578206 886345441 487364078 817941321 268701641 821947591 377157270 895947307 152825522 532397201 104206905 486812537 389976573 674212423 537592215 574757064 570732054 661850456 198445260 275356453 83563434 617494963 3002927 957004257 518790418 646439865 124945554 746616619 329456881 794972466 587434395 791091854 695094880 723196146 199857504 643037999 305489327 795128142 695107357 869378765 640583963 858896641 453181374 636022392 269536398 520107917 357811700 427952758 45188632 965576912 114986388 595496759 58093540 810695806 680602363 774532563 207940731 927116268 158342433 459903856 217415738 846733687 762155443 773679280 356511872 384896359 115293565 873412082 151374773 176219056 45659575 592031350 559948774 710787441 346904585 556255630 211816416 841180757 676150978 800381638 193636123 487271421 229397626 874250962 213533592 592274002 26018397 341431399 328902594 664522109 609843272 862951525 292022425 995664902 84967402 443224357 62792503 840079211 17018054 693251996 54363279 721852852 329631585 662404315 120492220 123261593 14619342 632939311 55044161 973885927 822448909 934918290 138500404 520341771 65328743 135194168 31039691 810542259 20203181 961497807 385370133 573807165 144483139 702215988 701457453 912727767 710721393 733375298 725535394 898481251 581844997 811665374 516085663 987609108 433800673 845832547 10545846 501901184 461507701 693282843 548093707 824809724 174523510 445025099 245264353 667600424 651651260 659687400 609722312 932192459 272426694 868371507 781952640 911555842 878158321 980570495 452173590 590934819 389865517 575573799 500024693 516639543 366341020 591535539 476420523 909657234 880553716 931122269 563491070 804965650 367860524 538863574 10609416 745703863 128452922 412771400 412058370 539518023 427601081 523520157 186683724 894296682 405666690 611574602 422753837 958275543 52969320 150242189 96565845 399819545 338094917 362649428 22109258 172249027 89769124 403273238 265285313 321493156 135452655 841924157 813341103 987305997 519967305 817354954 58203365 939223054 935138087 961465605 709628561 820145900 268202947 658162470 527467020 575006864 357186694 894618171 76497891 163307921 115177707 996176936 285652242 532777220 13734815 514590647 146018436 243967692 48814672 842125066 740930189 985682254 516927197 779740139 300694215 547337880 248782270 765332086 386661673 482210828 218821175 346402053 172315879 778902912 371000148 548899994 216872233 366412169 309030711 831778202 798797861 852899878 310030125 468914270 67189105 193371237 139928864 708311205 178323529 756618994 186689275 815137660 723240136 772092960 213926118 932752449 506240816 956230012 142100103 143196725 98479432 162030996 77686742 307448435 62136394 101105222 93175722 237944554 92721828 797300977 405796412 912200591 34838561 779267056 603649146 661312114 101394981 613074018 256255424 362755769 263253358 742373455 135886286 610783689 220171663 433057881 16715908 773395786 475635740 917082157 253329319 725637322 642098891 879913830 565444669 855082387 263412504 362468792 326840847 379001814 264757477 797014022 510645922 954061852 123738504 559003367 494287160 756165339 551490723 880415616 126426273 836370684 354582637 527247517 452671084 795985458 47965964 832628611 294963091 361008476 275991190 867098205 209038157 441501927 164295387 583107840 546136629 567612900 181186160 694941981 594344149 790600539 622689767 952618929 276136297 816793160 555725141 673183904 671305413 962660370 122695894 597154315 334872437 821464741 320822129 400001466 285904645 655092563 134346573 976688943 404725392 505005706 33534048 437376360 208619272 290271618 275915978 981824105 101015626 197741051 18900742 398560138 6264660 852380462 407240337 954659374 697172423 767363212 612515281 711688694 246279949 899502291 87811287 875957716 7341217 297884653 226748445 962850475 841270101 857696752 434065721 840477777 666942659 818145904 98650899 659868287 308380253 674257871 89139657 366012148 80273547 97363658 79848863 422834138 327594225 345018266 308343792 738280727 679488072 889235863 239607132 786583771 587915715 961562029 770263845 949816539 313102845 766304107 719569529 729951147 343673953 548808953 462134216 687477482 153834409 633501404 313481770 319650709 275643503 838552776 354109405 672967735 150559311 799899681 708176638 773737428 263913557 952222482 328320918 579773931 341654942 858376948 694252331 747227085 490607537 586911013 547428303 933378439 310958103 436354562 204565156 383940975 352704791 503062680 248506888 629741328 542566016 736874591 281640513 680026067 2322652 81713450 71709428 724732682 463520629 554026373 264840834 553243047 410370813 908364916 873350138 965685979 325134181 850062411 346785892 567525541 258408469 783484225 584347718 874026894 418608001 785434849 720123727 811993153 352336343 643023317 374009283 735674242 17512924 498295244 294701223 638844943 411557165 812625214 513293363 761224513 555001476 772992209 216532678 363622339 191584945 555544195 58507076 747729342 251246491 996414335 894435125 999930224 416284612 657533391 284199776 588090908 272662901 661067347 459494283 893528621 295221380 994650240 625879219 937739756 386406500 575608529 78655709 608024034 196103976 425429786 236130371 545098263 27497064 833691377 39745693 952050119 207974210 821283021 192803040 310174878 147009409 989897119 896317957 957528353 27520692 491411635 295627697 992213897 4556191 448254520 37511701 122333471 108579859 973202415 220848015 294055085 190856875 833862955 27122169 527125195 520655678 841135286 621086073 688955318 601413059 771952823 140663217 703154827 432351917 962209768 924565694 929037733 848466420 934957152 143667016 953096301 390158908 537885872 163650249 503711388 48715093 489860120 25596861 751348900 87193820 694611643 350790864 442867388 159406260 627108955 71665086 424357967 143294858 567079397 480731322 512480379 265706662 497801580 163956817 749773994 74782634 975247884 196152496 681096246 524935290 795247962 382075000 523873243 61836077 356451891 24346040 394372204 373053072 615498544 179740576 625169239 578496040 716962193 11219653 540550209 231593483 735583801 100640872 450493122 193414781 567509702 531597573 831545486 504487606 663275188 603818966 814265425 21365270 815227765 752084789 779665961 178007541 943857517 470490926 634737786 287614050 733448724 223742969 454947818 311836048 787822204 14468704 163850642 118839184 962261230 192691229 520203659 410293538 466819212 306809870 481270431 406987186 987832305 843662718 993769787 567903581 868068752 860607528 985491206 405179403 483795246 411469161 542598249 277315803 376239644 201992780 875796364 408645360 840528851 777262643 993055487 329764163 542019567 541031160 773716046 593577830 626088225 65607222 988157591 148833499 580702530 64549064 579676211 167990131 229744043 170009738 851688413 214426370 910170590 494848985 696838538 644662581 741905046 470247379 510037418 292956704 362093231 159748920 755993198 221114189 849615719 744328089 888257517 518573197 521435659 504635232 692977956 463745097 998238319 179091562 190511056 98337032 857305017 99066550 166560292 70091568 411071277 54046780 462349903 313458494 949336504 335515428 777835005 32602644 604580806 574134376 764189374 736052419 772090169 659042534 712794700 617985248 835688296 379351896 752567489 279485990 377657243 195705175 312738705 103555343 211143286 24909178 418033352 34156511 751322859 489881794 722318381 73841855 162255612 110326962 634900541 424802583 699020360 248255371 644046873 89794119 575192917 247053476 977701324 631798750 980299118 364541530 893436221 348991840 928570756 89166346 557221581 535277996 739433585 305256294 998469026 801994502 836819858 513561263 733949223 611655307 994754763 979761735 993321834 362355408 881656348 492636703 873565763 428031896 856278127 87264612 250448558 150812699 739481360 479371527 524701883 84416282 723533749 254146378 964709064 460738305 486113180 389878565 445700104 347088777 363373168 249340834 950615558 905726172 964512769 509445352 653504864 72740112 481132131 53846985 937809451 713781192 801913278 190599583 818416955 580162184 883451321 704842846 793048640 659613191 761492486 526515210 960623267 132589330 824640309 678713771 922366790 398508856 781205887 401570210 420223250 5907327 824841105 571195457 764545882 578630316 623358184 469887098 890863508 706876408 792739875 374408783 700666168 460245940 867281355 101309069 174589748 168944270 846117614 221931493 323805802 116503448 120852742 3926040 900601451 220328382 764756013 512544282 946154802 451664931 556094476 494031793 505682410 279209572 417429426 239442952 563747388 318665091 768397108 242646154 323728578 95291696 387578317 10553230 547034312 348433006 784293444 359122767 955058336 387974494 746833024 603919382 783153910 229178034 478122476 473208485 736798689 486251867 488800296 390206616 461314407 223390895 867989854 604727925 901230725 149760175 693483983 90249430 603277573 132219549 498214883 20636578 757207737 638852554 652235569 569581596 902738244 364934446 395430406 128638953 896055581 437189944 948955013 1165485 102086580 84480982 802054952 483745384 613080252 221809233 796938013 560287955 756800227 63659598 141959251 24828723 938415391 448743235 553851402 132731646 927868128 592172500 904209806 243388928 925220097 186353579 707697363 521231592 799548105 666718588 798857414 308859380 867101272 334478944 642474705 162838485 340594950 133971618 353152718 9756274 260443997 28999824 842093767 544686838 797200620 487130541 510958312 290450745 427222999 308650089 706299582 686677449 850691323 829112377 858217046 179359392 206960737 58927593 839004944 206580843 892698956 271196781 603782046 421656556 741975853 176976167 324170310 175389705 192364600 103902796 633343075 583982251 693929606 411470351 817529765 308970436 483384577 171947160 832644061 484330973 856239531 540206839 632745179 561025970 828308955 38423009 411280593 39487860 783516042 325406035 972357803 807933751 919440613 543595776 824630470 470587403 764868690 632901106 840054832 731671100 868402664 752410361 834513513 550788553 843134437 603169266 966511312 353386981 903632157 359002647 378506910 249680209 845343212 31023549 896995902 366557925 410449015 330066433 758633197 150648581 752219764 117214679 428120864 419309042 544236188 310503603 744427920 120339941 195380468 175215683 318739916 285863130 476402153 392610106 497823882 51262854 60497152 18596785 818796979 50638070 639489903 285112485 607043520 125370911 555983146 505415622 770979093 318845751 755070391 511804391 998043360 464658012 869284313 606909378 644606785 570357718 818195939 20326377 779123007 307544568 661135852 549366821 778865303 152288727 168848799 142326616 983823012 899081820 914017272 642029321 889478578 641601063 688478771 66183007 638923004 287338186 506376049 203622592 350696136 43224082 873558024 623465205 899707911 281316426 853412729 383846965 630345608 372004427 835391368 417843381 454652821 83867551 251278955 69141872 179483560 13116773 341306574 268897174 658068301 383243847 886712384 90140225 884343862 199467202 651240752 571393694 762187516 107989764 614848123 234252625 419426775 332480090 360966171 253489745 838683881 119238339 907135817 417581179 908611365 891509032 999075512 782708954 987100946 251002354 268721116 258216313 515764238 88240212 654297805 623758881 649552658 479777811 840065696 838145038 981350570 600286874 872269807 238579220 895928382 379017585 822744393 57166637 123392288 99235240 568717980 59132429 240509433 4184534 890900913 257487261 906579944 64917800 259055331 137318106 676795233 10616003 609299260 208585212 750364840 43739682 419028611 354976637 615756755 513120125 788909820 100551418 583263598 33470383 779325789 730468176 768508473 168084686 176932853 64013333 441350813 149629104 950335675 489279600 624296164 116079974 514990491 423546473 958696538 276255122 971855243 45403468 48509770 19727146 969366852 135928383 567761303 232508077 483781489 113040092 285232087 73654656 747296436 689214664 742227600 155367664 281236452 131247663 364257723 47420174 186156225 67364110 508876702 100755859 595547501 203999279 815462388 117241354 694340308 563649792 832403077 447219141 842962075 337267949 843551778 431000847 577987194 254074873 307182716 296673346 516338080 27236448 222570115 72339324 929685593 792706997 935603756 900891688 902469521 120398829 385116402 160279326 325847351 198554609 241241561 162538991 444986261 311438004 644017124 610596594 862670122 306256589 324663220 274887353 927041105 365828144 981085532 255153748 531976793 411577700 876274263 740986764 953615992 893488238 953021031 273637552 986915269 323371409 717164104 200904349 676802999 52684351 412626043 266155941 950066008 26858393 588162618 169057459 415419988 401574308 731462409 289115191 993924548 637982375 805406817 423114736 723669986 651941133 765607736 614321257 689219447 334455027 707202160 398710981 401834385 350937590 870047885 227507085 938204192 72258032 235760097 154143946 508212296 458575908 539821081 81675316 360009573 22443756 144814068 41971623 755181716 155069037 528589416 456089229 911801336 324894078 923510444 109109563 911009078 880870788 988212690 69365421 712023829 303852264 759878065 20079353 477209795 332929394 764937657 159293536 377002853 292305842 793330786 4522903 709448477 224992633 311785176 62896403 719564677 378910060 464504940 228112375 282822095 109784801 893094997 207856114 496951306 298378060 402308005 390403966 699592058 470531457 778799109 709525853 758780155 163745008 961024698 368769402 852228432 233762222 293086847 288616051 844602898 81023924 280522214 155763808 947581146 792345959 872839213 336703256 364918528 61469038 256683903 10399717 350637931 104306108 876903836 572797375 984121004 981072620 995195943 92697409 478627238 279790894 837052182 110817459 972886130 854669181 949399177 386917638 707268904 128769482 965411078 582110935 632007929 193703704 579471988 281914397 604974065 220450198 518997719 30879857 786451166 280415582 666287365 64291578 855474642 756500097 999678906 471796785 993306505 987617495 996570520 355305862 861224424 519803901 830165227 517133161 983277014 464913150 932901924 374654438 469506325 328099326 605197408 519587533 565219400 105877549 408820193 86908728 545807654 303570448 393140817 173811182 916935146 74169830 906295092 513454664 726788801 576219573 850371680 467266877 853271166 29004663 808290479 132328350 785511728 763852104 868870911 383565425 892674037 714527281 719391964 457576234 657414317 395495519 591721798 232962250 920554221 170788448 291057926 275320675 279359818 46170746 851737105 596718079 629940430 294632711 838799373 544792833 910195382 584660530 816603681 298203057 410427531 118942724 854233683 782848315 971466778 522446526 854144877 327776047 881307380 726248945 963914116 543151685 854523120 366639492 752465444 483633890 984047925 932302214 965361746 614499264 965195252 357013575 786135442 582828999 816518587 636506792 816642836 361528150 535695308 381435925 864684660 210757779 796500191 329281035 893661884 655153171 675615219 295616318 425547403 224657067 556334564 526554109 807532776 136964577 511275450 231257876 439947894 104624285 304416907 14228620 111476532 36279930 629925726 460972010 577389669 169122317 604858023 333207645 340210169 284772664 698327737 161154293 685846273 492318038 938156023 560433017 713362469 581863372 793672366 379580880 901459007 280536127 305581627 293633805 829066124 690033109 842209828 4050250 886779101 503918172 544928341 147104616 809932985 617089486 758277991 529228741 721133699 521370748 982198776 358999012 873148152 365544584 955797630 894089946 997187994 674760314 688617694 489934590 961451189 280492531 650594333 117100195 571443775 198331614 382234457 144349647 500336438 98437023 200492111 113572695 849927131 419254656 471577661 215426804 884441629 181464103 417437310 130515585 134045796 51943013 747449330 138597204 743123475 387004883 679393732 75415173 362628839 327866676 390182930 86970575 670294194 226025408 705820253 68705687 358451158 86381345 699965631 522221577 648662717 391034847 721334179 462472445 675684429 7939477 135330811 70508554 582244394 379273774 784569694 480374512 543139223 311198085 360919527 290759756 434932401 134240173 991278879 494847176 931785697 512846061 772682630 717420466 786258028 421318588 435742262 185063498 914525481 193745772 503516538 243581179 291138083 278948944 530439779 59776916 75630629 40432488 981813859 973569276 976493855 909284044 951463582 115119088 516508360 265895537 990889799 981283494 981299205 664426635 716782982 140451789 901828932 50744662 204527881 101495776 821602626 235465069 792203937 718868748 981276177 816619457 854452302 837422232 890368143 279904194 610222463 265134407 519821760 230247222 817415642 131843841 711033975 131685823 382110069 66979644 963397595 730602056 880863542 472660513 732695185 101526965 351974188 153781150 337092026 214901896 487378881 390768033 978463558 546829715 993480526 606288189 983082230 110171306 163000302 152590644 372198943 35427762 378082578 18743406 456392368 336856158 809187774 457053332 537709295 236459786 515974704 167693832 934531859 204129824 448419212 295083936 749369824 132581641 544228805 491444490 991924444 648836777 954846415 417475748 438804456 322384212 460283688 408566987 837932125 510464213 529214648 327663961 379956037 96790324 213992328 174726289 461470546 280030015 798654087 792536527 953829496 712280511 733073578 519904217 902070253 317374651 374275198 50118 189415406 64950496 315319455 181006428 691711189 471855635 850042397 110293132 758864082 474430007 809737650 607401166 677197792 172210775 577356205 414368500 447680186 278530792 853863857 263121559 794966578 262484243 573282633 562586282 623388610 585847024 659295085 290396503 458965557 310259184 491608119 217689635 902693478 407037353 958547017 818366981 985478952 483328430 873600285 103216612 561760268 511690095 905698339 31795226 385857088 169945325 804684142 741652682 899828232 217521292 294626673 74931659 586215924 132298358 590430401 397275602 838244615 189086742 836552752 529665951 538099184 155434977 163551910 20396546 747418027 68179527 345491343 247767058 259369710 66444308 262606247 130394961 607464510 295421077 744813688 186177147 460772641 73839561 207945787 155325489 785631706 326979595 952540918 122694274 357293093 247501932 947365976 311423627 821018121 756686615 772925837 419238114 763498720 123687592 283325289 817574 900289799 435284105 650999221 113274618 364488198 248424776 598718998 550152935 905078434 888888473 917570349 594177251 910642283 583682344 989615507 923815781 997331306 809877763 975612625 360082922 493162584 37902007 389679219 200304265 656027778 498818974 809914376 438274537 477110810 227123152 896444803 83894740 911027611 780214795 893265940 488214170 666264828 338359124 824442958 766021027 984825309 133268386 570784422 104112500 547685003 216983019 893065544 431657417 771830892 48475733 149239796 122341032 946933393 286430485 614258549 45776553 516821310 333880063 528051817 378639222 509988309 183844749 260299979 235342792 904855984 410325423 787613859 769036403 887750239 404552486 766394239 436358206 603330327 510333879 805543726 558531401 964255177 312236308 638883475 316823755 788558810 656707399 705491280 254493666 466607882 459952591 652341548 620040078 935280990 543218468 710221130 258501766 573241444 231360337 386768685 347984432 636839411 552588630 556491784 120646406 185266600 183726164 872728384 693169630 776118336 509508802 601839635 308058733 441780578 44409416 877422146 397838822 978134648 399015105 721152157 420334220 712762570 120229623 561496009 36351460 437944049 261116694 529780531 362092479 598086285 176708873 195947764 94988368 710278839 316146233 551441068 102426297 973842791 355032784 898788503 757573719 808537704 415385295 904909772 453571406 890946595 777165848 919694251 187012845 617135898 48675461 747786865 737205227 786045293 277345631 867710319 244288265 780897467 361978495 719263856 549236601 952725860 824791977 909857469 657514763 935539317 396003801 887481395 180948219 853806355 613017225 991919638 319361260 498512029 316693576 798546565 721678758 980083203 701412817 758598118 76585477 738170982 219779095 716413863 94332243 902450880 536359632 792527722 737649043 897917181 91980863 773329914 275510747 322723725 93749808 636484546 592148186 769796933 226513270 398656587 61465187 467258176 20406063 210535672 180350888 229158722 107001437 344699021 63120653 271301911 252256588 994517921 992243465 997787583 636368366 689487441 548357142 590423468 292427130 558799502 425000313 679197082 136107993 273736806 95307223 282094287 73798783 390509457 377808083 794680260 489783839 967697179 61373509 700119130 373387337 953702016 911934769 961713412 423934150 632648348 212840558 572286850 42078158 542334029 247891636 480209579 218095620 310941455 21783255 245004833 65563996 143636820 95554532 810726245 787708637 938287557 926427691 941535371 729964983 976193410 316356881 765606950 288455849 711267553 219706278 658967136 422312744 706576229 401077780 806233272 557707969 638469125 15299251 974187396 718959285 823785855 584890134 932421295 628041058 981042064 57287351 633095331 29695961 141404770 21827837 137295848 61875867 634362171 396646877 557221108 238385650 250068023 37446846 456643083 280663021 578006412 556884085 850703182 828015506 849477687 192073331 679119053 17587035 439331809 390193772 474406299 369545260 856012346 730789477 798920692 793010146 867716163 97646957 794384468 270196407 412817271 17260679 453456975 159573506 915194768 249873908 515628582 148503798 352929741 181453963 909579847 232951669 388575338 371030447 874187738 467148500 916059093 550075803 808261203 794815021 833845576 549580492 926983827 168242575 582863698 460809333 769595733 549035420 660379706 241509423 552537562 383196462 741422552 298236213 520909536 192930079 737881329 716730947 954149870 602261084 915580093 336339093 503602665 22250834 984600505 458105576 829739814 217736707 248655815 103005534 719330118 72743084 419786443 335176695 769499162 78503811 810037977 415816175 903523600 854160812 986186594 510403705 542442952 63888845 417346334 180150502 732170572 354629637 775694735 442934322 465348149 144554885 671991605 608061084 756047463 461893428 833265056 289321141 494647666 188078504 804032747 97303007 307123392 137724281 353295081 29517768 346558373 221173887 734283956 624781910 633175439 526473753 579478870 11150485 308993953 287581331 521788861 147637903 702303626 228125955 345408874 17312616 349345835 40405620 943198637 34509503 267983891 261042069 857630691 245542887 252348582 117140853 593814144 233956800 937744917 135502460 233568597 24571272 719551971 197709299 553063318 62774859 930409325 71223572 445075574 245053291 786354721 357468846 751964630 492940816 901038743 231018385 896559279 129937744 866505029 699793277 700832425 139906763 356068518 346030225 958878186 392112789 612873251 572267892 958858678 746112508 911176351 857983880 988561484 124624285 739986301 243071955 609562465 600773044 687766006 64339019 298634762 172788423 319996038 283095416 334592868 198014574 837872000 503657628 697736734 37323167 649474958 273466355 656367612 609731014 678024236 190350271 765024108 58588482 623931573 347742649 595233062 403291082 595954814 47845183 611197636 58160483 529176899 425447357 426275434 393917210 745291806 50087527 483711786 414744250 592381587 316194647 368807177 135379752 892867962 834534987 969185569 456737943 884137919 379467060 751304305 627409625 845693486 490500541 956568984 853106782 908108614 121385703 777936964 83880575 611804760 562740020 851163931 669815048 911451244 870303428 870342298 65076834 524696079 167133687 355872845 262559939 838215302 673927984 852558879 123879590 455985995 293428979 717706889 232197794 393108768 234224871 571388840 553692922 960097998 62020905 258302760 63889059 140063562 30886678 74269760 56791461 864136751 34368305 819195965 598541355 841479735 89178895 837496657 97368806 265840306 167817391 766374958 343681126 365926249 160039908 563092632 369281377 906726343 367093411 588181564 54188518 491359224 202493405 768369457 384920492 641099896 448838414 879477179 524684942 792546156 769534551 801547780 266756124 568966319 356531044 635707671 90499643 218288123 152140886 330451096 190897406 389220927 199377933 565907923 83439634 735982390 580057486 749305408 535331427 873367043 633031538 736561378 404911266 880375675 11538083 643697679 582778384 656036302 429728132 615695345 100699808 109499521 52421729 270051474 186270370 886960348 184358659 678434317 639307918 980030076 974502710 994889619 762666955 894545034 371092163 991781566 572376309 947644676 408503264 503945511 439403854 811619610 248284008 665578705 650984047 785589003 609034091 917361640 702422518 839078457 776042859 852204106 231912160 417461972 363064045 839021693 70099194 345918618 284158901 431166503 392386802 729879136 333066 516566911 176302496 956021983 588144452 975599797 602490405 937981037 102325960 701124226 509780851 646740414 2466513 334860026 236496306 367468517 252417231 610053533 92127908 124029543 25682855 515063331 157925416 585868606 497108031 681821149 399392159 643596554 353490251 955455534 622277334 698702129 186484305 927434007 152455583 681637180 587225407 635912035 539000380 635432640 217082297 270169970 31440322 810055397 369509511 895633133 57719739 237014841 153375822 676396291 204226932 671129141 469581530 486935300 11353587 283300371 243769323 897256761 542692255 790621051 415052387 512897455 20042878 835671125 804335887 819611086 230508376 541987375 69245518 122923080 89166850 223225554 140350911 852332508 770046209 937549540 810680811 842200313 151815802 229594054 178134741 221700077 119151868 850577607 804469929 873759813 707964690 934586707 921366358 973150368 730221893 790750719 126057356 350355566 302201544 423797402 124363823 758953975 486406879 857789667 610150490 766152583 124213446 513949946 105900924 642798508 457004428 578862921 247497255 850492504 701422355 877379663 658888384 974957684 564266437 757797594 249059230 875569565 313870283 802055902 238919832 665834021 654077221 836808705 56145220 917421610 194248756 301527982 201961192 678506600 609797546 924288474 501914483 747932895 451033578 521049934 182812409 917516770 221374431 898502603 779291308 979526233 159650231 717771442 229984946 551866398 195352813 593608396 435971446 934224089 803859203 987919145 682441006 960856646 616599199 764157301 63873629 79367117 27556271 317097485 114691323 853119229 92794378 158546395 14350741 948466462 119275389 366670226 5786105 319848078 231256119 721107195 582212138 644944957 198846288 707573367 353603593 702166992 419617402 472184349 306039926 707588567 278158832 776992540 559425284 877949307 657755149 691643003 561166845 851311575 772890961 962916519 525568936 925710143 5098481 690061775 451448631 572834446 502985391 670706590 97713524 126677832 72211583 983253374 595333627 870944754 262973457 713498743 355633745 927378440 167577210 937253439 626228733 919790268 270011531 719207717 215464801 288581950 267809546 597880218 110630253 718714996 455190716 515207830 387450348 556245264 479687375 817697986 318024692 392104008 313272734 700406953 658128952 827845662 398764831 975143413 28321339 848401920 603478174 657975868 37501535 264035248 182756432 306781737 9579446 408244103 94600492 318111849 253548692 571138981 335767055 719023270 544865724 619519906 460351914 481446096 259709593 399271454 373934903 693958526 410098361 829132193 556031824 705456171 599572238 707996906 191994295 222448301 107264208 686331929 532635906 757150435 300192776 830508318 631277444 922785252 228150387 925702025 153364498 825183719 577466678 775476440 482817730 804399480 312490072 581796780 516715850 835175341 434165364 834481537 717112889 979638334 345132964 639106942 487786069 887409167 813340243 985755141 118347505 985334211 154970119 795698207 355168208 771723883 100433228 281312206 228838154 439409078 129850752 953363584 817390082 875800797 587421403 631477346 154417760 261672816 92646732 464237090 348573248 627826887 21566176 749945384 230304596 569864619 54193302 570025676 488812947 931632162 242391383 907685042 228555755 609794918 318993622 645126194 464402878 650807655 246547353 840264701 375341602 774042045 422966950 879297338 251242881 701192720 222295693 455046573 1977639 631264239 404022557 717859802 490479255 639670997 288729602 426384910 391180719 549681460 54509915 673554446 140896934 862073061 213763811 759205949 430223349 560175407 390401385 752789347 625579220 870014945 734441496 965234254 902214362 907499497 346505045 711822192 369962196 910768647 317354615 543291381 280974827 319625557 256418249 572115426 518319925 707235468 88286598 656379397 109732150 788106640 215650899 614831195 289685861 309337395 114680801 990287552 57067192 725960766 348971845 913412599 568287800 580338973 487192289 774710715 525572541 832444027 737118464 904530387 713925632 802964283 106333717 633400725 452570738 888973361 608386506 629373135 572772556 919254511 281563748 979175054 680608817 909628554 55520112 325443508 143149876 774398810 385295444 800901240 224809506 284426259 146500724 826405092 532646969 719213730 588546966 947537400 273635532 870313052 61239507 929020305 803489079 863153880 375513347 764600860 733861326 769249740 736363545 816947516 383352771 992808566 124949454 809080366 45151041 469069111 391408124 958753600 155785583 495408960 229424001 321515809 92026048 314585948 127035050 192811915 149423535 378795121 344654913 929039297 366547731 991185675 342414174 940324848 434625022 900853211 104129374 854053390 408847278 583374524 505661559 982937200 258593195 692804450 306182031 445234570 401525153 461963092 328333916 674492270 182373568 496785693 176965762 784745723 251372885 534628944 24984759 183898083 155674104 871145668 604610589 825588694 426755639 995534271 245932707 690026395 362135957 625161007 366155448 908030326 850695833 879406386 230487712 371116243 105990431 973924799 886631887 891111764 96222500 837480739 315710133 520233550 195600324 610666556 271147496 825769463 339525484 612721531 336530211 652081685 540398212 615894831 176272426 916843429 123698018 617951780 220216100 710364518 522206896 825801089 142534915 723432349 385717247 858619293 100092155 883956312 664774220 994199162 810138652 839042694 808206070 812366835 221345307 852457974 354982647 927862179 697600871 911355470 393286411 527393106 216695085 238648424 167725192 416463845 244814968 827739330 43788386 396361286 157111807 590097220 34016071 99972666 79424160 315579686 14241354 993900971 239191516 337467990 35556141 467359104 230977026 380549617 161136014 522924969 186295516 512857021 873954 273692845 26973912 686480992 317581286 322862789 83508242 190252400 155987791 184439250 99174007 905785274 199397810 942201319 330002780 605581055 531865261 839474617 618541911 729905174 166587677 500408638 293430013 649376888 545825659 725056729 154466284 245658804 244398808 648420577 530885005 716875798 133565531 282043826 194009391 764768572 517265880 643074023 612575743 668828146 434527109 460324265 255555014 529766126 366463074 661971102 98328011 824787290 640326361 818863249 116332605 879168045 863467154 908816201 248734480 479226236 370567630 899356771 444860844 872769664 263263431 710376294 410011644 890431010 373952854 971561367 88067415 763772366 93373453 506136157 446761085 484582313 310238420 384054917 80313533 726805436 308460197 866292949 561765853 712485293 621146965 824215121 398484114 883455001 457257509 600552062 585667277 862104938 678705211 844967859 205784680 235435133 162066539 627095209 318919184 807372848 393386481 462752005 122678755 837652570 688215745 770312192 76073822 941427858 785757528 963870281 454141889 981454409 230572450 629583388 569049205 835542041 462798287 739249512 384316887 812807628 374347190 836511275 67265862 555983579 183840251 870072863 810875002 855862796 600173237 630228220 73116820 558544166 437405348 697280714 380362587 836347135 72036900 580516910 242648177 714879256 31261846 582019528 303421567 586866096 190601502 915006670 250167714 312168884 170037045 455866966 389705384 552152928 234696864 351019900 333053279 554312966 230407558 378412311 75593593 849778340 309853136 508416497 186174476 188546426 56118047 422242677 73613103 686671832 38268056 961597697 87155170 884338507 430800279 810808837 246051214 914170377 507979056 822136976 545314862 547339193 53297514 541469147 295091272 504113773 36503335 642389043 374540741 726852805 300816014 319743736 79629392 824214625 508701638 547582368 99935899 330447670 188738577 791297463 231183411 402022910 312549220 761212532 416065485 953193860 57635649 296685703 58867689 529538881 428278195 621362698 556191608 646192899 153368009 450334065 191265745 847555560 618183039 759761538 59580587 137059212 34295767 680873533 150366501 823067370 564655202 874625688 354890636 989449042 840092224 997599948 305850512 843728535 565949923 751098499 446214039 691138891 265898701 664585065 176928218 484176298 40286577 327401908 69119892 124662473 476328 393453197 335710884 600627545 32042615 354367886 324852716 420373172 278943402 930653598 774822815 849782152 359410537 486931010 396177826 626389686 146914408 885096428 716587443 958260445 273769623 924137119 771935525 996631288 663786510 785106375 4729916 770883078 411254795 415550070 28363142 896421136 288071830 828271438 398579921 920294188 327677924 513031453 87079895 803403713 98574964 782397699 408043456 647763122 647080694 808491301 24590675 277846100 7826060 904099334 823258980 876889117 730774863 872349185 765480497 989247950 641518554 707397244 280383076 868553184 438049048 688083183 33767042 434134043 310963048 789102863 269938504 885462561 269778618 798106692 289025020 325443855 275345395 634014909 197603658 997408408 288372396 826456001 182761190 416963203 180300007 443397029 289496711 932491141 373294956 761279983 389522773 966136421 876064481 902253061 129559508 856128032 190499202 437847327 232366361 719539357 631485382 858451826 718094219 893356032 429504551 877579901 255246667 732954383 564251651 848796500 80600202 932019391 188807650 731330164 507538450 861729318 265690102 956864944 940601363 964266430 348448340 928264921 137435316 486169490 265060216 564481779 21235404 994738635 334913429 354045483 254989655 411083396 169034555 715700578 109245126 647998241 176651683 579752137 262105946 753941331 688993159 806466273 143676434 276298902 233013593 569109312 148505675 160988252 144538085 290697828 230230951 823438389 342573522 780676548 388874562 601911636 156996425 816387690 37997130 90693016 44862903 699731329 483274599 692508038 467087057 879857438 868782231 944112659 563951088 607734438 432637957 518347646 144367641 908592034 699927647 888496935 188060597 807769924 259201911 832424843 67890137 756814389 527901958 567899446 485307202 982811139 734981313 829861412 824925223 844884760 488950259 849444664 515158055 624522266 604494820 710325400 467641261 861379237 785375331 976269482 419963018 437183708 367441128 964286497 315286486 632835735 161480239 552791410 302735226 951974287 197516909 860018002 291486796 352628503 107781760 508486738 130538760 393424168 303699626 582699591 233594032 816324851 585651916 958325449 821170421 914819034 754167059 974152093 132667873 680973637 106701603 778811625 510338017 661999820 77002123 464051047 360351344 604547695 424181042 718403664 162596295 345109895 40739591 468762209 57247875 663307399 41186243 437181133 335795904 776069803 117349285 999071082 234729469 958227613 171202304 729371102 683378895 689759555 104910379 677819391 661223322 919282740 595949127 726450278 588437490 980470647 547202364 662309416 228020096 649241677 361462302 463949219 97868489 578006069 446193996 704846598 427594280 703427443 318986801 493339610 102957552 792002704 92393872 957429819 221647065 785342795 484015870 969203931 902592775 933145340 616556016 855731613 652038913 756482050 450044083 707469829 55959592 486487446 369708450 395161912 317783889 827890591 273859590 968927865 551933937 844693374 828715234 879159450 63276369 638047610 188076304 680618704 131237870 680586361 324700639 516745930 58389353 997958823 667945352 681921904 335127403 802930781 138338289 347059972 295202104 643341261 323151391 354899888 70251296 204399219 132772236 872107017 797199066 842616947 110842641 892406906 355298317 913582907 584367863 852736654 359498437 809532276 113323234 327657868 261307180 509392052 509008346 546773537 498383213 855525062 264048572 778483487 308998936 652820398 257944438 345216710 319039017 940968139 429103595 532113097 416977379 716182592 298499951 358639575 148482940 898790916 8733100 170212584 81716168 152034153 139006354 985130000 111460598 208622478 99579307 674014319 354955930 363896407 224439303 514898542 492150721 547412369 372367091 508931963 40752591 89010982 841612 142284155 128735723 621053331 430470849 456788578 188623942 830480944 482070955 732201275 508527816 518348429 418631865 829835199 28416775 100999719 40057864 535936986 183369655 349503678 4756660 533658508 467421742 794935400 366283261 740048767 685481497 873219226 506366051 843171332 626766625 992262507 53238236 58532070 2061367 632511928 609905819 953927597 935703326 972162112 24305619 235145906 207571386 648656268 316370050 426806643 63570647 541614176 489934791 788660785 748125614 816689878 260664082 413287202 239878738 630444471 396345351 745905633 303764638 385350135 338426361 414875750 243112806 824522869 659828325 949709957 258173093 401402401 263983453 839880765 350466413 951168195 425781401 537004605 84243221 753033747 112853139 966552174 567754413 848702192 838594830 939235972 466390204 652259289 541934793 840947350 551972844 624119945 127550897 916088735 805798914 833236859 426846907 539394389 336729368 769244113 576774957 767067560 318568291 411491284 51037744 655743298 190057658 564806071 344308049 675073934 407460978 548766826 255748839 395262702 348340367 955745330 192012377 737845131 522124833 771466354 280247806 375544755 61256978 178203014 91143489 155590736 12472113 258058242 108428259 806176277 270296002 604012460 413621968 416350216 266898276 732474983 47233766 88396745 81614172 462630245 365796835 710866343 454581731 661616303 525412202 675448968 445420459 681981318 434909910 933479880 150862782 261449405 101091060 411856596 388316464 511653485 272851728 409023065 18182133 280462555 44920895 809760055 629176774 868436320 643344029 791198721 583172640 721111856 676023920 898236432 743842005 882728165 515286343 539676177 537170132 845323845 256515226 310872359 3416495 211491821 102925539 138676976 4947768 105703508 43866236 314817008 284572137 558058113 259025722 377311675 5317514 609921418 605456032 697284128 558685703 758489791 273403110 576910854 130854561 204816283 46442644 81784923 2123591 598708484 427016101 740850339 254060003 618778090 181661514 583955308 236355847 839582465 688151110 959178781 912309275 942020862 433377426 845432407 541731526 585998765 248945868 258032639 220924136 732408361 554304931 759560774 563442449 683934582 605468563 878173060 63915420 715373288 190315710 597618562 18025081 559103994 365194316 417576752 75658516 315670239 143907345 507941549 21682765 587492108 230860381 521869386 299492585 831538817 289464692 774150694 707427123 863541217 268508560 458195160 368404929 444589677 55717462 238678161 49698443 877652036 66975831 119182830 91332915 861028887 224972596 901305161 659249070 863453153 559005364 602604092 3957846 782390044 727009667 739421857 668819687 848397938 742749395 831893568 417609307 438076031 307257025 432472771 161057188 588788035 330917659 387704822 211417099 909051084 298818866 661197499 424106244 721033755 66288231 987050741 387255642 389292674 6038966 838666098 205437771 753140635 526640840 618776698 247550214 911162230 858007482 930587582 824130630 939106486 764408486 851215208 664570750 707344215 316377078 835453505 788687386 962621731 367927467 414412704 386120802 549061967 392383141 932960121 92286613 319504277 149193934 793438785 530720233 811470332 509587151 964168682 690740515 968693847 345938598 923582044 568129684 989019364 623172042 793223309 130661885 662403058 225683720 930347809 646590826 859149394 128857379 863013997 594088623 861052762 548930200 873220477 3187910 110105204 36876261 157973318 148962290 598796008 524120903 670332177 42033575 725100328 26426074 266700862 236360854 265937295 31534543 862184013 396418886 732191789 677001792 841128026 786450595 803993760 298899415 382803553 345163415 947919714 84041526 514635461 2614535 632473712 361948604 373292048 346087410 788601424 171708555 814656454 219869112 470387810 449441276 625961126 309964113 451000742 430503567 759677062 146583095 468625222 225737356 697992758 233381430 429040870 316136816 895324786 297162370 785324605 153413852 704862597 231882241 350278331 244944965 535721846 424414932 635861207 263899773 677463794 441298335 786962011 52118167 902435639 579619705 746284103 345458681 735623982 20734465 921366286 127208739 617947819 12327544 656238758 157555473 233069430 49256670 115061175 34796488 720226237 668025296 837318109 524631654 573101329 233690589 253612201 58253400 247345417 41200812 132408302 71742299 709929704 208125184 793623006 308144854 988234350 37786274 697239517 327094874 563106869 262871588 885871865 759928009 956304108 296768945 581301282 167306755 593497364 176613382 755339502 307488285 456779235 213215071 367597447 303864839 535091840 278956053 360617984 172289074 882074972 21231073 594434254 200004199 427511257 131108880 680421182 222431083 728826191 624127296 856536015 144123688 425122540 229153718 540062923 454796725 898860614 717300693 869568767 17886944 127281436 66273000 291787390 87134806 400425790 19942050 237502152 173095712 745156572 332355359 904726818 684038415 911427106 786388576 926867445 643903628 670530679 265563198 553476219 310756283 516449127 216669678 289876886 76425205 203549032 87845894 114870375 67498628 545606732 320954383 998490305 305057367 659511537 193714453 412002344 16857486 96930725 16557554 463685353 196352806 806507957 179704139 812275390 284011453 441054865 144003776 411010293 314927887 332119178 43690303 951751280 124094847 636350325 281002152 301028921 195508225 391809938 30743638 315968415 118210778 167043118 30502720 853955886 321318336 643339392 190616622 249145967 106694437 726395586 446329141 537734114 27694889 855770422 721945454 950660684 705468192 981697598 117045898 557332191 400034590 617393090 68167802 759098050 511065328 821328735 527920579 847371472 482165821 791420407 637108632 954638942 712594247 768751254 196743845 910871421 467802372 677664334 668677663 888344898 178143798 232401522 197398142 665254849 363270002 968136053 920311099 959437060 62422961 686612920 67828327 862904312 226293171 859324739 843391192 962237963 911851675 916159459 898140451 994833464 338784511 363360471 217052483 921276718 639848433 954007164 21296183 744363673 351495766 460795901 436039417 466620495 230464915 360525558 155636938 340495484 154876663 522894383 10317179 158438794 157580205 912137660 672544747 846755195 589201205 681401100 388512271 587748142 252287428 387252668 56109711 343565267 117123197 873148271 433827742 852530296 269860616 796389043 604435976 934146128 825749590 947706317 227473655 579086087 199616943 723763391 660074166 987339143 505382724 673743181 29009909 297194849 144123145 971709923 416382750 879198433 692211913 926233460 840161294 931995542 858831735 981105170 493726987 603863549 214691257 825920217 564063117 718716115 489149559 901892412 613851751 844449600 438804385 560991906 61983110 306220686 20846509 22247247 20191154 202814096 148789984 401699949 389301882 730955847 230715637 912963748 630667885 852037036 83434921 973711569 641902134 729203402 185880803 238221750 127083077 886760870 643491743 999885902 790561362 985352852 355120051 720260836 373407943 651589862 601794491 859620094 695013778 749490628 157867832 309496001 260784302 707083728 691468284 735744786 425933248 904714736 34695320 39004515 17030842 787711690 47245206 631144376 555492214 733036381 25132085 239937758 150690410 455641446 443815565 481597714 23401529 681584595 148488283 587438392 81077495 958892487 931550982 976166894 163867382 320390123 141515495 747248258 394026834 775396273 307624862 859107642 830025437 972172733 121112375 435651046 326901729 864612318 95610356 996887634 738445190 930391811 440996632 495105199 367658578 980389032 941179909 944324371 578679690 952377056 220225512 635539462 233769290 662332916 357300259 683095357 471952046 628713404 561321744 810090465 363714198 929482954 916143262 973653217 634960406 911661102 310808155 695153135 71372458 766027153 544047722 667251181 457958762 725902186 362951702 718929678 137206663 276776596 10701294 260627066 90958464 264487701 65353519 909058739 435608297 671515114 183580739 352241538 244713535 255462805 58580126 115847012 2409569 947780423 637722481 748511578 697353928 885597843 778206578 868752862 622061129 812435397 184656959 364304296 324552195 499163519 473904883 612154737 344220461 393054826 174588298 664691710 205680066 415365478 200147783 947091366 449329747 818282887 496290120 606443323 67960503 277895434 19059725 189822017 31170647 375647199 222155735 694424735 227963853 377565407 62439903 433737412 324928292 522763543 125059789 506967998 379703191 957726247 520044567 721681051 391335467 918146320 70362790 908618302 350539310 499768459 453449933 732030222 116502965 859460381 236006425 506798337 151324846 578796483 138862185 295484146 57863749 959996592 955617307 980782307 502208509 844952737 501443290 674183076 119186191 477356484 414569880 748465258 643385045 776054728 321266193 557952646 241385597 803958217 179374460 734447541 554346395 914217694 903080550 949634151 775017672 863702008 137843902 210395668 154257527 264133171 201703670 798751747 83062863 689581594 156073135 971520971 641338471 698675501 128979999 227288809 200646675 780330817 759027321 870959211 673491580 729619761 312503379 884535173 358955678 489860568 444744969 906862841 850243187 989223086 522501937 736635867 640881219 709830521 34475288 257401126 97567635 989370538 688300037 787878283 772463321 810819624 648342549 756972683 645740145 673701844 515874584 912405363 558276819 996698782 214447128 609730778 274474041 621669676 291225611 628883467 87580313 281650908 28704208 262729774 253198100 479781146 388335584 730021507 440200771 798546783 88356626 371106134 369216640 911845758 247619174 921740379 661020985 934564733 305301281 627525458 266858536 740444627 524344023 740197709 644500271 948500062 152605981 536193137 383461875 894405309 662345339 686490067 309751296 440262816 127960656 831578839 542556652 948931829 602899176 653634240 36863388 556780219 311240456 968462271 910048598 992285778 589563926 867167117 282623504 712068744 566284224 876750995 414423711 678893109 289388349 618075807 49481127 260423727 14428350 892984922 418831448 923813707 538736435 599789823 258852574 653796454 56852356 81156860 55186 110246876 46850803 825526827 794305415 926924795 91520478 933816935 539634987 906273044 342349664 779957228 502654668 504794399 44650325 863525619 208244551 292367366 217177435 930503055 913286987 956597021 44053003 214510744 164847596 618729587 364123131 665847463 637583513 827095566 346745654 977548337 665039843 875715180 544706410 782519243 22140565 811825484 17728336 313652739 192139833 299957839 215337469 928996975 831071647 988961319 937384131 962713226 560326816 638634535 282058704 787712357 708541378 818577136 117271418 438565581 318392947 916778750 532048900 647461896 585915102 910236359 729890225 955294988 70472547 719637579 272665307 491345076 25636826 528963284 101398756 571075551 510825084 990812086 156990261 958883320 411199425 634588231 356649516 383233544 149885080 561064900 201897538 854904126 284452367 884846556 754773474 896894599 6833585 530197236 347180322 752096719 98723762 626683835 129579021 212365062 107018931 943692070 494996583 541261347 372322082 606419076 200879160 636409578 81674309 975676832 325513496 784066049 728549530 827162571 800742183 874207263 732106309 808317263 545218253 940698662 236235046 823972416 813553584 865870180 347458228 388447841 347183568 365673203 201171849 324524381 15330485 497292563 253504424 442981025 342294095 719999281 125344555 782414303 133560486 665465230 13216506 959720455 424696158 556471162 469975582 479878628 323629168 802002902 632053012 912408798 394144648 901310626 255358951 869065118 67332744 516432564 36652624 84004649 9427426 51155879 8381091 482248068 173714837 744393490 204903356 898358492 230014408 407879818 383864913 676292501 487227144 810287632 106122468 340479830 176965559 258997661 119328343 166164928 20215322 627406993 73649488 218296837 214139621 295390890 170514323 890188674 584684688 994634907 430674861 831416351 755814335 906552279 658615190 907448552 595349159 693033959 472408837 712703276 123735692 737905497 407495127 633462458 433395662 449397910 321760602 607046822 397886541 907458572 241222269 461229049 336988844 795780519 189490382 246703779 207007362 479569402 383554690 508098095 184856048 678728965 243012795 275163774 52400684 873799433 562156931 862118788 434812952 792495950 97049713 461010079 446728469 649203123 524287893 797780488 765681090 967416882 785884784 852665224 795826352 928170199 668485033 949552686 3880832 645066120 19844262 535442551 418532552 793398668 422871536 652099365 602992303 956793469 725381486 995184629 558768657 982204777 825054617 850865338 45670961 240160937 121201618 651291509 422713887 921568558 328929399 376238031 228250175 756464293 95319213 463082902 169724804 629261506 442385492 583268014 446349087 983614298 855052018 894515244 250482601 342943292 100241240 661768064 133050104 969224102 495029899 763535561 63574876 947369273 774450130 782454226 739483275 935866176 763478727 984580779 968907657 987629951 189169158 594824096 483526831 833359655 682400745 831632558 782152591 886957189 484557349 818561648 18635101 737015987 717234456 794902529 465844881 831077146 762113782 854106538 750021537 920404706 483397469 748213593 560410179 908668465 676460570 911708124 587826178 597040961 48673848 751454162 669735582 988004118 513974385 527126691 135106018 404463074 49603549 696839458 573728770 663944258 331311396 929785912 17598743 135903627 63398982 147760101 97562264 544444567 522314363 837409656 274268449 856204089 434111470 618744303 366798608 884651906 53373651 536211525 116288631 649706752 582155104 702716393 258430061 644117888 74288370 903133399 775876082 952556022 711006893 726415052 131268353 902631365 462630702 614616246 35749228 171106430 109103453 582062960 485242396 957367880 666293124 819807082 424845222 685568262 386153078 571892631 207587149 688229595 320130996 675579695 390274334 828617148 61980862 262645326 162990616 364482642 106003229 445161322 232570421 788374537 631176305 642444636 595607651 941173521 212721530 812420105 753804028 940373124 177018854 445986085 401161186 446259413 175939791 362147603 14335242 559203172 446045757 730164780 192884737 197662731 29148114 963311460 469082623 954468524 241909688 826452654 312493022 469873904 114103059 932284543 921917925 973431759 224190170 491838803 146071277 395651215 10361447 824423952 759335699 894206401 707149916 813363721 482035461 782168483 274969218 861179226 284686692 537443480 327440528 548051366 300345077 962533293 868695781 884377436 602101515 613145084 194916329 573830817 334740841 771981075 244937617 495641317 404425608 685735914 351153484 521251085 486360722 795480002 473291028 585040466 222785838 376498115 250669173 932364789 316912343 659115419 377546737 711494436 657943178 774861767 289034177 472308685 72783853 468836006 249416898 306422336 126807656 773568719 503769017 885643689 266272625 826622658 630220129 856451221 136720767 597431652 444458562 746064537 696051403 771776578 362296199 946902715 877157833 881375081 562263796 592751611 238051293 248312307 245248314 904646734 213785825 567649754 139398307 792771399 639550616 702295419 663729037 743775242 622995284 952538809 137568014 304074451 120402786 677566324 39920196 841570066 306078649 821768365 184391946 501947037 45297679 285259743 87829282 880718672 667732011 757753707 495312791 823045918 736390080 862686934 263199213 499932368 63269985 418324009 60304954 899409214 81432318 160025250 131049931 453404431 148484154 560797228 133977583 258071659 111943165 631746989 261399961 456116428 231756134 364667617 222074247 429854877 196198520 803953165 566752875 963185428 753021724 937413033 740620178 902399859 376696252 457750923 357920875 938519784 181379145 708618087 219949253 926903762 892534122 983996804 930185873 943631904 539758755 808493583 155972594 700681859 288299634 307854062 180249423 769086738 229936237 347365191 48113118 57926727 12756994 317059760 153090774 403808398 399409166 655912610 112332348 744910948 693640128 947142633 40949819 832570897 293395870 618641146 40996393 652729945 601141680 735693921 525611380 862062445 201531752 966950582 807544110 880615948 213260097 370884659 134764233 638904375 602842540 719784112 441589956 598025493 51406302 656752306 204327482 997172427 647884705 762977736 83019292 912296157 327073173 587775590 281095462 412999121 157049150 470118208 442582118 886378202 64683268 291264706 141616563 542884876 484605809 515857947 379208969 663553327 583966196 804093480 38487837 525882519 218298233 220926359 126189060 184457952 91317542 974348950 71085287 454317006 366346424 996556977 306843585 960022595 701538343 983679720 286159376 792522985 372298486 950528039 803978112 998694343 361451479 610167548 541742847 910701456 224672422 479475445 261792577 394266432 269442732 981169857 918029132 971887441 86660069 329757792 67485930 729633153 577714513 704506152 32079055 651715024 446942325 560996165 328816087 565938547 272349424 485852091 4926105 16965072 16627767 37144528 26843944 735086114 97094134 343327469 288684383 810042687 500633255 961026476 388673720 890853408 770661743 850962474 599631365 612274042 296161394 394235006 169954746 278106266 76924673 486590506 200978850 418226172 323037090 892438573 116042667 121554358 91389694 935237231 19088562 692831881 192664152 206286497 36232715 542789097 122910837 222335741 67462668 827992238 741502595 963196265 803774545 843684103 537490554 909911456 345405639 370947180 56024802 593392629 57531035 111865084 54778518 243564343 92126981 340678989 69927935 924097647 742771295 883470614 431942368 986118283 116718604 353470567 80976499 555454756 212243441 427496338 186057462 411883433 178273808 784304608 348019090 795863061 695113159 809237343 303899968 800050202 171278477 840359310 639855388 833688855 168503097 729244532 697863928 764177829 97280419 552844522 500981323 584175451 267967343 562438192 123470041 784438567 625416572 762593527 259820573 723205811 44581588 81500672 58683698 248856199 220854486 902087156 669630511 829600240 797563238 876997407 712848653 982102749 615679712 618038671 145814178 345767785 150614746 657358779 452394896 937540427 498743025 997444972 471320730 544054994 469055269 822774942 121217998 182240203 112300678 884061421 559772162 588768021 182297924 880381853 128935381 467308271 228112094 913340649 26897842 681352353 76285899 606388437 65978945 259111709 149691610 891150551 212597761 928581570 312563626 610653137 108342034 334837843 319818852 540828693 274162726 600049297 113075857 431305484 275772198 697031011 688169952 952170119 393738741 925987219 654754979 854057107 626371692 694851085 476946431 640418947 394611375 609682791 470111763 498737897 104823194 864499635 229574164 825728640 401864659 487344249 289463397 303994151 296414803 920186831 731335640 917133464 888125771 982771586 698435523 980960231 743136569 924255121 133567378 138244144 6550509 364588293 355130025 564826584 339973693 422547216 333703836 373537063 342868542 457688427 397035688 478263717 16253995 562899881 3882144 329739294 36657733 775147774 549368755 912889733 169857053 359014947 41158238 631676099 128698426 483161457 38825576 265716542 86983314 974720668 859239227 974157648 573146509 629352272 114294776 908461536 742630187 880401344 710036502 768222877 174300021 471188389 361567325 480013380 396652475 585734534 91571288 627290082 338436178 738666953 233754730 617874832 487174944 625850059 162378055 818886708 427336685 926695589 809457944 817788794 715039895 894009923 264128796 561530045 403938222 662221187 322736553 783203248 672602983 978945560 222829170 792645829 759293002 982836220 146446212 576547158 197387041 197687629 27703609 238401773 95901344 375766388 278812142 781068676 417298897 611469959 554853848 833908639 74186681 220948866 98282044 632005570 265666396 819181507 306675195 353924263 314934607 866739732 668973288 685596372 587663676 631988291 621945411 788576160 752355272 784536920 672417199 891589685 448785013 968148459 332695799 946794436 626790701 820508552 715605636 817100300 352480168 865190084 328938874 419920417 345828411 642852373 24390078 709342893 279257835 948229135 560719136 691948911 254551690 419359728 399484137 786892681 124089075 792199741 52805634 186844672 126402611 830987846 367270087 734350620 224797497 824443068 738828555 958402321 200398861 757928929 637889939 861209106 4574908 630746101 256694550 640900125 18768377 699865289 52075239 632651629 436528707 749404477 524736935 978704082 742082581 866207953 185773771 326571510 134000779 406613068 293248749 854231372 296253660 403497184 165832101 923375173 320167068 472236517 354262516 678180471 644813105 944211139 412617008 909051191 465382678 978000480 163022296 211555691 23029428 227390108 58801118 715615218 625368402 831590723 8238902 490812782 78646489 981551059 829478973 979062121 892068968 896477273 86825691 913509511 373782867 495021446 472763951 656528222 94610478 229517169 14613306 688293577 504942199 797570771 133712608 765441251 140145432 983627961 664827018 873887941 197909428 784717248 762430174 928582678 263872295 587489945 211050808 713303393 73733911 901625343 534461971 811781173 708655653 751138991 555485640 572494605 466562126 607831863 27370029 536460814 438532854 638781245 60226334 283264868 248725777 934399534 105095144 282263423 55873495 552693014 186024600 505409143 426016241 628747132 145769637 635860376 85113003 479607905 121751437 622252991 26057285 496488119 478544082 625754887 164876811 468960609 434548925 984500668 325712990 798716713 118642200 638906467 205370700 458650700 87220722 708194416 504877104 805059682 658840714 917047309 514364117 543727230 129575466 531728992 451203554 677386583 330631440 687066637 249195323 700297282 545765744 731785702 336485492 990404515 698261760 900219343 885051955 982002943 302388409 448529232 234417476 904546588 247417303 323435639 99519050 847987535 118985259 939918173 681801974 750041924 233992236 426638847 28845211 460763116 459734768 827746693 207477692 610351623 425940707 589456318 410152757 426734857 176548026 513012308 185769441 680480013 35688407 367137865 53818783 98498921 31662789 141598434 126762625 368137481 65027389 627368714 234641734 409564017 381022407 720868244 703171897 823722627 22068361 461363635 7987974 954186123 445712874 944107884 621073066 693524190 649785634 745424063 440108893 890805360 73365324 426706672 136105675 508964663 3238126 616010488 590961383 912614471 524721696 742826465 536301570 924502594 37349903 890828393 423410370 752174648 280689116 457406580 307926674 853131043 139244250 179068227 151603062 356140571 8761015 185737461 160767119 480038361 352003822 882013126 31908410 600730446 412160591 676984275 388277848 418975481 182210872 581324542 447795440 494562275 134353771 820066171 610234138 739251479 250752353 997019735 680812058 762804958 743477620 882966148 144405439 268615447 142538860 665411577 324410417 946626830 317298421 511018241 152575753 636640853 616048694 971362523 6426412 750545870 382949466 570261634 104547134 249869385 100718592 150006269 52856180 917096721 642334004 671720337 267804129 306781672 244861562 649421347 155400115 511911001 263487836 805973006 616723744 884460411 424483816 581990605 281991999 392044809 29722602 319547109 5677115 848480493 505489541 818497807 36394609 785819932 461002295 822097668 728474684 873954086 725897565 997818990 495675578 736861356 385876882 663569205 562508748 801777022 746336761 928293515 496879348 727444191 642641601 677180688 251449545 899042687 761346105 907407089 889876942 922520623 506297300 740217556 83178366 408470228 337310274 497588301 91690065 445123493 407164421 769664784 449039178 721649496 263916865 758596601 709304125 982023555 895453101 898488619 758279338 873351870 493441250 498458207 302920178 448978269 59351610 639674336 21384446 781400244 320228712 804151559 41044732 81039330 67543724 897014328 616278061 859840053 352471231 841152651 478679298 920096024 339514444 976816036 927169566 950702978 937934797 945911763 610816499 998820343 918278777 947322345 593378413 951071829 664343194 968165199 577300827 639708535 336562611 740905832 188362038 303091090 14695485 887791601 25503668 679992659 624814399 947982705 159212211 459537020 281313279 482755479 300604859 340039305 186851324 269863956 228478347 283143633 100357144 594584144 556463772 778566451 72800446 658633964 104334892 421325129 72855579 849090164 242468834 830359089 571358636 683281275 152934684 832930051 558822862 787985385 53999883 567007039 156537864 623518078 63462217 801233641 797705468 970268928 352325343 528586819 132784838 379251714 227260664 866029683 229390792 993632446 205941468 287423547 284948332 341072675 211430825 241030378 58181990 490432504 288516519 841083682 249477878 998892087 728489837 882733915 578850515 794965197 560983575 706201987 181847604 201830894 109084396 392738590 167751093 265867917 145618143 820526715 100467786 119932275 10060243 539071750 249974765 676728318 274157039 912961736 835101364 965120126 56843313 146831253 110938305 324858041 168156007 448444864 93942161 593954143 365699683 430738287 379237264 817666144 758976661 960761847 878606191 930162166 161681117 359194361 345926416 401047160 78651650 485227014 23052189 792025082 491741521 755669806 465978129 956917196 401239634 907912182 377802465 921645066 436115233 992821725 605142881 823642984 302692153 464496799 24268717 959322917 109857906 142507384 121678541 406951594 338779547 437689838 404226643 755756568 712924045 762401431 545696681 663369027 651266081 782466600 556773941 902332068 831492475 921088623 586296009 945918603 51911406 623516520 85639639 330555254 75761545 171405693 94564988 349801555 87823796 634406806 581899641 606138310 374673592 586449655 100010581 501490830 237630102 737572390 150608458 462362617 318585765 604451276 338336809 549493036 396490600 637699609 72090464 753780502 500641401 594007356 81273799 325158901 27923552 783410406 522833864 649411383 20356881 476450651 240659461 578229457 318996515 623297095 153570342 886100716 557448856 846992312 195732417 521145148 373521173 967293042 309584277 658775252 378652024 960022522 58841162 444943126 23448030 939505462 215525554 335666127 314563818 428283416 181493719 454985638 268076639 856868698 46883970 319416288 81182204 880008467 796950391 946021550 764407019 970113325 557462407 688934916 9327692 148421647 98987366 612867602 252821873 938761540 237996972 309664920 260651748 818665601 553787028 732544034 167386589 226295758 122518956 811269284 405109755 838889350 595381257 669846674 509887666 859969396 430345222 598216231 32293680 679634340 68859429 466974169 349312698 403767110 393312607 937263993 852343180 890242561 887903974 985140874 642448667 675130630 567554700 707981742 690051402 720377042 433857805 444820234 150841608 571089219 551220966 660352932 75086201 352856025 115771663 693743740 615565564 746020876 285484034 984847124 47394596 673560908 60347983 652769120 266073230 513196617 418283558 527397956 232615397 913272191 34410775 580654757 574340896 934586959 844868463 890348773 637604063 700257350 138594977 343131285 53790391 495080694 138142931 414841828 38560527 816199185 624070548 812784818 687625926 811688121 458222786 704283509 68116444 311254731 113557992 507891934 449181666 907780080 627994991 688974278 506094623 992958490 115589836 189456994 123405708 800372612 422933750 537492288 236086114 664285552 350326958 773221934 8005386 922365537 70354712 687098317 117711510 149223155 17922415 821539682 631116530 636609549 1771390 774417413 526062344 972059600 282632629 664650184 630878642 728840589 317924398 732788933 596594100 670986459 195742164 335087924 62359864 316798279 147673958 397118345 167579532 773594174 419218888 526825852 442793871 678016260 52497643 732995634 624485238 746083809 686455961 872629137 238367449 420086846 66850681 311861637 263600010 296498006 219523674 517504797 383310796 919490473 509007614 677714828 652970429 908590250 37027943 205446744 175282643 324301695 130485015 457349479 313410390 682495916 572885732 652338987 83673807 250071856 195958902 810667946 718856953 997501512 14229069 819939785 802470870 946792443 286113651 975545448 587528689 907150550 15252721 798433352 237357377 415525607 244595885 548598015 178462092 663918278 63692318 793623541 773904701 899468022 470225042 873288170 450732765 890631025 322426405 507825280 215603442 447040839 168930208 593383336 386985035 755926266 276677425 469129972 311403134 350158824 216135903 284019552 138171151 339566926 109643576 521576914 168384653 486683525 107273227 161659460 146731271 397663831 68439139 573237190 222795892 639099519 542195041 649278292 21963408 803065392 680387521 918204849 210030516 756116876 102517565 595725847 346144099 571872875 346219379 442748790 254053706 429774252 107050632 790585791 493195474 914926085 8944756 955590550 49760994 887930316 718021359 758545392 146463090 440432746 93700042 125666089 32940946 383643367 302521730 426753574 250511204 414029623 242718273 399257187 97756384 224659436 129169313 331310221 114115068 551195416 118342275 670651116 135923316 664353047 50469739 634613083 463681596 856643439 369114552 865026933 647045753 925021383 886766918 921106711 223444199 321108935 262322519 832521584 18756452 513360703 324802888 861557296 357317415 693205556 296640082 720363187 95143150 200565169 180026314 289301673 98153694 104202387 45839329 558343516 105636919 774697401 378881686 785614062 336650578 585260909 189700318 950819231 377608953 953325564 520135710 529031016 90397277 403968997 140313559 877672312 265463793 485142453 466311369 507616497 447610682 957974506 492687859 929743493 881079318 932703918 818142323 933874308 240528817 945821043 876924063 959584155 534207844 568422927 419043991 456211170 15072580 455576343 402982736 543744595 421245819 745266276 108547717 217414884 199781551 605661596 59825128 456229244 144571498 534405392 374455271 555636066 505069078 598028831 263848135 654969042 110366585 791444304 534586226 667752969 357317382 631787442 492085530 561888548 186875677 398425571 259030292 593908892 2814668 881560604 800356221 857894695 261855750 904650893 62431993 688755103 378972191 842374587 588249636 907430379 672766121 836563858 421518146 578398597 159901562 900613594 475424047 887141182 469990756 750879955 664531000 748290555 619984833 812658622 202185963 728416707 585948640 624549833 309594314 806395329 275834233 531833795 355587170 891418660 120484824 122709772 67157086 333089313 225909092 650474001 118715455 864976187 108006788 490524395 118952986 697383289 362877244 413029599 252493318 995149063 150902612 794487189 664226129 875719731 734864575 967795138 318001902 997423133 109540497 280496015 21065735 287181235 124857393 404498884 287265819 933087011 556142298 964669961 550541233 643913360 602537037 685176141 596585949 673915029 25161602 997061545 341407964 583948749 121871753 799970171 90105320 106325073 49177577 891595097 64319302 198682310 92828197 324686238 160312999 503885397 388493294 875992828 450929493 634403729 585902138 825383564 92066444 922716635 736901574 894137038 354091146 627177139 110738854 238572186 225115262 672214751 389061041 740507440 549319723 666535227 658248954 828906109 524528559 831042362 499135954 507314910 413961413 945409075 921294065 960283335 90472582 488926912 147615713 179517658 38415260 878622060 451014088 742433305 249084483 481062410 318846399 362964175 111793885 488667009 187545770 555833025 146357602 259959782 164371559 218888319 107270674 816664175 77487317 253089573 84385086 743452111 356568463 933347570 641250797 771145081 350190064 721845908 423245926 573508650 170518902 223998629 157583239 699260447 81191848 445322172 249380585 548300052 429023155 560269482 429949364 960799580 291374426 474437043 45265349 91238156 51101566 916850190 374590211 670123652 649940526 823486798 723618429 795256606 489023390 595279869 201293391 746898461 139712631 964696938 55132470 990784113 507405452 650307167 436416584 637201871 338569250 554458966 464582941 497563181 305038327 524817807 285039447 386777450 143776148 554064087 323174350 356759620 256185088 544655558 268352359 877032352 824777156 913690647 224320238 945054882 91302229 259398641 27031700 662434950 349098847 820055291 98984573 464902354 118203427 301672414 134791484 741914516 88346791 194188879 74558549 217156810 202838509 568913133 440103864 906899442 395798185 533645208 308422642 368271741 70414579 719617475 661082709 801277524 424675319 936925439 300956617 652342425 115349057 997404048 612176524 622568649 185511970 497953879 438621618 624844552 524980481 868229490 415361780 950442774 220015752 248038143 185801828 994680357 896588522 938758114 460796735 989367133 640968579 893922780 191856570 830331067 513113485 988006048 402833639 894248036 13674589 188928577 19032919 950709614 931031554 993249250 809401739 860618448 817941869 941361056 79409261 786546242 306596504 869065158 452633345 696638548 270593098 926124367 668414471 905742214 770429890 958596182 911879844 916827394 235101791 591389984 176535637 476878879 317162580 763632969 617377963 900464792 486742333 539311078 160567506 501780933 44843904 682193033 170416486 186854245 88219488 715507170 68117370 311150766 167268930 234804745 31697224 354367950 196282051 314377026 91219556 721546998 635565313 888420029 349353729 686787852 679968650 717395292 67792874 881151388 615234133 651845789 534179513 631771678 457779444 623273923 325745345 774850940 533919088 574458330 252714045 948911425 720811622 892544386 775896457 906190373 72327149 905884952 759005052 779980707 475960572 597661205 256988626 429577412 227098936 348900853 290593291 679579366 676016411 681782170 249240375 549625111 113562509 663955696 320088970 461883794 324837084 452189985 20621977 383543703 14447229 697494551 316598546 388837093 11820349 546667687 254334534 502980284 478727391 509494498 338706450 890154160 210807587 666921231 147113495 589427312 509589382 963775448 38566200 395555721 215913885 698943851 13842728 868782244 356355540 872986956 433049676 523892930 244838743 618479266 457354263 609225837 471678422 523858562 179964327 650195738 204282498 233857690 147315328 949891138 283248437 629015132 180576581 933555715 684436413 895693180 169540978 746221061 96134878 738018207 537692249 843132698 141040009 664528334 535323618 996081667 353380826 370614228 342577417 393469598 136890668 503633657 265071738 678182492 516091835 959044447 18617745 380342540 75116090 518596799 82017319 126526735 107594701 121806303 54866417 665785776 294978717 358669420 65108981 944594168 443036535 638607938 282499089 486544877 378775810 469896512 170910789 548925391 521240913 921649606 393216954 498676285 186300826 245814923 39437115 850724883 745104507 978316195 203128749 295932033 281543867 978583515 374416136 537284494 225978579 265671342 35618715 431856424 54038368 133156596 116053471 837713435 611594262 966920072 330636145 337205451 7505384 447446746 255963762 814177610 784521674 903926887 360379757 492906937 27433746 250663157 79394339 86296077 76010929 487340303 461587656 844081723 806102809 896467131 66543461 497880692 169407615 237764954 93453721 399511803 392072851 788013860 511799205 571427079 91988057 186567746 160752702 876386702 56070918 402294226 209127787 706848315 43842380 297727923 188743240 529367624 247344144 894234921 416492054 801027945 101865520 762386368 49824862 328229578 46775434 872733116 477317688 904401967 579692040 909705604 409245331 468477817 158844804 639688161 55953957 850258105 408224708 687556818 203038 489068261 303871048 412591940 98858759 698314772 551494988 888062253 39028818 821335597 476450174 775096355 452887381 991311453 922888094 996356974 159771005 581848438 430081317 890915028 323578289 833081600 76927466 828897371 16497168 224697924 25047332 582768398 400705556 627448029 373924400 824233151 292196493 693660905 559246979 685721936 260002049 713249723 434922889 804890109 136744745 227174140 132218853 172274935 24290713 411266335 311344634 913819259 605819012 917175909 430317291 813441946 250895890 388051654 154079997 733050454 172901518 278986001 95711847 366360309 297164849 689945738 522482169 793642091 447677411 843163512 93615099 370533153 343164985 813396285 102249585 763653127 594907377 677974236 99607163 944075885 918475946 985925746 175354355 456252501 136170604 458441398 46998759 238408828 168718539 466665809 169556709 411079001 284346513 397161155 397003898 560259691 280680361 371582883 297642593 812256990 457108986 739411833 738637247 753283081 686609259 750318782 541630022 848032136 581391974 887761213 808037617 952214068 596019812 880809620 582810019 862573053 564290723 611493428 98174510 808762794 311698707 643690811 614593853 623394555 417535255 735705590 581616682 764308770 499081987 611842095 470629747 496966827 167027255 600204407 187470898 990937091 852384203 904316734 24660493 146797239 63737612 208397799 65792653 140453454 60927934 702432341 277973714 424454308 9890934 124460708 120262564 496980991 34176672 685801937 520611751 829976855 775658060 790907114 45633361 654479594 450526533 798925982 340620198 358469320 243514225 263890058 136077586 324581368 113520690 719156443 431361613 508791817 491310143 944529761 531339031 684806339 653328361 827018366 345827753 507361053 150628937 155278165 68653461 346453051 55858773 613663977 512534022 650901044 628455142 718940971 401834393 429542915 114236313 739738761 355102662 543397804 453570885 842305262 800495805 869346627 415404797 596872829 513237075 793488943 614848516 918089700 667659023 846909070 793373920 919577504 870540949 907926170 644439135 792207505 779042652 848945886 841333935 991635500 460999331 509781860 303154193 354817978 111753590 485607581 135636696 163267721 145343613 930739355 615789176 805637694 49923100 439328448 56584183 150287807 52264561 403714330 128582072 175873453 126729363 164751159 55491032 73066639 40404179 370212410 55746306 553244941 230339446 371405329 206200272 535554547 234184029 708758583 535732916 961749582 66521816 495010014 54702028 260082530 47944726 509363763 240182189 304854233 90448617 418770814 191846868 951009038 524261023 853926053 210733631 364614213 103977569 627819286 610266205 782283536 410321266 481556365 262007815 481018151 66425574 770914474 597034933 714501001 108180925 659101769 305753116 906245792 88840475 488509792 408178631 724406290 354112305 579328469 197439379 198910499 18076962 754019949 434316351 542550055 272846772 786543870 250696707 532427256 139882603 646606435 261863305 434352378 55830409 517007543 40148036 958437978 365619879 591755072 461719783 656591606 211181674 796372928 320151844 888419142 868949849 997250204 971812826 999270341 932474915 998240322 806280223 822884005 674115921 866498664 92745656 144061990 121386983 562808426 41168067 649418692 426860808 682704904 410102139 919823901 696400787 955364586 446994720 615982153 428050946 573314357 141239884 293805573 196978623 353258497 41315391 181878576 1076644 383092525 324383738 914788172 453748977 700763934 46737491 803134973 176864713 365660282 127940563 432982986 64447646 873893080 866782392 962658059 482097320 999887852 659635378 898215924 844126270 918924536 667879724 679333319 137552973 153491867 50897343 446600441 426256965 523847529 439688371 954632370 916261576 942328454 26930188 810582682 5211728 331242916 134006664 574787060 566172569 576041479 486565904 716728575 690008945 946923618 222945837 588797161 531657947 661464855 134733516 557276441 345790088 644567525 585356847 780500437 733021453 981544620 865320017 875221354 76961798 262046835 220108837 789530707 34024286 48192446 8264027 641464366 117705638 850692720 20259901 352210125 166741183 689325319 550693274 962852026 465948163 704336239 301485640 564042507 534491048 829545126 823321746 972096173 814973960 976659910 734534994 845560781 725869676 898764248 19338046 887286447 764862470 887018606 602213627 805504201 692031937 865869936 742616411 954542684 380320843 540571902 333933310 888596031 429159443 805856955 629959287 963277537 698076372 902939265 198458212 540336925 67786607 649630154 350557762 621258459 451350722 822168152 438189747 840240216 170553007 373386231 268832972 593702270 178575591 428275128 61218548 335858419 20307799 564253303 210534265 804078060 738437791 880749015 288931109 495826042 16347603 304181458 33284684 118750560 39155989 529976719 111116465 751507826 238738253 284012990 29180393 871490848 835206459 872869553 849803159 956037695 243963065 401961946 6080494 196736613 52281913 826764312 507101750 791660640 26238449 928474856 3929090 39190991 23869685 951997164 539157547 993685052 378123533 573786146 318368175 802778157 225578782 990818839 507505785 510208156 105758326 520332367 94384467 342426659 245720696 989383471 906052384 913953457 677336568 761193087 662412134 685774736 656610706 675031355 470477335 733015934 110568693 689714395 146720052 655793349 478697581 811017328 197469120 329089009 9154225 982846675 608069353 806531704 658133609 915763658 467192941 574464710 398574538 484871483 473239960 942405789 242782811 701729822 166158106 284450278 170053854 335403837 150401209 607151497 237551861 392324735 128829987 551349506 450247160 662961611 90696896 973410359 732707331 757834910 435861021 716017934 22239780 251107804 239139492 240488077 10043833 846774674 518561594 574421691 526580166 912004313 654242352 909305544 570651697 937528336 315836418 348252635 304659908 489985666 295307220 726266141 152804072 901381939 67168929 237499485 203784061 218339309 13078621 617617544 200154418 697429113 393504204 498983492 182713544 773483170 646766133 992847602 199145214 264832037 74827619 283221804 97439620 820303816 371918787 993710471 185729659 357494014 281834450 923703801 186263737 399921107 52887845 140964193 38607044 883724118 303233015 574782641 570297732 959915353 327343947 852329384 201147881 312067485 265504445 762008525 270471422 576484422 433111188 856058634 361440216 718471749 713982353 953608392 252851683 547588279 293272393 311797935 100473032 699845493 270982592 347627473 149483529 735839779 266497341 525456220 67086924 717993883 309708621 405320282 190832998 907989957 684576804 785426524 48318569 530780098 33973404 682468464 97699488 643239227 497085560 577024738 74223447 651238569 197972170 474198891 24440909 367432452 92084960 173170191 148264824 279574074 160090701 795765205 687878907 732215121 547593007 914890560 647186593 773220610 111150834 247580050 149357484 749565245 222337697 292409359 125279113 855123932 393594314 642610158 109702294 721835778 611772149 717062698 541139920 587958430 182025640 907295163 542590179 900948948 608660702 693078923 532991213 866368939 474562883 690994931 85056460 686457174 625375440 905733347 196842946 981482232 531390080 971975194 814842208 827795818 46263278 864707422 526536515 716190286 120605999 639851838 314499783 620788136 69252010 261439022 108090044 252946600 185857145 409465656 11714620 883700145 436367220 708353776 467840486 761480513 199601323 514024065 473505883 521350012 23053291 230224216 85039228 908179959 274831316 861661890 746224101 831793793 553096153 868684577 37253145 92935168 9740714 260029704 190919573 334256153 297813747 787343422 109107118 920738089 545464665 989107356 576099935 915745343 692451533 890081595 138193915 193695095 167181145 450144907 424956481 449844822 84100950 548985531 480856244 579429478 153149369 602690650 265116007 661468010 59311735 107575017 6430879 777341540 605287006 975070084 742824151 987224965 259322411 853692591 661332656 837394390 471212624 910928819 545379670 548876675 174160631 211878135 69747724 871715062 785706078 804490215 131639554 490687925 407940366 608122671 328474111 535152567 284028077 905139554 354694479 891746159 682473420 933889249 546909016 766199498 650720348 808002798 616624434 847011103 616878288 980874555 468414033 856932712 296473325 967910820 155297907 248438840 198754655 868926968 801390281 803923650 122106158 147950542 138063418 253282592 236951187 748605072 596327685 739890265 220575694 726805467 607314081 984458158 343647148 776438047 278479246 372527882 18534639 492273391 156914978 283262572 253028781 287096124 117662771 751820562 445120294 767319152 213706181 231181977 34994026 699318270 47471692 720441065 571675592 924699522 520264572 776977666 125182172 360263384 64119888 847242156 412319296 604579153 170462515 234240013 218566210 229479694 7819707 716735879 194149143 778543588 551668443 863649520 809733620 961763828 757677716 768393075 158400044 556403600 319849043 467452171 178027403 829981403 96621026 843951033 588037364 810992325 472906299 598516912 265281731 779597308 206101658 802020708 339988025 553505480 168540307 622477296 156696587 420338739 197668955 641213475 426907108 703845584 261009635 299036200 221328636 440704564 207086981 579699598 411977030 703270348 154244166 852604473 125414098 575895692 74204990 164535969 101262106 606467846 271227772 943689223 595465752 853221013 827401707 967442807 223100808 783464684 439620642 571418889 257212192 765365066 291636880 661406445 505623859 967169026 898505867 955728862 931050454 933448237 648069840 891143458 141324456 217777780 204103913 883342460 215094494 822959839 499703192 816760134 174964047 236593510 89535555 542244904 131359586 503050339 339929264 736400989 559708828 723542856 1674077 942317404 765763334 885575888 526937896 673632987 282397421 940865404 530878286 592991517 281317389 472793100 265319580 852689564 143901342 867320486 865546197 983538060 531543134 859463355 575637381 624481539 194149130 222454688 75772634 883036661 464851844 884318187 807390127 983682183 733698905 872500450 188180895 462707004 285216184 788006479 40470715 264808757 50443303 353719749 269883102 865368081 494079380 644258801 338337775 537776198 162748735 273346351 167281184 546044057 14898739 456021975 445413005 929374288 39368105 418760018 290075430 635459225 131888774 847466966 685824915 849724970 38671887 198994886 35355717 220123517 206829311 245708135 189248879 739896084 576463511 982934153 520865083 679610173 146653058 779693726 209096997 560496406 282138057 361022870 21462769 528544310 26402216 457980283 123979003 130706038 116761173 756356649 67213902 435374534 82649225 541104452 420921651 899837761 87873304 767335489 710175983 934683937 892238928 924864228 808606282 852888801 329051700 719201212 170207877 427576235 363958500 441987659 424408752 546626758 290695119 696842592 438917554 955159278 174347645 890107424 83460690 195128299 103684597 745019201 268882803 369857331 271998729 385959875 351008297 760311568 59025513 890850216 575826887 682314013 157191313 275806099 186577914 958913749 918216826 968005316 101248112 836217190 304090119 605343216 401643667 655227879 505176579 795237530 445416994 499174912 422044376 936289584 855865046 896693440 48944379 704670523 582651101 691384219 663470468 790719774 307465640 478601062 209740756 475192291 381488060 780215885 622548224 648080142 10462833 727865180 159525592 357724886 131032353 153200939 35436791 332602648 227088657 983535562 230146922 964407066 760490340 792402952 627475810 775728263 766802895 848955749 484611352 748841609 354326255 520784443 62859460 609124238 88152519 176702156 123313487 151940036 82221215 978909588 610325338 833805005 186764582 608890227 314977943 661889743 265612035 374437104 88121719 338672289 45202050 933523141 502223072 620455675 550237434 843533786 271362144 648709484 458455781 713761877 454016712 973906825 879481329 912520244 533124806 541803072 203390862 849517071 46987995 189672757 150259474 852768026 304669747 901458230 210930839 650474613 23210600 298235269 295236101 308482159 212525337 770976199 53378882 661364477 515408949 993644972 464247865 984975712 541910812 991038976 404024264 942417244 617601826 746838384 338647415 618842773 594552334 878643145 158157991 381471403 183048901 238952298 59650517 77419779 47875903 369605501 153873055 945612720 300191210 418939186 278399623 823416943 324220794 379837124 182701507 253097028 134508367 914676073 292555969 688952735 117572597 440146006 221894811 794497200 10707133 913547153 719483846 934316771 340775182 463083494 373122569 970273514 198186527 280915924 67128925 130419669 62470005 801572536 634919841 887447509 779959973 891574014 601765543 864694779 282504000 488287308 360179500 774583917 160531852 628669384 366326526 944084607 299882720 776048450 648820772 857303550 710808676 746459318 28081315 555477492 243398020 915066300 354412028 897794966 276071628 449148525 121002977 285320689 142626528 457946446 260860199 351536860 16046440 761929088 437700616 872836761 276417567 421491158 338384776 927663390 687528118 878551326 332073030 492247001 156880406 434791130 343513957 829291224 98642311 737015459 163182749 178670085 23676115 861441713 781640978 883773698 413761497 733200269 535644151 966338910 480385317 946396824 214595996 265280529 251156752 987310666 977579728 991818760 90032383 176063977 151627470 223883237 27040040 521169396 219526634 862743993 644543822 817840087 532214149 805331268 164124414 772121088 217457684 493269274 60712191 535346370 63466490 805814481 366775382 682011977 567610777 644842702 383738323 566673984 179301924 395965937 8856 698717404 189421194 594744217 552369106 898348164 709066689 770456623 30301574 650928036 401527345 738574404 505606896 672275135 213225965 543849199 418291372 591245442 305538082 945516659 114909591 645547015 107388813 839037260 294150722 690772121 668861958 825844776 675281567 985150594 481310553 637292780 586292936 641343291 474667975 982210068 890953530 978805015 166042177 923032865 299686144 380110374 184885677 420421951 73731501 339010262 170482733 287778280 15955690 705648402 700135600 938380665 878171799 999563759 320367237 676988468 580463959 810147387 683651050 863855024 429044720 783452258 519781033 557507270 464182274 642722253 631547468 987192878 351362245 449527073 106126561 599538684 148021215 191973454 87379375 396829210 53222954 412752447 179024957 512780780 447203181 553091952 207982205 308386275 183087557 634853294 67287843 546822051 319557895 912632033 891623942 974296206 583583796 602842508 185185958 425399054 109944924 129309534 34231736 180768544 125838028 354263327 91131268 618502868 343903481 606536101 454160363 640877038 349622036 613024028 367584979 638821924 596727928 667997872 122906619 236551298 148758109 803687038 274143239 471222221 126599162 999326236 202871087 704143742 31842345 121453527 57156789 250983159 157987530 966115464 110492852 617029744 304394371 629598807 58343460 867331236 304524075 938803580 518852067 599917232 415595104 967471872 309968785 930854585 423886889 604945337 388261752 828311790 680944853 949035217 748879108 965574094 242579102 751690675 593802181 897483212 685138763 828223238 314016566 480220980 440397865 543512055 114741929 516905697 287230543 404221327 372536543 965453800 400761756 884516286 404303938 875434210 623877392 702770724 666974086 873103850 821028148 837004131 392445794 777672099 765477923 979929665 699541281 711038248 68380728 68991571 20592407 224964628 78826341 239371801 47040617 863670389 771716002 998076122 483034698 999483434 283858324 407352659 87040995 216875482 152452916 280075180 273274364 586919683 55731460 419821681 23231339 358376055 147443259 804414957 46783031 794838004 752149289 942118529 578338769 591700784 450392979 899779751 842750620 970868512 172970423 668420960 514031887 625580004 418939502 816764540 222285983 483887103 199386647 716479275 50881235 498770774 182216960 557913112 32438007 775217772 311099951 572408835 250115573 723733035 410900480 660380674 229726384 524821441 370300558 460194281 301707466 677930363 569693354 782389313 661917703 782722913 525916858 826279849 13490330 239510952 103916308 900314350 377517479 452973982 409176942 525637393 277729194 297831425 67438433 576782516 339221418 630120294 410442787 922373374 140396198 738593354 697993632 877524841 418696902 626641472 592820414 656037467 271051214 282090385 135679709 212618817 67006275 272458473 235050427 392385945 264292316 617547189 131914568 570162020 107214041 452813493 247778264 837677530 454955151 876570008 801990479 986119170 495638101 864320548 142039096 267399825 234574772 889922503 656409232 956441763 610478178 861006792 830999087 977029491 819149517 834237343 58443589 174872461 31264215 134081522 61177758 322590360 195760897 596497663 391414626 402040123 166753377 413507813 260730668 699125974 63049975 317870941 198126040 969244576 226007534 717252518 701880441 777223909 252025180 342116676 340365156 353075528 342780453 741810819 302352491 465263547 235309797 695046883 463711595 913065123 355694926 938601223 253298965 669060932 520259636 788697004 149924912 395135799 357896202 827665179 804033274 967184074 963901020 987720900 622412423 855756763 848020988 977642958 611397895 612092250 231954636 971919865 464945410 959207400 808862679 855195071 288294830 357461770 156408984 967776934 29572325 205875121 162184658 577072641 414906256 800689850 65177661 131126181 118077983 944856105 341070894 347283442 191532361 493970502 393661429 704529222 603834933 757007154 707566150 828671351 476092504 649374265 506991191 579050287 239628481 766727288 652144661 822596186 611854334 955706180 199370591 777215449 203783092 865595080 482499475 758817504 636102006 719952894 90381287 522434040 158829143 660411604 26487473 218387843 170241053 369149673 363297534 663971309 54411995 186417406 143411692 521043808 326444561 370621504 61308929 535939881 416316640 666519939 331537621 741647255 7275851 979137162 624985995 772839820 264606385 593210434 238907265 399296178 219234330 463729316 231340600 973574728 432412580 936273937 915800961 982730098 898800800 912386890 625681781 765246034 254642620 793173006 491167261 722690107 386539732 656446505 265501064 538137394 170472772 880280273 749081026 954059986 874640247 882591395 255086636 733077606 407005686 828391039 208401188 747868598 251281399 579057340 403468933 726668586 328500846 338863173 243130656 343157412 139782244 337619045 236866223 958012390 24592854 730961057 318470403 802060287 543104143 937994255 772689118 980334505 114792465 304142296 104650709 379335902 307533635 834081504 641508048 934743653 643673444 777602454 114345489 690427512 599273612 911408327 182750712 282043447 60572527 370927492 51054515 489896181 478170379 999207419 41260614 876424338 728638488 957131868 911497423 927074519 16246442 471313927 257519151 492633724 487974061 946314476 376255776 510570003 40844370 99043989 76888423 354850765 123533757 211088727 203397321 946693885 890889656 991689126 380863512 447039473 236941696 934659709 839204047 852262672 834701430 958585584 416641087 780293721 699786224 809468681 703935556 777163461 32131865 403287953 11178513 990029316 324650597 481922780 180626811 448816441 94411548 839371380 363810454 769666686 71236600 640722258 604443530 745438027 505908835 567477248 3621298 81297085 59700614 704712125 149373041 762054767 233910999 704441858 13807453 594413702 355484187 987040302 537150051 782652510 161267397 957534410 845014189 928303813 95510523 559101775 510860069 989449751 193447984 194913457 41858450 512012143 153839882 989027703 898325885 942750249 525586214 816721573 217939938 928905057 338216907 634109965 266820157 944479941 713028148 944241392 50708128 320130549 134563299 827727393 280367573 899580048 848072245 880267223 271330383 443998812 280681249 617817573 328423644 843183795 171230557 532566167 134069099 591433455 243497489 853286806 786325668 809568369 232426006 301569052 199856563 210274425 166200084 205149775 12347601 391445789 29236497 665108175 643516514 959149375 285012787 380952750 13153175 22071789 5334291 653443157 470425738 676960313 449291147 586204350 152688000 825706613 79374002 767242388 521375410 829925181 748978288 751783381 716571263 977445969 167005341 369761100 65175230 535726479 105927998 555090121 124175543 878009628 209214418 760198258 109144435 330229384 32602879 910441729 724572212 877080007 146269204 574558306 103088431 514555481 427679159 536841041 354392427 765388707 556668167 702915311 468699324 519120029 366962323 854050344 847294034 937895204 148603524 201475045 189848470 559356674 554110847 730774721 23938659 189359535 125759435 353772758 330323973 736279893 720103562 908253481 44628023 167762817 160858892 624309457 511336374 833208604 285030911 431058645 55883067 308324301 71320989 644322282 80366203 888125046 460095574 899538532 234764012 336111194 192184208 433889181 411554999 904241566 26474447 607710195 555845432 810517098 418655172 853270200 8854398 560824496 366885805 438416194 261318865 859752557 726218048 788387848 404285243 958977637 620796048 913378765 531840260 612581497 200026759 828491280 392306340 455020620 33374093 872260656 700789363 859753209 553545138 636718887 89171948 618794315 209324238 396560918 149278611 379848052 58997112 525101414 365919783 588697743 97777695 569541684 177826958 741515505 660510859 667107003 550671018 617567402 47816039 820978738 657648781 720737033 191311633 497205211 492849492 684835351 489412488 814726722 79734360 937431849 712588002 838203496 587202755 643166683 416423762 642345091 69199215 197185880 171332916 569222193 157749708 669166698 298796629 452414018 312400037 418895584 54939045 438315159 317100814 744618756 109627461 541879212 30792779 720342919 161085301 946745614 945122932 990644155 524438811 888083494 285298178 851799317 344825309 483584716 86621325 648161172 397145883 424370231 128042495 408169816 273667485 697251429 491084036 860999351 148832739 736469005 517792012 685746680 59166649 98895942 30907484 81467459 3380866 923227393 754575447 969159839 576772206 774795267 56397784 371827544 306415451 388713454 48768985 284090110 244568470 612589940 568641637 966218850 29231050 938888016 908712308 937714555 547549211 688615977 382603586 768182738 501699040 794301480 208732276 639567613 193559890 683788302 36041145 225663867 104440007 710473867 164916162 816147457 507189011 767180198 159591106 883225325 234407291 569728091 303873864 582564757 421008231 768264966 372703489 757424502 599638134 610724584 380290489 682555613 168601248 676000090 29908496 805592200 502827507 747198148 609290238 688825356 506382471 922789323 648602770 810693230 795921519 825319518 742500793 752679075 331068606 963778309 607053433 634032167 175977982 743834412 725948006 887606698 777678532 801263805 207140917 220317281 158706319 226511969 36879207 80757349 80705104 603466462 499385335 539657767 489276531 748653630 416772690 452235156 426504672 503604020 460747110 617591740 212604302 429694675 97286846 914614212 570095528 723420736 437706631 529075025 284027647 611650546 143900129 215487348 75977093 420065873 54591125 985772016 501086297 588737903 107015857 753863003 543451578 656345153 60406204 208497518 106377695 243171391 99284991 945735121 904575852 913431353 63271054 272487309 136853333 922596068 80137631 921724568 652338849 719796513 270986963 623223345 70173627 392712084 200755224 476445574 16140195 693592794 384049724 579017327 150387303 662912309 129544007 768065460 717733843 815960304 641858942 824103104 567815404 910726217 620856946 636738225 600135701 744665276 69389107 838503829 437333393 615074587 281286114 708414588 201571596 995251829 200155703 595193591 125924784 636455366 131714230 893564753 3871249 389473436 292973737 592851971 358078855 990416963 607163778 913881815 108371835 676791399 673358370 744815891 476992174 879920859 413743829 597924476 430696115 657693133 375710744 582684099 210288712 349803003 264898747 314018918 62738050 677460018 633465850 651134691 573088625 695056578 126912551 637068681 533493561 597795489 223120132 584752195 242855459 291513121 172757643 373441931 46309448 197715824 183304562 218468716 214541732 571165401 14740443 168760540 139327677 204987825 63512488 692070832 649863828 695148526 85073613 297905676 211947068 286058331 175693764 833283454 697731650 879935895 701040351 749559775 320880930 428553072 390621500 413561195 215275708 512982987 42869635 482733379 377039225 675742753 354702975 875541792 764581522 949146163 755739270 975980949 962576283 973274635 873306326 985327314 169253531 685769285 652706061 769727515 109237790 452539397 115684404 454240030 406966562 825896424 144653801 761779571 712990810 866924861 630605945 892807677 351035732 534821832 324730292 574661251 77357568 597104928 181584089 220910775 5030948 991312667 490071670 892190770 746276957 940971465 223937798 780896474 693866413 736703197 254265975 850073956 668717651 696430855 161362302 919619104 434892854 535795013 126761648 744776532 404806479 698589074 204175507 814887338 201935714 313654453 266508943 723977440 78081389 662259165 161735644 614017326 533383169 924665582 564675709 975329858 320884616 793540484 554529301 600371930 34054086 744540501 566181369 852529798 267838519 299067317 269732279 656456493 437874768 869212593 855415705 932745377 155476606 852424951 338206888 808357200 646239817 885224721 17592128 594046226 99095430 798248621 299032873 627559457 521704820 982140833 36371836 798092460 149323380 594841878 78675977 875771648 725972760 838208006 559469405 852679235 436155934 705473656 143302408 880319296 114616971 442250934 288515018 495661133 260771169 364138096 274151523 276518066 109277049 820011600 514825490 876491316 719839867 871332669 627927280 987906858 953646061 968314592 863115407 907653435 637373074 696741133 239033704 560713573 257192142 405203261 360541337 501007941 80108799 302543851 127682689 332697962 58313247 250824437 155203973 386886937 181143785 665174542 621968379 738382072 492475932 928924678 846214799 961199095 115274538 530738491 137129091 420596127 14839823 605706724 431797514 726963981 155356610 507207204 13141789 58606095 32376671 791766636 92669881 140587078 59541460 397475425 390012956 697129484 655172689 662877182 637052892 799642235 9088036 104962280 2567331 972869149 574742108 671179057 289673096 679013363 258099056 925166302 4063918 855184676 19902299 217969354 31947346 180536327 45860124 952509799 470241312 572193880 555979760 710887810 80165870 991157597 115564917 759027180 629370529 794141796 574033007 653390908 184889512 355335694 194763354 644696145 22872251 867125471 668453691 957480505 952635657 976092913 823088239 962603880 840636828 997874856 229454999 382420818 71235756 867083818 709223997 893614506 72459099 412659859 229299324 283718563 215453070 343502646 230171380 482241826 16137280 458710950 294948815 711155449 212974241 830370152 462403229 593839815 389323810 462014959 12439524 762719891 84656916 577296234 267578733 487577772 115391785 792480163 677215815 908126676 376323558 980500174 119690103 310214709 199476065 663967816 548725335 724359569 103471732 142548259 100262538 586051333 442098524 510920716 65917568 275157653 156462110 890792540 722054869 961426627 333983134 619157231 340616980 903254125 237432752 403562985 187511057 733352029 316559530 361404285 150431833 420014082 67820384 900020149 60112243 694037632 520806669 656566494 322853715 612564867 49654915 342855193 124350867 183693379 130783186 666035792 181370721 995199209 247112348 885996124 433520190 930195205 748510849 753130252 509544335 677856025 361711319 479220404 318561201 941687896 805078425 924922927 924077922 966879218 132823096 657217309 4895865 51079925 16601102 52024931 11336268 823638096 581876909 904583507 849744476 997993986 985880540 994448217 481513701 709808939 116896900 206017180 76261845 831684177 509146563 677103932 48787377 181403833 69888419 653760748 571672385 812603026 360722367 565360561 441396339 629080049 607378727 926607430 410773521 919066554 166928356 328086067 288287042 786513794 622850943 836041526 807057724 861209647 682134161 958820878 214331901 329082145 295907884 300549055 196786295 693419065 388105714 609321033 603053203 668489759 333869080 881639378 751042542 902226167 505019014 978552560 425603814 900674576 473246444 729699857 12632110 555883230 177329592 416765555 23138180 505505476 333783454 788971004 608137339 810219306 656830447 961698629 772241527 874356598 678978104 994584928 702611368 751926927 439726702 809663554 377230674 736539919 408677264 441343487 236634164 683380320 586843201 641111104 472117360 846377808 630966844 677672339 589389268 829703070 358507537 570322860 93184158 758685532 100221284 181933418 171502330 322238520 82434722 711355955 359186753 688815763 13430952 249896866 183715967 492854307 343839350 786337368 462759570 537472474 513162598 690646042 675803576 758733854 457197065 509489649 156162961 213329814 48705623 187466682 90643937 401886167 235577281 583738456 382138635 987768984 27327820 400889152 137739908 962720193 705702107 871278129 102162440 940779590 217731904 983936979 965160961 988935626 916310937 961438693 940677959 945691952 370298496 478465573 236295001 980740457 769874495 921667189 384665810 757271654 197427838 432959429 393964234 410990664 277506813 487059039 113980200 254098764 182794768 705128675 489086669 997538712 944105279 967163652 645778831 940904517 705236235 933497695 397445604 536649985 394185715 749992661 79169100 124696107 21563023 979184403 23731537 220913315 58964099 362605754 41193111 915421599 298774184 510474356 496725509 774831152 25566511 379612112 231034017 238647271 110613250 592205085 330247758 368055620 285271657 489779605 212890224 600801562 375779693 914043226 639182464 799742688 100370547 213263386 61486665 804788712 624004860 854905111 238030171 580532096 539006397 892188060 72411655 95317363 57457142 787634588 459645510 691208042 483358593 717975434 596099863 746419455 372103598 997423785 844457649 905218307 10744330 33591278 28848089 625256812 424530206 638491879 596366324 702582560 680925394 953313037 840858107 903209691 147768853 478705725 398587258 808862786 640259534 956359308 544643512 969142977 920710745 993902006 115184705 424419484 36592632 511993615 406431723 812085028 201083055 396323974 328843747 680121460 116243772 266889222 225812669 768976641 670235797 902014580 9698376 632364064 254391562 392323808 285775005 357727780 353147020 371100732 76691143 298811342 168850960 251950112 71188481 316525188 37628456 880089342 763194044 829672356 137358060 534705911 530835459 710491043 218876909 380344610 287909130 378543430 262418630 392105338 199129201 220448053 81711741 414929779 224400887 854217679 129769242 177355231 37513738 802085396 244494312 955558097 955465665 967159321 592145107 758171185 470397721 529450209 162903997 260836481 211345392 432676277 150724768 179710877 100160395 844057199 264662339 984319361 265158032 795934880 558322553 684706956 112407671 673797450 305001546 326938242 85096162 284360720 65701422 396163031 71543293 697258287 78344442 983762718 331282054 423918191 216919203 326155078 170601656 879119337 426094890 941168661 192101478 386430808 228792149 281681829 279751899 621068477 175427843 646779122 595879136 975363804 827890545 851803051 816044367 890140821 638766177 835516973 32413927 470219119 378360545 457095435 225237371 233356603 105431620 929548786 737845173 748166380 684233118 961506693 582338811 815058421 469809872 775801920 294290234 696082195 691162998 806607926 261295535 314810401 138801118 513470466 314114825 634810432 271244901 512006625 443425061 864476801 556536222 897218889 11861974 928437022 633335340 945367201 767092487 958073365 533291120 698078186 260390332 338321052 224583408 841666592 563974334 814830687 543536660 947718673 153894076 434890879 228403445 357658220 45583585 162223596 140486682 657180628 593334518 795317341 15089584 877851008 358301151 775545902 360321873 950846630 463584927 481182092 38014650 167908268 54564970 74249446 49664818 293376308 12974771 554475546 104390814 873631955 861230078 922979644 484162888 982094131 888835492 989707145 451791148 553628458 91627729 483909812 431891599 849368505 499519001 900511934 655857933 781032993 528187943 585624518 128901389 291855829 12720594 811870473 548296282 825973913 364945406 603737455 472661205 736550053 641954390 869410606 626018507 752162708 604306732 729763714 468302730 680017784 209578952 880411597 817995856 995498979 228539507 588014411 139233634 830207695 500378210 516979699 404516120 691982255 468516580 861399775 58642961 561433681 150025471 175766491 174088570 498597606 213565801 837206426 606786938 952031624 853248898 990166923 660283846 753489720 353123452 510363840 449474176 712594523 11072490 963211491 643616113 860195934 541346659 617878634 259000710 340445262 248486705 727868561 670769274 846676847 202796165 585793532 30631399 86841586 43506390 391522343 72095784 523598839 408206633 588772745 383678370 865046497 830440940 839555587 685965475 878263159 107849093 904643462 714991134 762535940 316707348 986200242 743648770 805865484 502596269 787721082 305872911 412008482 21501804 229170601 24212816 429710388 183732359 425522154 343416740 762034674 449014842 826042860 624022282 686205663 678882379 860144391 71291217 217453753 157463363 383556344 229155173 626341023 108756339 426959797 173186387 810831898 262526619 793565728 357912935 847097347 559599806 880713899 334097508 841897027 125767132 175143914 158717482 739472248 519312289 534491113 357755418 728226057 401748703 421666065 262530453 413892013 346632604 576612964 140715563 266081245 84991950 236212203 182707101 724564587 173012918 612448006 429442289 515641387 178218032 650629469 451349161 452002281 332353759 987930318 11859635 435229998 65170891 933011626 65680491 504180753 26376332 367234357 332370447 572527521 134900556 958703889 665212406 699056997 204373612 763465482 539436330 863038370 322133277 717524802 59907163 405652729 48572840 247165279 238966154 462390222 456416475 615766842 439700055 876957928 209943783 741467774 513080640 948271446 536934120 986048977 583411471 849295795 745580798 747618531 683702707 686590448 364810426 857397835 637763707 913498968 103778819 213230985 150120662 266517733 226077066 892298903 400441221 597462481 56939855 174659719 118643378 405213894 207778364 787969937 532287234 737836118 678672863 822771437 108864920 436508752 110963409 561803920 441450749 610088518 272593144 542093316 534008982 791013131 779873906 862992348 788181808 899211664 22221776 894651308 642857004 698311347 204202698 903547649 423837082 771458306 82877342 772983035 296737776 940774115 108027765 786798820 437996802 546942965 124847132 341800411 170260787 458889855 392515996 947416611 469348882 631783042 403831197 612475542 228198132 717072129 194713389 754157944 244162850 768855267 291578456 774317325 370329674 815963078 144120471 770671007 534276590 961228997 741765598 925112374 225726150 510323653 385631452 608469407 46259612 543529956 500204127 668463280 584098591 661812815 19835473 143250338 99726435 284799316 272483890 526015994 454858554 792398403 293120143 449597882 366608242 872628379 818174127 899925087 873188903 998824299 254872761 962308915 67914600 224410824 140119074 311297554 242605884 665497722 580062752 677315871 390917732 975585362 73593970 999270107 42341028 746917528 433717041 590572504 305279646 861691551 52725099 553903686 380278551 926334170 35162922 991679052 148513370 745608626 559606430 655844790 109305380 529320627 70463490 535145561 508051158 875252654 313902153 457860206 160052650 897733760 576184961 711753243 35346836 707622902 100618693 310471178 256603809 621250035 588926415 615952970 579736152 798251058 267731361 309567566 197092480 244287851 241732315 953733808 21622267 462631433 203194869 210351354 194310783 235428872 75548528 628807346 123657086 778353332 452656129 915392717 813255554 835773546 560628659 608110129 155290598 916437129 389184617 777662359 133544001 166423688 57978469 141278359 129899113 383132506 187141956 951190152 243239536 624404406 98609627 655252018 654129209 917961269 139073481 537453311 534038279 556544096 18284656 543171991 283151224 934299820 379619525 742053811 690364087 715521994 148536857 285402788 37735058 302233718 19094153 59938847 33997009 905118447 745901884 876934021 556147051 990086177 12163433 532746938 102904507 809479520 95221137 665688130 58182888 220549543 143509658 861202534 290636840 614884627 357498335 656788998 258782827 723793256 108433125 426093233 96300803 179236855 111854109 841348808 364802699 455228015 238528165 684338275 180581693 352128924 259508618 476935966 16932566 450825824 214233160 946092035 917700493 959419746 822523564 873203117 38392744 250587017 47666142 225925976 80285212 151624940 68966573 306449665 237536251 740034249 558876358 943933676 277313336 611022974 184549450 788586445 746701853 992195707 347243325 374107658 237930516 326439116 173174942 857761926 124542549 666910878 380712979 709110150 294197512 788479817 567026767 723052125 27064636 239169580 172391203 674105100 377110265 523743972 245493037 477410626 462617634 695978557 396743361 593840987 523186670 714402312 663825853 943635002 800251018 858456125 777933739 905430428 293291387 857347391 695960497 955101312 528940591 887113718 574261564 913924452 736860495 839723948 760544301 793883813 489692868 697312086 381891238 600101026 477051810 651178453 533021062 555139379 486398602 887430573 472034144 825932705 82269613 248864670 43740821 137939448 113083994 624670409 473542487 693418309 51837706 858159789 600877584 834147148 442558575 462626850 21814262 908232510 684269352 780410724 493723591 615269936 301930328 597971098 109845384 925670464 372328636 405669376 164064323 755628615 416851164 620537388 606512535 940712944 524861781 738965372 81824428 808744617 673158037 811482282 105568804 567413119 293761264 358374609 229628293 358149123 169955519 363837062 355515181 675092050 581785714 982651043 778393431 899911245 725850800 841157103 588981991 613423969 587678391 780362214 388729343 584251897 549117040 910422428 838609644 875329107 424752299 439787884 18779772 264730622 70442808 486326811 383552678 752767010 335332797 859311541 824771731 831792203 446196277 940604763 233786916 560098360 500027017 776057958 105950388 610251050 78070033 222811408 65281807 279122633 53229189 768893380 109556522 983528950 677210900 864965134 239091064 739371255 33143515 46146516 41758860 157280354 24526008 579272025 104640454 285104466 98904895 905098487 828946617 931831475 143689200 336050428 279958984 967063526 813266846 815680681 248127005 996171147 102074186 373909657 176763342 724702610 420566188 599378391 162250403 640231531 623374121 858490041 520260597 841523882 9702780 286249956 146959991 831885571 818832091 964690166 592058004 655390254 484742031 556632035 144802926 897580608 833220478 991390858 617016133 935444610 638428165 910227643 539333258 952500500 786996530 909679620 676600559 731504488 708063734 894234688 448133006 523556949 206771672 353908720 96868258 718688115 332140484 718440205 688011019 875416718 677081168 740217276 544420617 557941661 411327682 523286165 186640845 711163389 103653195 623670404 127925837 711135009 473674401 764373024 706898818 879697181 386954346 772046670 428029468 644388290 35299655 525991986 278603868 555476304 130886193 133970732 32898369 91800508 26294081 893065041 59727389 753896008 167986788 826118776 530710739 743910228 560366796 682745550 152155868 775614258 499995464 613993122 346030656 722890801 451349075 944246676 736559883 787121887 775625666 812951922 25997151 70136637 56375474 844507113 225815105 999153326 890526954 923200509 569012440 596086932 396305036 666842866 43096258 74179163 2136461 515266775 16514913 285009972 272319442 566028880 271382927 960602951 277798323 639003779 7780091 897347078 886834241 943302475 655427017 706132496 195279314 924272000 361884503 788163420 445969554 504043738 473713157 589455594 122283514 178624427 159824135 522546599 516037482 678102483 71401393 586163175 206463659 531388064 114033308 684755858 575327581 591401078 191490002 349890335 37856770 982424884 32242813 187237472 95524445 674202486 313116471 389590901 162264488 722608415 589672170 895425374 329988546 358690566 167360409 643177931 477993949 800659470 318312486 719529708 644268211 947752404 685195534 888554103 179862944 772314136 150958490 584681437 579891069 639696324 248752485 269642945 171074779 242987552 146335298 296095632 48681137 647258852 342362151 466180363 196093238 522482845 156442664 297857923 78451177 298050020 77871453 968354801 709212737 852696013 791085475 878618744 383015806 487664445 265507668 605392936 299449086 958272088 36109518 672077758 256759061 907062706 169440853 637155872 190334477 206302383 21127250 208058338 208032642 933314076 490455987 540842406 63689201 957855854 464141069 504588193 294560481 594646713 566543488 865887460 668795439 696565430 396988767 427033004 239618946 618083777 312784198 409367541 328369035 590056306 216352260 596427217 275152851 744073429 1125570 398956666 151585016 453679048 310991751 732120300 465478399 501790713 288315126 435450443 244600698 408305681 72823220 926479942 416330224 629808889 473874540 796406400 211813211 448648427 237413879 990874569 438021274 809603174 202125468 358084588 136355349 153861445 109010503 753931502 236985992 554805890 228009831 467691250 80558745 142816794 8420628 756097967 472544515 964648707 628147355 631016017 161878325 750727972 217502734 903162977 74047387 152166371 66984966 994192189 635778927 720651573 306312631 420167943 389610488 540977984 88762429 221302646 110475984 755573490 551326755 934455457 637479388 805868533 515324179 815379120 62414738 100572275 98855274 626147340 138242766 681774954 587169520 920702888 738078838 820572226 624967307 922038123 373082796 486280538 334411906 966588110 349425020 509643137 199654682 685032385 415869833 538819914 513594230 812991051 177174439 976889981 637797742 844628274 16584197 691563609 306712255 363297272 317816465 409126385 16552072 472497730 183209239 427130494 359792268 911270281 664782487 822678830 37114402 986435158 972737267 972856140 109463604 871097845 211273582 528691745 227647310 875873456 757200708 971022459 164122564 965483735 73010419 336180582 145384536 373758548 323549245 808254364 288490829 374724552 240410526 325347236 77506461 647885282 261648147 602780985 436176794 761435198 307913604 876822894 193969381 899433369 314513638 639750178 553252664 610994450 474331181 523993950 339644888 915171062 198428616 949844130 563365515 849424348 709799158 973684196 593910950 992120661 493994003 809961239 427724758 431429619 229330139 779039048 319687230 572503209 209212071 288009243 173710936 355429264 307872576 380166428 2006140 675054747 17463780 339909089 336174239 892847269 747446594 834521571 556893764 930701064 832737062 960844272 398980932 588964655 195985256 482871094 428195057 712241558 347636349 834965172 600641560 846915494 755494918 866806705 332747690 399116407 261113637 316733551 244915967 931447988 145448316 823042672 603548217 887556808 509643153 821831066 58924022 482620509 213864203 700968410 285303122 912900804 142926850 431987146 153428977 778157338 549498261 785738775 743813773 852470300 843612674 995452776 56928684 769415414 265885326 720332370 359934438 842476238 661688735 677111140 636543315 898960698 626494087 750588813 438748226 768298038 189959633 732004270 50768119 806571247 447179334 966378754 551444883 945805229 934055161 954664116 844230301 969858012 740235853 956190187 76615626 950688699 391894498 626895145 134063799 720773139 88799628 405502695 318266540 840561532 80676376 215125084 143585263 151976001 131484686 413728448 58837748 107385800 54247091 599368730 477460308 627273547 469016478 887577571 801866915 998373781 280130431 351147654 318736552 445315855 209244764 220997943 90194820 916907894 614729306 885834210 178169993 503011477 25766261 996439932 39403541 906905742 528758401 606810273 461749318 821030498 358648911 723387027 652791128 997926545 109061490 461133899 303732786 697163743 133674497 698373583 34547478 273188656 108849422 681494405 414087363 569993531 60229928 328842909 97230754 108160888 74177394 825604782 565452351 762512352 212407440 372266388 252206507 691734308 689567035 967174912 99472717 619263032 120202946 476868586 193471012 204678141 118557790 905056495 688816484 805698021 88513738 135639498 48752799 269036965 20931250 163388245 51687541 814351831 790048899 793289931 288240342 361166332 128753456 165430228 96440383 116133981 16520122 226938610 12481983 910939160 112111929 982417119 408336740 558525810 544818977 605672882 223939313 556119940 445193010 601703062 119621068 889906078 866208733 939721826 120385146 183351631 36257883 727117271 721848029 886634650 573223668 705725230 71547494 865712590 437298260 449614163 430063722 796819542 398388961 752839692 500706320 627799831 399961773 801698159 509251226 716030943 133984717 531702864 521967974 897147082 285125137 762383173 146834048 531867212 129672943 966820939 243129250 435503657 228730515 413601311 104224320 169019864 162645388 319687648 294713260 595057257 117557989 540105123 149868069 523337567 263105962 330655527 295285387 337556745 202172426 398595253 76114685 597436894 427646527 490961667 202418834 251404456 26685654 223175511 33779835 691380489 409686752 810789487 332601045 669943714 239018514 584142446 173966632 457068748 135396985 461552797 339378901 551783400 511372184 837581604 695919634 921823630 98735545 114192035 45627628 301480149 76624363 628509178 53489063 245199027 15124530 622173812 248700826 632446062 163689783 659363630 211903091 226226236 150305502 972387302 758270054 997914461 711249099 833924536 510112811 726723020 648848433 723484657 56205997 83579051 4862449 569720150 346857315 408638147 267798060 733912691 334090123 879060974 605474891 713709625 46138797 687266061 23293938 526001897 480190644 744636126 657785517 805204325 774493317 911078423 388318023 505566607 385850017 935273217 143555665 904539740 363664369 381534306 286168230 840332097 447720443 816410230 174707779 235766847 221479400 572040745 222946254 656165935 633130901 663003997 162800835 436732973 90617522 897922443 491801261 958819039 624666340 877754052 535880789 857991731 323386203 669965664 152155518 415762283 218986874 498682724 475402750 872478582 549512733 874046064 289267741 588428267 332773574 837423799 288871446 321966264 123493947 670532573 503514677 779704304 156693303 527938533 384698452 827500181 486584617 580953522 553349501 935084182 768598685 993395534 829284869 904253263 680874468 869377738 552317753 680196294 119311724 766248793 361086914 905286813 636653197 792464715 34018301 508751975 55803760 942111342 571582489 998586294 744675704 780489292 369281954 837918748 597957466 753001312 646156861 705222349 84998398 213362809 153087342 235164170 129952701 441411297 295148494 534834319 126836698 579500256 301078536 999506544 914287137 949312493 115820706 984698551 424655721 796548807 311746091 612858790 390628436 625747258 1165944 947737587 282326883 864896177 104354270 491886875 74628569 370343457 364499337 543103938 87353304 593715915 201021836 792588323 19585785 675902058 567765478 896385200 3947724 630924139 110047460 484832810 339333092 611526344 253324024 675180594 479472059 779885284 132920904 810866831 444682724 694531885 198247069 719158526 51934295 537896486 150045494 962389307 597106114 921456401 28411246 638579461 18679238 690504357 599949943 983707320 638386302 837062822 712189823 873099112 141821388 412249635 141382620 358896981 267048044 751428860 382658814 483559126 221100635 828893616 509531534 726110962 285218535 698901628 248560784 959889359 737694164 844474053 252218137 519385600 384376760 828903023 645455179 771337577 224937834 279060930 90124384 976155207 249199862 451952147 256278674 957593862 889716948 981701885 175596487 439086192 399140587 438348140 191629663 978510560 301578668 702150004 206155455 460206236 410954106 930485749 257009390 864586697 57824127 721449389 548128106 807711985 366132357 445052145 235658182 718085479 654489242 861090309 415303865 483589596 71605720 179122950 123649203 234878516 161686003 687772933 288388045 701819183 403814575 913101925 595592531 812526369 445539240 985669115 335634742 930032520 898011983 908436391 295410021 995350486 619364335 919587380 151636134 701858900 647631312 715799669 372754636 548134124 323706363 963731535 358473339 376645517 334431692 874783338 476644040 622106061 502611173 943283148 813255897 859898228 538407052 897507754 195859603 256810906 74792326 922875216 703141972 807786234 621274697 694638430 660452758 744835097 65557365 367114469 271586369 620080450 439923114 545529186 354635752 709583352 236340929 702989273 320833045 960355056 580855004 954187241 436815670 773920081 513120554 912274497 719871666 810674073 70448280 884928668 81987038 817617120 459110871 852748982 759870404 874742964 481308195 975796890 503136062 727517924 85587534 734958956 212248119 348020522 305565635 603446294 143116339 924039697 832295803 963511577 610211492 891330998 661684836 976449403 457386164 653732307 617613538 800523671 773161551 926574581 121241977 198754067 128044706 789052883 61952290 102005798 26653606 918682654 517251447 747183926 618635424 956119040 785075423 991015578 751860463 757949265 147760664 887043739 533347469 948710374 528135298 753299186 177053220 297618502 81254312 374169719 245661755 432892092 398995072 930555513 618654444 793461735 329690392 997077305 455687954 600461466 507627532 830917522 281643519 680407499 27677831 178772808 133693959 543701275 116332415 801616126 407132417 727594795 395983842 597296593 380406261 436953707 244431266 763380289 384742903 402702896 171221572 539548133 204821208 519155081 255917005 299250524 91576669 716653205 627496983 644590040 240659564 477654029 249924546 661249463 558777777 829201424 150599545 358374467 328622603 363547398 265008221 611244769 12488415 969428577 299207726 882396907 16415202 814300413 229056089 412729148 398994738 495774932 457868303 898612836 629224148 738876127 675055595 953308546 134487046 539436435 417989639 894748515 434562016 858337535 150779949 911379525 726570314 923486836 194399762 419300920 164955607 491983278 249137679 474886003 177607036 970492605 846604725 944131117 574849982 900796385 339185625 469233879 294808601 930134797 89722880 876590739 406605406 961809104 248186265 656819401 426966976 700483857 99331980 603902492 540840668 872166596 781025882 794069103 62707097 460147327 426932508 708345598 665980796 945042187 831751625 948142609 690892934 902990034 113821366 839490478 369624369 693888038 278561910 738758038 493887805 668773661 376198330 995942391 571968165 687194894 152856502 718328897 262063457 870401464 787012929 805054833 537006548 552433675 191743804 315777450 280104446 883645224 479205323 936519394 96751363 690094638 77215081 368231508 32608167 242170478 154296798 843248158 791234037 803117596 211913742 857828089 409282574 888561650 412933066 984058301 689609894 880183082 221267788 859461330 257569920 917577110 594419823 742736598 243721962 921154496 650747862 790463023 104659993 739243309 511794890 830479497 726278524 898227398 205283781 846221431 832112084 873571504 870141075 954702405 919244571 984727037 814868016 873945107 100497820 220056542 66597990 848634990 14629559 942510332 499989510 760752022 68202958 227444407 2556849 4787260 3229335 897420554 783101418 987767859 399688302 694189795 251249434 726248814 316461805 773172273 277463047 921280127 381619716 482324795 236624671 680008225 99559973 349873801 279591707 806664073 522698274 868937948 233210367 569119366 377157471 925908974 821560233 857660812 59384843 557989090 135594383 247180250 50931069 915448752 752350946 838592653 187562894 215645355 37374382 900088950 803929919 934841683 297195168 538396890 193706674 312232500 281130407 336082969 27407144 643493689 236282011 888644246 285626860 695614485 352711802 939632338 573623506 987904572 717618235 872245280 832387526 859659211 708103380 944042461 698779961 766383818 409871147 715135133 246942393 367893076 84807344 809696682 396144477 427217907 99837579 749059944 621981856 878155038 536066130 785246062 478955000 556906358 544553210 814120510 613990434 962965764 292122397 459587703 452531188 487614074 185045370 535012233 68310951 636401452 69862706 978548928 222615264 741779826 212465189 888418686 143238670 809529134 777431866 958006305 603819288 781181958 291087357 686240843 496532830 800128716 43219813 789747852 378776771 717953301 104760716 500946053 487783259 737334341 569628846 737486395 174170606 759261307 117111979 914540268 324784708 546630507 212241890 699595462 569417748 957355789 330478765 806399742 749983649 919322426 525570272 732304907 269178947 931854851 814865798 992324520 435723644 886509110 562884331 758055973 217730389 629864844 61910822 455945845 14521384 695038221 399692201 766494009 741354210 804154724 598134615 886908035 839660055 859329328 784603516 849508391 838510893 944458910 579804761 913964654 417709921 776182821 691446120 793309984 755695574 861388753 729213589 935883804 656372089 682095161 33523451 338887843 305002172 333390188 277669709 692830231 627407615 869842357 469303803 919257274 647233037 658188475 20087666 365960708 3086468 291035395 179297295 364629581 23828563 34861421 29770999 707331379 107675791 961127867 606149937 846101131 693161112 696723139 614736942 815269909 452506410 565604535 336661372 507525892 489966305 874866167 747145813 981588739 166166281 777323194 187472576 372553327 203959573 360795419 81763583 747415564 720924348 972621440 47482624 743869482 501275404 711347073 252793536 546223887 132071959 581329324 340200534 376425123 154745058 557787855 72462658 849901594 549316487 606968312 225807854 421222028 267697601 887508165 727557885 977159723 776878720 806035184 434280125 724905694 76828754 207831072 9245249 613958019 182829032 623532944 448620835 744285871 401594061 542878914 145089491 660230995 591102097 799772001 539416670 749180274 743006577 945430035 678678391 764755059 628292070 822079580 236178504 604381786 483168480 880520059 187861511 426069627 119506738 261532754 52165414 492034204 276856101 964704492 928302816 978153529 707670317 940945936 581375151 721640332 575957686 830139843 215037428 771505566 557150456 658275317 73848916 856153520 549525361 563458369 460394560 989255785 303951628 880045140 697875535 856521596 420176537 539007619 502543965 898785910 220774572 594440545 243802904 655524074 112225133 701494038 633114784 774808932 583237442 874025983 839961158 972585090 783005856 810766246 66012779 182638945 60935265 596733848 78404343 558858082 380704386 661191306 258238420 789866783 48909246 563407515 339742008 771004609 1603701 457523703 216200679 592432668 108310099 681084696 370955274 722209081 588412330 838165248 288138131 920322890 858636275 959498087 83625172 930498471 165505926 786364822 275692568 921549369 639785809 926067726 619008755 890390983 712312368 871986257 361600801 492046067 72556942 616649409 452561761 666242846 315578644 562727702 552591137 769255126 435774006 508370674 408555249 697154874 551893429 975000780 592582677 667450304 123372135 460784493 143487586 425931371 262184152 500592048 282928251 810222918 386781369 696774638 356386461 851704473 830000342 991355192 474133257 602237400 480466741 509685384 64747876 67461531 8190093 534320332 490437612 851293692 79209233 99324391 30622319 136733236 77113400 285096132 284473308 690688123 148296123 606388711 571508506 957583669 652846791 708755425 202757372 803218961 397012260 568594539 432023726 465446816 720612 365655850 310137183 824457773 159562731 730495861 193264886 704412775 264102897 312457937 235905647 537473597 37421114 982325535 128878293 336966181 154711424 302502239 276031279 437666517 330201616 933814960 495701625 682612413 606292895 705568910 377147670 980085315 513643338 959201660 73856050 211895368 154062769 638360462 187771849 305573386 298716318 454678590 448264534 707433022 672818468 869088382 670848127 685176841 618246314 897760240 648167720 967691253 135486647 170800355 15257110 700901017 417368057 899852410 201811902 915078414 249708687 753857551 203725297 777805925 156059631 612363358 144474974 253591104 233727179 656007975 301080185 601728769 472371525 738366360 37294695 585867543 488718111 686973068 616915653 765799546 288339181 671100359 430968923 647960550 581541505 851962437 567352177 723420247 509299639 642028007 558186034 998453116 324127187 579688040 579134986 669060984 134470052 465686483 403625936 880439114 699944705 999705319 527730112 788908253 162378311 802701604 166418888 544982359 263838955 865271884 227732519 318458197 81709793 848668327 1022352 490558809 329438267 929918939 915783051 961853646 701039352 873395453 3317012 69066795 66524010 313381355 112688853 952712152 693096879 856359563 344084211 451693600 318624947 839630842 318227963 772700448 187947329 858501147 58115862 104214846 34872233 270396807 103814128 179463235 109884630 878289434 321007508 772341940 241260696 800697934 394299369 475843295 191381087 539177487 49369007 743006111 694305756 718050364 629487435 865091263 604489326 703987059 183460112 824474384 352108863 644543384 389124933 454163030 428595956 511756606 186652687 373005366 213419435 901144820 402934505 745030046 596413100 636582083 49085398 737147265 306600125 921707857 278634725 691834222 174105092 326278796 217733384 296543854 3082459 349511187 222388502 966715572 743168006 770148374 338457401 935119451 57196940 821600748 665860308 814392251 751102418 754842990 638277113 975830226 526413662 723892981 245681836 804807296 24279963 345925755 314202602 559296332 121350990 464036477 193270638 777571542 262986062 393390613 234962944 755190006 490846686 979433944 934891427 987554568 739332169 851065428 76259222 929072518 512819672 898050405 645348568 786851207 195482825 551481125 448587045 924172288 782395763 844176314 727710714 820771643 40221993 577863516 437827979 834020755 109154027 487270905 263417116 328304358 39199338 763381861 756436016 872594870 142589420 821087738 393438256 542390298 155683675 904385970 664144180 942286559 466059873 635864623 612714977 686144467 1967921 82831920 77028027 504928747 34822455 874778397 571853304 949547438 436581941 883799613 252190273 839655336 778973860 785541354 662291569 755216617 391493226 520420872 57493587 820423850 39607738 875720263 639909726 767762939 250122864 797800358 445833920 896113986 440204116 501969238 286411559 403224262 36320367 967869602 960533476 986413386 890329548 900850846 391380071 490739705 28500233 953869272 786135673 830411759 436224634 707055441 54072224 470158885 367726608 464511350 275952961 900892343 684705616 706495544 85257036 604767678 239342111 935557223 922723647 942081269 716288989 748792365 156959793 793614451 142203324 222749499 29167629 425532023 199298547 559278853 555500211 992323741 266425248 829218546 540856390 931752458 775965423 902896108 585868664 715583316 110382420 572123932 221614548 232259871 18331613 310244718 176714364 654230847 400493660 699184493 548090534 883778121 733683552 765149841 67195134 422127753 26489700 347761351 179591610 186113276 63238369 679566991 664681020 787362084 655284097 924835417 561788041 879792541 850498398 877188427 8958520 474221861 242790361 816680089 725597363 740940434 144496756 419296423 39973955 635501428 375776204 577913788 310935778 842106548 787638861 969014558 952370700 958425494 359242934 829874341 215350727 580795889 95274628 599208090 51544368 760497572 233007807 818093243 402923203 903702444 730722025 877033799 586185756 944762079 365068215 687467765 561998528 889892198 610076868 924410063 446775478 450220877 373872290 969644028 690204427 928753225 905902639 984460112 593257452 725572263 668863020 839947509 714885335 931205092 489884890 668962533 286381831 702621005 208090329 301553115 194786695 505507741 362967131 553618343 421799477 908420648 237888576 654291228 52255919 904847228 559412711 962619362 510708541 630045529 471101636 610741654 114213902 525474965 259008356 338381661 129054491 270417113 132339569 281324507 194845180 951396323 526897836 676975249 508944832 694424376 30196912 986548693 734113490 814024107 429213447 757937810 107136321 931527515 457231715 528703079 197330279 722242936 286322501 559619976 31694473 368779163 71276281 881599112 183361956 269747348 78773869 668266153 168637872 178606362 70585176 458086744 401293553 960861056 849976591 886590164 168705176 380130300 126107886 897449216 308562619 920333386 663619967 993179148 556853049 835378369 463559295 949584818 899501602 957758103 736200385 837840947 457313371 523155431 355353733 587104539 464766166 743818163 469433693 723793178 232062510 911733836 527408122 770433025 86307994 594302187 198288710 436863327 371412154 658978949 349079485 917803135 304237807 529109188 279620108 676697115 390979384 997131467 98676172 719148431 701418434 988045080 263845906 626641727 13620346 361650138 49111992 550849104 134378963 538293490 217843031 589362522 537097198 691883562 598043408 666679548 122265283 531958619 254943105 785756555 337152663 674622169 538579672 773357375 244643896 518436458 451570652 541212397 460906119 776587212 417699362 855564984 162358723 674779865 598226073 828680883 472449305 560627461 501838001 805913683 686905152 987488171 548659877 645775786 536725460 949290301 390754531 735735878 333915432 894512991 1188960 980540118 841775604 904846573 849879427 944858123 643327884 681695720 503798777 978271273 905097780 991766737 201078121 453521820 294032374 566696405 505055943 522854194 131908431 574079903 190315880 879198069 267489477 969215802 694626666 872049113 49975263 326021845 125696393 850080539 264928244 746230131 530678368 804627904 299152165 700221564 251196540 663908427 483536782 633334261 425705360 799911490 233073520 951708712 415952834 484255488 308037798 616248282 402901299 952704192 205634260 960687377 332805892 523140331 154229766 589236340 536491779 838478853 559340661 851022043 460765478 647575158 234519607 735686290 707127682 891560533 264048866 585251055 133812135 383983491 273808152 633126516 430835557 577490860 518754369 815680922 367591219 959686399 953981915 959361315 687277788 998038157 373535609 971068367 257515820 885762147 804956438 999024749 74029558 991825670 709225789 723438522 346263360 400832301 176003895 509477164 96713043 799915696 291103109 605436154 481701104 654142472 573071434 858383522 15236226 830196650 829532711 871271752 150010881 479627852 304507660 519141509 236075563 404139826 38357968 729102635 696131838 973332522 820735778 969891137 794947051 849548284 44630522 421238347 158282188 589321096 133511182 324714165 213060456 924939205 700192102 828799688 590255153 666767116 571487873 841619928 153979704 968490181 737318752 786943347 381192268 390045953 131174903 927451671 191011443 207453144 181210349 734792309 456004459 657550271 243954601 453417056 133641525 284902652 244165304 283157345 120545081 261909929 174069699 859731252 517566672 570884851 221794174 517355946 300288412 957739213 533967037 892604400 792215167 872915910 474240413 763842854 323690676 982752007 922089673 972208298 472673488 958861803 692431686 709572304 348568222 971981240 83815434 930646787 259642901 549822290 319764922 612013775 118017046 381221313 335074394 380895820 248663277 707682882 589584134 869348487 502350577 671011094 476010425 868723559 267252899 453182507 174308425 871162867 44741596 154462759 93550620 409530109 369769701 792795915 771834776 917432917 98182485 105224216 2282806 654415115 303329448 442890224 211040868 325215426 42937111 870632014 46933677 851120441 652440564 817573255 686683954 783839149 71456185 457561748 413732084 844652668 62925382 561742341 502510015 805431799 277112118 683596465 156451926 330808215 133056781 248861935 8333642 709126189 506318452 962841150 264450481 467091990 462658044 986256830 140168519 730469056 264933906 671248074 62710063 565219862 293976830 970826861 632217262 817292709 605040113 671078629 448204845 859577920 192920749 575718781 481614505 813419762 761912515 821377686 718487581 922621886 441897241 924883746 345841779 739461291 89445793 594807495 199592677 578588953 95747117 635672844 482483307 868727674 171088113 251450407 117699992 901582844 479990219 781548959 473940694 636755916 445963072 841683177 160064729 983130514 288356076 677649123 423154462 709870563 562662713 603269292 277630149 422794240 91008702 406205235 196522476 307005033 250621517 437555387 426440650 774394025 249306809 394762479 350435011 408013240 32648185 718060685 173667557 317092726 218721085 731838252 618350351 659796720 86967510 901786160 735557136 773661998 404301632 989424610 227576686 641564534 335566332 853063730 769522912 975203096 698617057 897880936 130224382 538641328 385825598 883178560 123611471 311623322 28636027 307104253 290262441 780519632 169570951 748607737 449476892 850894527 242683224 450221621 264789177 628433917 199204741 864309100 138826664 876400972 461240837 752632600 277716862 536344951 76187854 161376746 132719431 164348005 114742167 322497346 128942093 660311842 161551848 655680632 100344759 977992524 749347481 878305109 242507935 274343116 79412065 475808900 332982788 622496941 369918369 701121772 683494376 971210599 480248892 946638023 357800185 754239443 209281342 720190612 555824221 724964449 375298053 943830288 815392850 901598429 675891407 907935392 785957751 870928590 488688661 824010199 12085551 807434387 596459087 714898479 128278037 190204914 61650982 161588905 90562746 850810275 376630186 428185136 194887706 726701037 316297005 526124534 149837136 920366225 846027353 900971761 857320565 964060457 239925679 555061123 530410172 562519510 266522940 817615380 332176003 832327027 83656422 464977245 167368087 168091818 55613244 465606115 148861908 648402306 469095118 552817976 32130969 578428340 267063686 563448217 228924391 696682857 671868840 782364326 617441311 789336420 112285650 535057999 210723900 904167864 872178702 884516064 179481098 535247015 213101910 370885854 226315531 535240402 190854304 406839152 172834650 814983016 460480765 776898825 556596208 581436239 290805982 405016217 5825452 296544455 50226608 624231559 593942457 626830010 323870663 891753917 769277090 888711110 288815165 708282666 218238432 572727685 422247989 477954556 154748315 268097784 196572792 444303067 40370703 178302297 155820737 996724371 410815208 929544805 585505752 852359743 660751984 950706627 809749037 864242514 28337739 155811806 36469211 773632391 674362938 826715433 763892540 924385892 358595801 708899695 261527121 528682593 342064391 974474348 91643097 748293787 52090693 602474232 405734836 818092463 383055449 394980596 190912763 458070522 19627026 929101452 721184571 908182903 365096606 721210703 717225098 795046506 719227107 948017495 361896309 780685807 752839081 756017309 107615092 357222890 238155588 487205534 187541737 837269956 356182616 935325811 651458405 914360100 892288733 924352787 657668865 918105359 743065350 831628688 827251380 910739614 543345020 876341468 719199760 730470013 144755661 248151747 113572022 209884178 135626317 296497495 21254031 478638045 374675962 648105672 363913975 830558895 772233752 990979154 782400249 994499132 349308394 768348417 293955555 773295169 63202790 169681301 12695604 194089348 88353807 320944336 317769637 380694425 275568503 857256847 49641889 832072920 828772066 879150216 859141447 884126874 80543580 271756869 29296156 404798806 389088385 414056326 188975163 821898799 389728260 723129346 329497880 977805133 442690647 575286179 253426161 990519765 563704097 649405038 128285377 884695551 284952386 899622197 52874846 678336278 650592003 774540178 89333910 608669512 87006610 283846492 109154904 918197143 314626460 606106690 545372630 844992365 52987788 355813448 305703359 364404294 360490600 452138181 123680447 862517429 577861160 793002005 772396695 916073932 748993681 822788468 182014336 449782436 358200658 676599232 376974445 721844773 546782315 938799686 545647706 783613042 199523095 588231241 504677962 954770290 216241123 793819495 139275218 931907567 652974040 836286563 609081854 856067935 605605374 765369465 512574944 522138387 87212267 898093916 743106481 781831784 89091976 119674108 30605573 787760973 467592631 574316609 152512258 386557801 47147005 566371578 49731680 863484462 263682614 340658418 221212737 511453142 257511490 277806637 71965048 954901173 353461427 926144157 93865152 854929769 608363018 693279243 271106288 576289465 85874457 465525865 376017153 951500697 729652015 947208189 280410423 354754480 319662819 408522310 247609313 713563296 702790985 923798956 191487317 441360270 18535304 122064658 95133444 860656023 703042978 839076479 146854880 438008393 284306019 547676296 248024249 870690658 95472543 726546530 214284801 723484908 212103929 615946242 180104098 556764441 64858192 142781057 70199096 904618368 141464100 950220747 395401539 952819716 933564408 945055698 48645269 670680902 249213468 282052905 86733916 293445604 14531133 790361714 409300049 974828163 253893749 972940289 954498196 997706401 48986534 606975687 399168497 852138274 145486936 602085731 387149261 843989249 784946176 852010148 716657787 979312452 889642721 924513072 152239220 460873090 1881012 665517792 345340795 647102982 266800811 508943389 429668363 975264713 263612320 928440992 714778283 852160848 170871861 635567754 491182986 942551088 120555536 794443454 509398994 833579839 23260640 178819508 51627910 516994687 249662592 427180919 359578369 704715214 104606088 768188872 604364460 985108108 99867556 319527780 221362843 787378880 292682274 330265261 135116203 584548414 181441494 671409391 310194147 550323096 59272112 604102238 3003432 141240036 110182106 188441665 167538241 650870548 434903521 669222849 352394767 524175800 64051209 355503194 254123162 561944743 372244382 398688283 308634328 799573796 347921125 502076536 363121709 387502347 69404501 509436753 184874495 733233860 221464600 586078231 298726801 926579168 593850671 888481765 475669085 753197473 59185581 374262775 122965153 795454779 433476509 868080799 566551046 692527448 13830957 883006440 74787230 995966448 621533227 756596967 295021149 374262477 262511953 678917777 246093790 284322822 197192826 256606160 162891332 850446808 399159902 602003483 86512833 390468492 124609358 129608402 86873505 810450000 84932784 939752397 229132489 763991297 161201462 338361081 126941683 155472519 8228348 578198783 88926004 102065774 74640718 425917727 350896320 381941951 65781645 733138561 358376852 905573240 803867574 899871033 204218487 564106369 102899731 697128075 616086069 896578529 674326283 734122055 103807690 786105576 769976141 976653312 809705443 937604032 192465455 381403042 336152711 867431168 685006145 848812443 543247146 791691143 24744942 387882811 300320946 665910197 604282003 676376498 94274949 680803690 593892423 640585495 372544160 413391374 298466610 767826554 52373312 251951945 180191218 300315275 88926395 557720207 166688380 582050609 471890751 980031959 756652424 874020112 731285594 794184996 463408874 588608768 467323919 582816508 291812330 637825945 361143693 439314461 23788525 122614607 16031004 91213010 68072319 146017037 36484354 512700276 225390752 395971486 171347629 605238306 487712718 865640698 43685398 538507778 444923053 877982677 348447737 646000037 50943846 114026980 23217442 441593470 319705264 420556796 396763799 563949992 386116943 688825609 552808844 600560588 383858048 760308524 479156904 831380755 169100813 582591472 53958970 270247828 34794386 620310536 529865417 996565026 179841392 671647268 31978601 240281921 189467291 467049321 17576764 786394405 444406207 888101556 265475094 914404838 627313900 833478819 818757775 825543385 670439534 699930966 557266532 657644042 325320876 679605297 579752392 713527597 402053167 507131518 197285354 926661241 288470725 439172178 419968490 601490647 105450280 770619184 249677497 471632366 78024021 592974830 548381799 813432705 156277401 260335788 59542547 722574781 622469698 782917225 570554818 794725417 674670875 717925211 695008066 929870774 871702100 896922384 337078727 432935850 76879136 869660078 60278217 104089707 19623386 40334908 31832082 741754431 243569998 894489331 367486646 820348049 371843660 505486258 451307496 932546981 930012015 969434010 494478973 972801211 933122627 940794588 922165067 960041545 449121372 678810034 53265560 971859163 45416357 536188434 526534461 826015540 582704512 799161539 202214835 248387657 176490178 808587172 578490281 727532405 680040421 755140463 678676987 852979202 618837408 641028584 65423634 168375170 46659467 100779289 89797057 811959617 25143636 880877905 737331382 747992752 230325478 443519747 91697562 692829462 421801142 606203813 513498550 624050355 458134735 919164242 201718923 824582224 696244561 781743245 259159075 895460420 578179001 819802375 591801314 671359031 434492286 704322954 120511764 489181834 205306873 394201955 44283151 915731176 303582440 840698521 260969893 960034498 940251975 972359746 575023843 630673720 463931876 911334822 341248460 859001346 439344733 475668931 187272491 297179975 73496899 113488937 71099451 159351323 36984627 579687989 480322445 696804715 641059014 998125482 264467325 872883288 287773711 351817131 63464209 212223506 186289600 565546254 121814971 598567427 351294228 577152468 543808411 873988258 619096522 649747088 118124640 307638119 35591612 184068306 54396192 933708285 376672263 799642551 472903540 771431275 590140834 639272357 265945594 763977953 272160493 338869715 259553903 953440625 26918616 352954373 223982817 443886152 263612079 762587593 710657357 966874815 964639668 979391031 928565930 985587528 53381017 132296961 11469102 487104225 419067560 457719116 247410339 810789765 426433405 939002633 457139782 625037834 472973683 861827005 388538775 759181241 559463423 659853666 98565303 288681180 223066076 811506407 231805769 526731890 246608582 388700423 98857426 896557951 390894857 799230188 256413212 605529883 444167831 626316074 27560992 705193790 267270647 668209830 569892883 577801585 451252460 623923468 41876253 997447507 413817644 642236081 344962221 347380065 188560723 721905459 186167929 705286609 306861764 546465530 504472566 567265374 194426893 998705178 109502473 194706027 147506942 347663573 103607344 163831759 122918080 723133199 233402874 851948063 179493946 657365638 420322958 653894663 79088902 589169759 197542338 712586743 606169598 823546090 543160173 984501450 636924768 926477251 463044522 847419233 351809646 665857103 442150127 523038771 237254976 915706206 860458343 933732207 51989150 702905089 682978314 696327749 448031759 600623241 294107386 338537469 170999892 362892011 274632942 720685442 498010009 623163674 222104791 958089846 679463437 950957589 489764949 880237180 798310604 933382425 143191031 437073455 288552325 630761836 600038388 644399762 72857688 592038048 282385167 313711196 234541059 650938929 225349490 955848615 372713528 993242771 314431902 439475271 71393084 76404944 66969972 405909870 396678005 764231372 154489705 306717599 264905851 603054004 6529714 909788163 721465070 865990022 794605573 966205616 337332251 482203488 194792590 819279628 813100915 896593100 169438876 329972453 54443120 943925363 768617799 856291143 710931313 999778839 727326253 870131417 827769463 899032697 472609008 798945358 225581488 773898010 4950989 929375964 579055546 974050316 461772803 644671997 454205270 886502901 482172176 929687862 302258136 525371478 237202856 302072569 14488333 14797187 6102991 465305070 19848682 430746926 296707400 603010374 586949711 648903875 23966494 732654345 666370234 978366330 139790777 915948796 339086814 838851384 261742363 394554005 142374383 222539329 163165589 406346282 405592073 955322826 49615129 296722312 215207928 773661213 675882623 892430555 385133206 407896844 116518507 661552134 560031747 982696852 488371167 769673499 515763281 922735286 266965574 838787319 356690077 848550253 243411062 513417376 232923630 918148062 145995179 872426007 518762245 841646267 152716610 358246229 284192127 985755599 852519117 954637045 545328274 721811612 686717285 734268757 321031126 493415362 32252856 439045189 436985004 675984484 143449605 338991540 311509653 796668049 683820150 821886076 678329841 740080297 468442142 988450576 67865428 552347188 403109142 423411689 56257864 552886899 304711400 599170843 4415647 266202453 212293618 242296742 231488772 477928674 287640887 684137897 66982772 91023120 87065425 258499893 158135301 249538492 31159509 701327461 534207163 971144589 941256222 957007767 860099858 964416647 283225240 757003399 400935962 624037366 300650954 421660277 224984127 399604595 318008994 569741635 485931413 850372486 469620697 627751616 243103026 589262389 261196017 618622211 510861509 872760949 656355044 820973535 813753929 814463193 31379033 734085995 429093419 642030541 66682612 372692326 162924780 942929377 183975571 864161858 550648589 692242725 581909913 587097772 314065788 602397465 168528955 533343212 12470909 635620568 93915927 645369164 298848059 871335940 554516469 642858052 598878797 767808988 451460476 893703061 745180752 823546648 161137611 555346649 78486570 456935701 116851496 578922638 415975760 919227923 430408652 667339622 157427929 250719751 105938371 974444520 244361930 740882048 648264875 766482116 26144937 728239005 466098641 941212784 115485174 165546365 127204416 456327805 437440189 657650834 589355399 983400084 333397600 501351015 101336206 219827168 128651658 729423770 635404001 650695179 158635215 431754915 228834127 934975789 656538851 864627601 225407068 831136400 14841901 85141374 25440353 320754707 233242871 694187521 570135824 979090304 8672693 847014807 109569591 336100605 31318058 289513970 163773356 753385475 252291725 644177145 273782358 624956870 279246694 825272486 740689331 978891625 279400986 603489237 222095391 243295509 40069689 259269729 60687023 853886757 716713410 939739477 441242386 623338716 477048746 508090548 90577221 829888426 343972523 954059714 177584418 927033267 372922092 963011192 629574948 980988862 488642634 524273968 31248039 731522566 220710253 770785487 211432490 980951930 115262706 480897970 136085146 423128334 72624702 572435919 144848462 247565146 143318650 354253384 40707652 282391817 115791509 421037121 297873293 321990109 207506877 298504724 122720188 156531550 60359409 441327742 266465796 647079667 123476843 885973030 521218462 672508354 64360371 942108459 204687826 539828343 187665094 411170987 267264912 783390674 694290913 762992278 736054047 745301002 426830889 788525018 510888555 921476444 620484797 677366556 1807772 690315195 443478256 842046452 677779232 891249431 31816688 431967665 284444732 993755916 793671506 819462671 49719572 300689039 243323853 776229326 528033809 783447414 536965002 759040776 515884878 700178153 612235461 973918639 8292965 960065394 38412523 330469106 202161778 439617718 71067407 859759797 89199593 710518784 70198309 194248392 153057266 307684764 22381819 759880922 458181053 603852665 588859277 910019848 520990109 889093470 330154865 536325580 167401717 191266866 21515284 484897213 153795736 884024624 272898112 480301362 33063442 837615829 822372638 910252072 885851086 976480194 599699164 823573956 479951142 988129747 668011640 948894722 321711624 676046317 124107135 838620232 94997834 724135956 265013628 853058002 126680549 413378302 355704272 921966424 245722413 838936407 696204766 743775345 311519770 540602238 211836861 243647751 171695792 833399370 653878915 858749125 692940380 836960398 746362586 988959441 742940774 861939509 320675662 587666551 320080735 989011386 473926464 713044491 547784396 927816534 581589267 771714427 145030711 324712380 298327766 825934080 700661616 962475655 880674434 931860619 663037080 690006151 156193983 873655750 721544384 726011859 446038022 491583521 33933878 359314974 86820161 473404222 66513225 726805104 56300011 762476166 465098094 868187187 532100166 577094859 487204543 933769530 482559140 924136458 64110587 671143667 407420861 926634365 70624553 101308219 29682278 561988747 267490294 490447376 96957436 136178006 111120747 307136322 209274765 247281654 230685959 461954861 53106515 113315438 46039475 823757745 293539489 679606519 612834191 890974375 279033224 435514539 185621968 994706954 213663867 319187190 11136193 360240895 229233439 364724910 192584773 449542755 243085385 471004579 273367241 963485888 572353552 895388565 699749530 909012246 759274856 893466166 98554734 884693194 854580687 982157885 433983026 763056257 483221692 803399655 410796936 546152998 102608798 979257813 315936581 744781501 82869894 195765324 82160954 806668210 382281965 835528485 38552679 823744008 357741264 675336393 398727250 458662165 135549496 161292054 73235275 747797684 681540937 730725740 59731172 392077798 344043724 642890216 379347085 632846023 164792310 390812691 179945545 932289969 771711003 863334405 137887214 997433352 617647118 989464259 158222695 696232350 484771526 795460998 456199444 822512320 290053635 951679976 791198684 801750965 347644524 998239559 969018026 981606216 158758805 296721962 226076611 544678341 34065626 935811465 750043613 848831229 327884562 894102236 889914637 960786142 156987538 407403578 398697486 449094676 286867995 610857933 420057393 687051391 279880071 283665251 139493131 869574876 585016167 627086039 305411316 973220126 478705952 589227069 187710795 784984304 743362074 902687721 300842442 416893244 294183191 659911790 327454920 439789825 354075892 578155354 211814075 553413910 290968697 473107765 420686852 962528037 379391813 887469006 477266283 929933242 231378830 344525555 319571915 658804265 203418862 475079093 8817786 993713641 760387165 937110625 386780523 997107237 433826076 987361062 457695280 824496844 240378361 853730928 531177985 639750333 189610500 446517358 435669251 640310814 47824196 832138563 262796044 442194651 291518336 819453575 454926560 754851923 629264814 913200170 56891038 291398251 6154519 724499265 455663435 862350195 163825577 207505974 78924297 473262337 335405813 939117151 677354279 910662213 608520176 820455512 69588909 314368780 294779735 467776770 451009895 923577627 492141011 755798627 553558036 990292012 349213296 423889126 345521857 619942989 291296029 361045651 246686715 917540831 773267871 822370043 119120223 270489584 38833548 848910677 68936941 721073102 141741586 560169207 508816794 860485052 514122473 834397799 460530606 519346011 250629939 963871480 131402449 600885273 511235542 817933211 146004746 941694751 275434490 592804367 294457486 686951525 17094110 658060488 602200970 728835025 213220646 328907280 237240534 499421224 282931879 522787865 346219166 849012243 199269799 405118703 78855916 371933467 171175148 538883144 29567100 757639549 385615339 652158647 623969779 770256532 515147230 967196848 405029256 673731045 349342425 677391228 21289294 702397762 199248732 489967866 109786737 784267323 619727619 739140045 530933191 922524745 816016919 910818582 85628732 650644874 263986113 441607303 13524177 310094935 201533906 508521069 469456018 960160988 359310014 631914065 466547084 770203029 619373748 798908793 512701333 730248309 425830384 730566723 200009866 230590253 152028185 247579266 2645069 636436054 341487993 711144333 95435562 111390765 50945820 775642926 227920647 944665309 457131891 761699362 150379667 780854570 85942505 601616774 166251975 976014064 446747522 733983244 529454459 738958676 691169535 925552817 754191840 772446362 342484170 518302781 506662434 972123949 28349891 186098603 128406909 298122122 213663619 340033879 12968245 640896312 310822703 633653612 210243929 464202836 37965769 596897674 108145692 976457761 961076101 999586294 925178598 926551119 246275623 591729570 177384326 927890682 594289414 675227235 382245126 504058181 220613909 571504616 370992796 749514972 274515580 692154078 494222761 686856972 169913702 443362644 263766879 383913438 187055923 207803953 190956397 745032944 588646085 902273570 662008299 872222216 727701143 942081539 158977776 683070033 35100210 266527175 243659306 544836645 530308944 635508877 339042000 641105184 519102145 815356688 47162843 588519393 539744591 650769983 445414215 924195374 339789604 844289413 182401301 867051235 64551270 937955776 391450184 402970897 22773023 235460234 183032149 811334273 778164873 819925230 68794013 165097774 110145819 221112916 168618133 933831879 769501229 881732176 568023245 819423735 677760550 753996285 525265963 764748694 339307064 740739417 67280106 993159496 273050847 511596859 252603829 805680272 635705741 802555247 92440682 283344316 26775617 315486359 302403885 718684721 305547633 536223650 298857352 305823960 177775085 211055102 164595251 217822390 71770065 337416580 65267801 204839952 159426563 740551107 578050501 999741599 379679314 419643987 266216200 399076318 300484900 879709332 579016261 874935371 627036498 716204707 471946464 893142478 680204873 725166271 570293320 701979206 35744196 995536840 697466032 979742260 706074844 761663195 598991934 689053484 407484267 580408306 324364537 900634744 655411065 732127234 559711808 747371925 411745603 618912028 191673043 579104418 352422151 869637704 198720095 658769702 566751498 847366971 113283965 253473864 16857855 142849257 141017892 808572087 147009980 922193846 627632102 668151876 644582391 918802624 239419847 386104069 165018862 730627182 5658465 235515705 229181011 528652533 187301960 722209163 494488766 722218834 640487899 911213673 181705304 936630653 671863255 961536922 683716442 832452211 288225289 607526925 397374304 893988302 186283558 666985436 562764589 726718942 181261258 527644580 45327675 115893115 22900508 254889219 35387347 419283334 353091801 983201922 672101698 707661479 250675959 822120322 473432060 817879723 17831566 428921238 29836474 749227539 171449136 853342901 814762377 925055937 372542439 554222447 455934633 477070993 209984472 972432873 889905269 952091902 697607944 919542842 356216139 676044389 364247434 532395176 506888035 866026187 857643419 937183732 755627440 840541688 747336378 971474245 397034215 505102008 181505252 793940569 790802106 913382915 116437669 595574867 254205710 522694108 43795336 863952215 72667192 581532034 64548598 441668568 127975125 290965659 213194549 380230001 90865344 858518942 90191025 262178974 496145 353058422 161071106 955483820 923447483 997368168 977043820 977209109 46062944 294339137 17275787 734260531 73987283 195136784 14797373 327558725 53845876 908924713 878430116 926503301 566786290 784522471 609768466 830518726 29000952 979237932 861849062 899641045 679535556 847893238 15308136 946572319 628203254 940933025 880097997 963154005 431116200 863735353 249700504 327651324 191932696 426603715 231127952 507357023 147493914 313596915 175029958 449340073 6089877 739550604 588021841 940580874 665735185 702167172 555209963 615151526 53133296 67995703 25468431 805537607 422385825 503013943 502758330 558299695 246284734 681888901 67689808 717321527 74170118 77397550 58607437 634396273 450174033 703777607 139474276 824787381 30713619 785487611 271957797 852073176 532634659 640818980 469234576 949685595 508453862 649684544 391611867 715383090 205465595 273435231 214422904 377055714 261795244 309628560 282660305 705646010 126916358 137809230 31231846 397803127 47797374 488278784 353589713 949544622 511488282 937089757 625581597 907396211 670022600 831587642 432703212 504521723 232874038 361390289 214012673 340671675 332894711 584818736 111274976 255535697 79333673 698395689 355180868 762054779 668936042 978388803 466815339 630804806 65656808 227210585 12267595 184226996 78634093 950912026 248008022 721892331 245310979 904194975 20547764 443907639 210779473 347962603 280735728 984081745 53379839 854474149 831764722 945898515 109514686 401197864 1552129 981250973 490756313 817769559 481741820 578455518 476274795 697969381 452969520 558445159 552730596 978886007 280435038 386727491 322289112 467663917 38517445 696105199 468144159 716025054 254355040 311898150 246749224 812492309 125177477 707249911 553163925 837274926 178637170 922028505 392031806 559340884 507693150 868533828 471460705 999142921 439667058 969016804 504472723 946447237 410651151 519279350 354760261 589079428 519548277 792943440 372987378 992305501 754563030 993363163 169647446 644276238 241300514 695675900 32108211 848168108 202111212 580257051 85689363 318653840 13146686 496134981 335095299 565117074 24344541 410112274 275683832 319032040 312601211 459239444 122402199 946760856 199349809 824493838 609270187 820312696 707129232 961465838 619906199 773693364 629274436 747170226 704901235 996416014 905118345 976501649 33562544 482857829 342740083 926430512 685112016 841019562 119362964 960139345 801905068 835892643 590952139 700844138 433730049 716514274 409926277 920450840 302681221 708451556 363664137 976614850 649671688 760005960 718292770 886227246 28205611 653039679 76367170 272204896 5573434 991981853 2571196 937174727 875034650 980080283 486291252 498447912 76865972 365524599 95886665 437020397 76840150 84920891 27406924 777085527 562050775 773247769 129133956 346595546 206231596 727503279 587634969 975124512 147492224 205093708 101327818 501055907 390509528 522239766 461414256 960358036 254594603 283925149 40430740 259166436 14029537 472902441 245418938 455286073 382173651 450517443 71998986 672094435 605068423 825042989 543611981 614511484 8307253 323510442 180928308 298859833 96968257 353418677 181298051 886459371 245702705 573451247 244615745 399222359 129532866 357949424 81786408 612917995 136044822 395254005 231232149 429592059 352730234 745783975 329811929 685533904 646457265 708652777 644590069 751539345 215421308 529719167 474427501 729591218 662263640 924473866 878521727 921895145 868396564 927171133 822403848 966237370 759897731 804351250 367760922 959629798 592745432 697515564 80155830 169872486 154903376 746886346 607875855 634661567 499443541 758939322 329021355 525892262 470095069 903627870 334948511 421698591 139276927 498801462 385720040 486317175 28844933 463217148 181964417 196597541 146103031 255899111 156408352 360481134 251237609 475374216 77886882 424995149 377902191 824289905 814409105 883923303 255439022 751644418 412828820 488220037 295538127 982624981 434096403 950241548 552876613 921527833 484602733 499512187 428248222 768623783 671583954 735874147 224851145 518087617 454764928 884140889 480450999 634519510 237078922 457131795 133396606 135786707 120837317 955216424 844947652 875091992 380652111 550058636 412357918 491932689 470171175 489957212 362991435 446849340 125767362 778355257 572569810 931973350 500007441 603879009 112840381 451234946 337589542 890356494 331409680 535472965 368036717 865412372 419136424 615018474 451870955 774024782 186213761 517425981 473918 735647185 246405095 632215528 418793934 571408686 150553270 571637281 252669267 908916663 595497825 672431925 306259839 712050025 648956197 697831120 661086630 976264202 391878929 423384775 326794242 551959204 196592822 220602000 98021307 184964297 100662264 892878118 767948831 963056732 213402831 455081525 182767504 361048196 218262305 249274174 223164131 590869175 147651193 315388386 114021123 182476064 9409501 218507512 146376268 913553238 882565106 913631123 581850935 961161369 488886702 777892945 446829716 669831292 150796448 793836004 743708878 786173876 237437092 555627290 65725991 664273408 469825968 896605286 740172838 870552196 792465370 830170866 285805201 728019431 689708545 930116340 605681413 974351066 917453192 926254085 467543059 737406663 409432445 514480037 486691415 495453917 323095920 607451825 357640679 938332967 620439266 729362492 602593995 864118976 65508554 899213716 222942960 614796298 168381903 509581740 241940496 682064016 539835950 584601711 367482354 897743950 371635760 765518148 185969518 703266752 56896929 243329584 66005092 702992841 24131922 49743662 12530230 710104637 648872451 888699140 256608728 712960279 638402099 926349087 411645731 976366202 324028962 855533000 514811710 640981707 104885629 888060814 687442032 870311982 126465653 569159527 129482034 480784859 102978113 416542408 208099356 364188985 131187084 371103665 114025682 915564065 478390080 942084574 888814804 908266256 468309536 568345417 197109362 308786665 178260076 525453287 520807230 596145930 545746214 984285049 512712059 885757351 71440863 909477342 49795542 639814512 102489681 902283820 203980337 927620425 912595794 969634606 9600964 588283644 11507789 628775253 178028448 799861179 708430954 841703123 11394259 467731507 217198462 727889920 617709068 678905129 349009514 606776043 571894775 591099957 134659521 894775271 589310816 911854706 184104033 305326437 274297869 432734908 266528237 629065745 462687271 710282661 48752073 138069563 55783249 462126483 440105654 702967257 646889694 830915501 168999439 352394164 69262840 573016890 512330991 808301182 413003865 960155983 475664996 614318082 526345430 942563278 893993347 931506968 866464737 888933138 32855995 386480600 383353637 950082560 413779075 898013603 885528371 917850046 467487749 811056461 328970078 508693862 310969222 724912951 303620927 453637588 286072053 505691903 304848434 627328529 195733546 672249024 387427397 905263722 562611952 662982199 117003401 738276285 312858729 456643735 376943415 921242418 475366241 715267699 92017011 759692052 587399188 841255557 451192698 562326765 294809986 317165049 155260353 418594505 186274080 309240892 1392739 706774330 220933563 379765402 30999097 419267868 224365762 561203687 127196982 530213177 331465269 638606955 430982706 710664978 501887708 980322076 959169514 980715321 388821304 603538462 14388979 681861396 405300524 920292638 892789117 915801843 64482882 76800178 3777533 341749319 66085855 999322282 451905867 468509791 172708178 442469134 20493351 914692977 495665616 930439831 418053842 590666007 296404551 879696646 559186403 786329746 402640628 877406528 349497019 875103517 535641352 863851967 29348195 916646160 888909697 997460736 201099874 728370435 74246790 249308761 101964602 565649323 378835990 843578768 341764207 508380622 488301204 755829453 25234476 727766240 434069075 601097070 578923918 941118958 774248740 860083884 114024003 240148922 226123702 481172700 106119708 404138538 358766909 582931677 104657272 139463234 69377602 532040091 350497967 573635845 62563 457348524 454285645 519599378 318975567 895547132 30166003 514665226 236410334 956394333 467078678 936648166 48277721 819186494 349903351 808924082 257209934 685063638 314982639 507076216 298979135 403325765 354676672 533501377 190296101 875981278 268846674 618452239 376198236 781190709 38698460 850259094 229316632 512309817 414315015 631341560 182817487 792665539 520061763 524723882 14717696 521405315 20600112 225011130 96612504 565497452 51749105 653525956 448076285 608776036 104926628 800058307 274807355 825353176 522138441 933073296 680114606 751360298 387928752 634294711 125993584 614504611 177790994 986754484 479725819 989108488 662253811 886388405 779704802 825749031 77078257 335245729 260130107 629075868 199684038 905022524 490673115 594589744 558711431 779413796 287732563 544999861 87569579 838712035 21500569 527314250 412087784 427455514 43373979 479781629 341074024 617525503 113939381 933862094 200907492 432076294 352782869 937352936 800041460 886642377 447608555 616794901 457395206 620095817 124439986 765350159 290192823 604412377 285354215 801524339 146085126 273692067 691510 280097770 70580478 310373127 3155812 110466650 78133494 678290456 447823034 605243389 199794169 205047669 162993181 971779005 897374993 952056627 77580915 352527292 216150378 380614550 285553134 766539750 601211701 754300480 235531775 958396010 23935724 979396312 711778220 781619849 222903574 407842150 262065801 876351385 543890591 963873312 886382096 962379266 873868677 913834162 484555253 886367247 174368182 731182961 284920342 743722136 61315715 613628976 105150532 401303465 111993504 657176766 183623919 345387268 324738589 673623598 74784644 918864096 791909288 830205280 438525977 889729910 792977073 945023127 124094935 753424172 109616787 591768483 160250880 452409185 130676397 739072305 390524247 615947897 348178772 837501391 557359219 942262892 503587607 527375914 384670005 630237485 142410916 261613070 219141734 894626227 652720417 949178035 926021121 951694153 533085203 631032997 264222025 516488976 326743667 496494047 97988823 158858659 35857715 254938026 232619976 653616249 475123458 553805761 141064626 529599657 455431163 739170097 679195331 817771385 385522742 466343233 5293832 743048115 303808069 885584206 396075834 771482341 506116700 570005683 268173351 973147708 305752330 799359184 74855543 261608396 202020056 525371954 207680274 587701550 450023932 466924501 31316588 888332213 451349735 935215187 205183703 968471120 464368847 752927751 230398293 398199989 368271521 644298042 273844016 731004971 354360749 415640418 197725959 410523075 127006399 604776026 81003586 622484624 330439986 376941113 62192018 560604418 178297946 952949937 837170490 879440173 776001418 895604695 81552170 315566196 171405667 778714298 524707866 554733486 211898198 364881453 67239505 245919582 108477180 870462244 765123689 878342773 448964590 823966651 244024937 561917942 236275639 835798741 216820727 812527607 254884875 319823353 220641017 556448796 549600631 892244056 739461772 870137635 614558210 822602560 72182715 575787181 463256499 882773881 582486326 606916998 505053223 803952661 415782863 879455080 510190868 706223110 103705888 175244364 108038339 168332220 80121214 687257403 279350320 466204943 339190339 537547983 414323666 462792233 109779219 283903073 161853157 551800323 176639811 414482868 249825787 990158762 581884410 916053654 653962815 797090673 765197887 847151633 54774707 694872810 667375956 681005455 587340676 631149560 139123562 447676366 382221234 388498197 134245926 571582132 79820068 760388247 704429022 799009845 83699450 236385058 17385834 780534142 425217049 880704732 46733649 785933519 10482790 30103447 16427235 596561092 545890576 670057260 179958946 747034789 382087212 816396534 427922775 725072523 263818289 836698270 255177334 977435502 278862408 545735491 372580847 623086246 53197704 689983670 228655012 597796561 228275801 351397240 92604877 619988191 313182945 833765310 515668160 918395206 845081826 854402212 703803443 983064928 585381289 683439850 313893266 447462167 191396009 494059547 140525266 822904534 757501242 891626790 507111919 561763585 386213107 729976462 104370999 866129579 150323561 461257739 60976507 349077010 181462919 290751414 236100242 569182959 555774054 577291697 262099993 680390322 215444390 758346069 692051917 780641548 158026415 770793084 118416965 228624478 150957514 176399384 84777815 395199192 44626525 95842239 44257792 798382588 640437207 710076011 321009150 662909186 2729695 327727889 55654983 546438631 74520203 983542239 456353586 469320113 306969295 951963023 691538180 777424695 130180616 212442655 205600870 563920911 203806444 877730687 537755213 759321210 334140233 927867615 513895441 750422753 165879394 686927562 233346556 969604615 144861806 395250220 177044275 909953099 60003494 654680121 108599335 606983125 565253063 870041026 249825660 313752599 252572473 368788451 280023950 893603696 710970159 952034362 92600352 988256855 468112769 655131078 411867616 678319173 654193361 761233452 5215819 139917750 99606354 704266634 406043191 971489191 288179508 578441272 11428936 735235703 24049879 36088507 27596691 780720461 423292271 899011996 450309746 797427570 468358253 855709628 601057005 976795126 226504435 370572420 296409493 440154356 198399671 735546911 499335064 815493602 199202107 577734830 348431823 792892758 179784629 945688530 628340854 717134485 447694949 720322629 3836193 230525729 29384485 516104910 138456553 326875928 19653137 165598849 104324437 476861041 199374893 514612674 58619114 621928343 154353748 744483793 80063227 376229083 321123521 831511505 613312258 905029126 12528041 915509291 869108258 967769344 6666769 187603721 41108833 47777770 44074634 643694646 338176913 509398683 314727227 456269472 445988331 877620855 286223048 671994817 315752009 463048664 195510992 687802479 401415108 563912459 164647056 299376351 255536541 742930247 28460068 749572959 623906400 804294662 421164064 694945664 249692882 683428505 368340673 940184728 845734152 972360142 576431628 724561945 491761709 595754413 157496475 823033620 572662777 763188683 718733012 791155596 591707096 948173366 138970416 910361207 459501440 830282453 91187557 970011453 765971887 971242050 195878127 668160966 101275684 603755620 137895672 459669902 349617759 468912666 115941228 147004276 41941943 999806107 67398294 171408916 108506635 421145744 22926758 103019634 88115690 259330022 235851358 791913204 10537355 416499258 326109273 527208085 508979880 736592078 238310357 758634437 717662019 946571700 925685720 926065389 899455208 912407330 329567431 709055461 52687238 510361228 248310440 350009632 32052638 966553933 532315664 618903095 58854309 848232268 36047812 684129658 655947323 665424841 257610586 439604494 167217475 510389422 13589746 499236855 203023230 715253701 219893256 535546792 23847189 128626427 37976701 129498409 70555955 835543970 534502014 596418983 188941549 837259642 277610988 669238678 78740937 952565731 344705758 512647194 75521325 704969940 243637550 554885307 34683586 246962463 8889916 324214828 113621781 465142103 435713867 973779961 298572992 448251676 323148135 354461900 241814379 948154464 917209820 932408107 484593930 618509303 400840575 918548416 52875531 221426923 518425 193432654 20365471 113819460 17282355 847580186 56992069 312998179 18326742 418753060 382609791 940948534 522848978 769609640 338155772 836946577 657096995 909988021 271800286 432556354 70743896 164429770 84262178 493945781 112773647 415411766 373735602 521953765 18507634 407326206 167961773 337610086 83190086 527258855 25275938 456459650 157049351 168411641 16599854 724884791 120678404 676509390 340110113 623776182 399046670 719601049 75890532 352169087 106324970 910485290 55974872 410335184 277434541 536048611 423498731 907727126 349827387 636474460 372230398 778979642 97857922 733175961 539391725 614546827 549621778 553356425 425918410 754372887 310897743 672719654 47764254 989874352 726807193 844893514 608093809 731078822 256887039 746170827 525573372 620500957 292348047 744015809 97086563 447955129 33332481 142358777 22942190 108145099 26052729 219229122 156675667 799448160 733411238 872985886 383534755 439807909 412351249 787556614 161719659 854541541 224054108 743272355 321482689 769822165 673516367 783563683 750248203 797252977 234971481 620854220 51799741 147925290 37668844 307498752 180206749 460356474 148769426 328472919 105899649 668436608 94291044 822017308 152936259 950008528 757363264 827854993 270197590 963775972 111769696 359416201 192200623 805424548 179294061 266017418 6457335 381608881 303138109 528703608 519802154 840718580 614212860 961412296 34131929 843212414 190614383 251681792 169162338 743183531 326862635 804276910 405861788 523875373 395455461 774766164 455854192 987420311 396003334 529245255 117147861 192665186 8882196 144863924 99108797 319433504 91657678 647907498 327454745 835222651 59725377 674899973 579122195 738481098 539154109 852273883 708662258 862361024 464507373 854432723 337856829 651900019 370871786 770244105 714688270 913454072 739281658 796883539 350646211 755791582 235317228 729228652 286672799 322638681 83974766 534086681 399602173 486584510 135547706 167541173 14704728 900405808 565182588 702566553 571701495 777809461 490816054 707773739 95331791 474727535 373844794 966023499 65800554 432821627 72092302 598469308 563932414 963524549 233603836 475395972 379277444 479836290 134360341 200698357 52004605 266150487 37124142 863166637 522632917 673876424 619983769 767564662 114283140 792513393 162322288 797699659 508619320 727927233 568106395 643986573 236145272 432486790 157868811 519237807 513875369 638283044 122047252 323379705 312254489 505734365 87139928 222026657 192076116 525361136 514757873 539252761 260859795 868370221 342703068 796173698 284666958 666429668 231535654 247906062 120118226 493246888 17859034 459181632 110963726 542884100 257800216 496813998 332437910 371773098 39792146 494395639 373277412 941263770 365708410 983359041 319337886 539048131 134853205 925075870 769940717 901129153 126852637 883717387 47034863 845653455 335396151 758959649 23185221 576612143 90677143 117801401 42710849 617210706 272317157 347375238 265461076 559198409 427742509 667789545 610120161 969574333 443570637 672094289 168871208 806695071 409730466 563006913 512775875 977637096 201965015 962288332 621954856 844007861 307049170 616517554 269040604 945097798 388910727 396434411 340200118 868450382 274371381 953863964 84608847 383762840 174150679 845764400 722149400 759174375 378352250 803602346 345927704 765961450 310601011 637100209 507548370 849364724 781466311 986966300 70139460 909522157 874516526 915670889 421020991 483711991 410291496 710081293 654813899 690780961 169463114 945434082 909450116 982771119 255408258 783742608 306664601 464259334 141736443 562934949 297897955 604127813 28521349 755629395 503023578 817284659 310260024 787935615 245724543 504589114 487306189 988742303 749905731 907877526 903734797 970790289 94503183 452743839 142650469 599497922 176761438 793277157 181331626 650136925 46452731 789055122 406771737 708875956 516121305 576764482 230930758 624460012 69906742 152516264 41900065 652364329 9172571 663208551 611178642 818547599 279664085 893563731 340418417 720056713 642009698 980623118 318988539 487338593 46407515 659056023 313591556 335341640 119228304 814629941 386914342 765986498 150407895 671566236 312953426 758631304 295248368 628897471 213716721 653619052 188168671 570982679 28835951 238682421 18722403 764207201 236592366 237719474 174123983 393517425 108793762 340059575 183903698 996369428 101861277 942298234 304930738 864757580 171815650 737696751 451433295 976132855 367033205 830399557 746064691 962277099 543953965 575549978 489915981 578938648 360082931 729482994 312571235 701027298 34932990 125762544 34653103 428969209 122396278 214663133 129937194 622308066 226153293 468839140 438111348 646120048 40584440 783233944 380588875 785088909 508970839 576228974 14903523 999044887 594304878 926355640 609539625 839934157 451919467 983163290 252907077 726488942 260248183 617533963 174820547 812089757 55802978 633354906 550142022 980505990 948442591 980977458 806358786 945568155 747756369 857404643 598010284 754940800 230912315 645566979 26492266 853160074 329718001 459024726 343458002 773300731 694142557 835512746 480095439 800703019 152359675 600868931 281513545 787444525 115804818 999294066 941001314 958878791 123495223 162712727 30681815 211249364 198964928 329267075 51730019 775316481 11338493 544255072 11409260 59678035 49565842 962848777 519370238 817500664 150971161 510594948 167590049 368569128 256024690 861210751 548051167 744390123 285645373 656810365 16836077 93961620 43791282 727441905 321701599 717932752 685989212 966450534 52159461 309447527 303714528 603188227 358118632 876479193 684610744 958659101 161146130 639449788 426998299 547094815 112422805 407478818 333083934 506982557 85503914 502551340 75050353 972661808 384752835 391882460 273444319 637921877 187275459 830863549 775594981 907994319 538847648 723071198 321405100 974086153 536708413 937041873 165138471 738889335 628553859 687414309 153291153 177565679 165745386 932564682 241949642 440820973 329038656 902599078 592925767 984409467 944297863 962463288 157272674 404521735 23516278 268240938 147093099 409503104 94512063 427819020 100606608 818776056 200040413 252527978 100721180 686428216 446114945 755304834 572455526 635640468 81416426 277041392 103371258 292481265 47564229 598254953 186974263 334419409 37559097 326895013 41120886 241050667 49750861 644964136 306743596 806831560 704807836 784080106 215431607 400412570 217531302 967461847 389680723 911534611 414809521 804858154 760653953 901553938 588363775 841011569 118332190 308954313 2446280 705641051 34076694 573637296 249340149 646253210 415456094 456091013 420283986 709743800 89714710 719010372 94595141 413786095 91895051 670819535 532482775 879507933 412343461 711061928 417156963 707971985 420074927 849646193 70224127 285570940 159002285 568067707 260069671 565588527 279139862 800626291 477241043 518140541 298774574 491599977 420287036 626845039 27963918 66619635 15527000 540490326 319331861 781523373 692155084 807948867 588560746 658031600 617627063 818069520 161809996 656127531 509427933 745136845 352817084 612343867 537371087 686231044 373662640 802129419 43103762 453637713 274305488 827709705 100472647 980958807 113277986 354280108 4397772 210717532 207234132 665393997 392920683 479657578 399446691 916783803 557535167 651979035 377982811 809202116 655159810 869631533 26486834 520297973 347314191 885422341 306652996 818785319 634855826 841403401 699959830 791870745 638472615 871617248 741656380 794809041 623525981 914768515 79409176 427960893 18923534 846024130 403950415 665995132 372031346 584954739 361010297 427702346 46863041 999845149 865130029 934991019 106323215 648510879 563811571 589134439 41571298 542165519 382786356 943507995 882992112 943655167 113366878 125490733 86710104 173890785 95797495 674110575 493384762 982833897 579272229 842959030 380073775 739598655 585854829 727319425 96696693 405438838 31036449 204339608 193924502 228487683 135828778 830698044 220682126 406162919 60106993 666689119 98658081 694895621 292285376 598416007 109538007 665512690 225056597 724069629 639356685 882638443 670204168 959332971 180745405 741904719 20228973 121845798 73183150 190313449 157307320 697616261 638967771 935571959 1753274 470826568 308878835 320232275 129786760 962527948 953371289 979379605 708056665 945844045 208018600 665604598 171579824 616061823 577273540 799665427 394807333 655469695 154607379 342755186 10302487 318473098 239782433 508957915 450809049 608324317 287715453 811450116 54651499 760306187 557339775 614637831 285255091 820628897 395001875 445790965 243826686 787550653 416406706 689480812 579107501 742162575 407827438 592910050 474265769 818857775 302180023 728685592 11687418 828799949 220128718 690720062 18584489 845176222 673751994 829542847 1137312 878362055 706651611 728304699 468813955 470912743 321356505 674619447 73047147 91768495 1535500 999615666 738352313 937061689 109261217 195826314 184670600 298954092 230749425 753989550 448944320 577287282 575844235 927270739 291904087 888035838 321359924 553745541 454602773 478914314 469510230 774867998 219320252 310293106 267950715 566277764 521627728 540776050 266259622 800616300 374255055 740089305 415883823 571626027 47969221 431245638 142826767 393806119 8142866 637240938 294135817 868918162 858251023 955977221 193018139 491180373 340530019 990176935 255975312 307378099 218454755 496022222 84682416 412309907 202235153 812695731 489632996 817194716 340506516 707888324 516207490 682718962 25650527 382645907 225385733 714098829 112203344 248990882 221735604 622221791 9124279 454122592 381818815 589070926 582838186 769231616 718863459 920905623 327156457 685517770 557691787 898946567 302874892 596948304 171998638 705715777 175066797 534913347 351676066 814172954 249047580 762661476 155798031 292035349 84601480 234668087 201721384 753875647 131219104 791593526 734611072 755994715 738238069 942533127 503156528 850448354 550454081 830202305 92756542 906872080 660968189 731034861 317290019 569154994 339491430 595908522 307431981 818156461 69483049 301864481 67879167 579564894 177483228 609800532 248052098 570521759 520533362 695852104 632226780 963594062 617274413 984800333 646754833 754165465 495259002 711984261 273042281 523858359 398585804 538048942 424574789 990435931 240598267 814398903 675690904 844029285 778549817 923330697 813508422 870099716 113362710 843817254 574951191 857430315 347863631 995865204 935239577 994945937 239576965 654539942 454111238 652168841 313175812 567642602 6556119 810282601 197464413 401413996 204309151 685277960 642132216 643971999 412265860 703836461 367228140 703062815 245240609 687940343 411135767 625229708 85234001 182758292 137797655 259026629 127223610 781339178 81397530 668785012 58205117 446458684 411501530 692650186 499212593 752154891 351359133 978792523 678527724 968094854 639330595 767288703 737078971 975704863 826447300 894529087 636219966 904238290 450481928 496744583 148493207 585767690 353453412 354093614 42119144 770979579 464027295 789530155 230270462 558787482 313993766 751174260 242236988 706873955 488543603 524049700 393685337 859311738 458676839 867385907 646245735 966934816 537791639 615485991 467967716 662776423 631765624 915101239 859039478 993740969 416454899 964276012 305735225 963189818 409381924 439802344 310096329 572784520 300366224 573204219 72896382 132953199 129538859 283140619 56981374 210889031 63285293 806956250 532540136 578302310 168107520 617811874 576722556 652622575 403778928 712088428 546698886 778517311 282027238 590167059 37660935 109321708 74031180 855878547 836266937 948075732 205943161 652260245 96370419 326356588 307070994 434838016 365595228 682288387 665085934 975518552 610340000 723296005 627395497 968368495 605177893 910503093 241052008 307853242 155001561 947163907 155478297 813358965 161997255 874002771 861019033 993292380 439346124 797680375 596657266 972909090 132221989 870465921 27303991 727899992 116060235 699611650 647921928 992093593 653451307 773004396 610022934 871874303 465171074 565183226 457860008 891928829 305510964 772010401 544893967 868647697 772924887 922359706 740541218 766674052 39388403 804310579 316257276 683089036 271158272 841197158 633518463 819041760 198841916 687079611 491931960 718032257 683391749 858851664 178324579 434933018 92937153 729518356 377918070 549114154 330162087 760025726 734981013 930496482 83583489 910634953 206093395 371478462 113087643 248111285 212346406 498653339 194862094 255059622 62269693 824072413 766071548 890729389 879054242 928421370 926320335 972120581 201130069 975243982 754428195 894924783 120669467 201430110 10288666 195975357 60933420 522644441 504360809 847811509 356863050 872634078 786004819 956294265 285780446 460540904 390791814 486035468 261231210 901716769 138871857 257650245 202375587 605845921 500827897 951824867 67436164 303633445 80834036 352592179 126119877 912826665 818117705 969245024 449778374 484759991 176811906 603683708 554133114 770483032 123097220 868620955 534632220 603420276 464058868 692097821 182302738 475507715 276806417 545602909 51622177 241299520 56561663 921628516 683057501 713559700 339274192 746648684 710164218 893604807 22626067 690600891 624390016 948636074 798015959 798305895 361801065 829853865 554865576 681434331 158095362 645782154 528679873 833900184 732334985 878577212 558335550 638705841 81814186 364270298 200195744 454031852 64806440 620801091 375619109 431822413 21522175 264069555 10975224 563311904 298057236 496294983 275376939 369138769 343357717 651475829 158358810 267517459 204907040 328340147 279030885 386349202 242647448 411620285 290191404 315653153 10201872 909482510 881353642 972388050 209842426 265454942 56211055 218483843 100642752 960062131 587894165 629303414 323432861 736637867 550614432 850997413 599794962 832061294 258247018 272158297 247585244 961278112 925824949 942422856 54046371 315351073 238231382 779438425 422939315 594810667 397389913 544562100 500195511 777927062 268171093 892921319 36449832 539671241 434952570 948633617 238415687 408485349 18732141 774260751 303972522 530391710 370054833 743864792 289305335 425410831 57676848 647272641 141235246 843324638 112984474 631003370 624204168 872853502 266357538 587636080 183299961 893957327 231397199 715471333 123316079 820219621 687217228 921945011 275551077 581571867 25967974 606747411 313935930 875543495 294925567 966116338 717817565 909847505 384536010 591329331 517886215 609937346 373388327 648087921 576057338 608450575 99010442 360949372 184605889 880249684 477002676 758578414 487828022 884271929 650247889 893132379 573174042 639108655 36968849 787336251 548666360 572032062 25384333 531732882 505155723 665182189 350205998 381557596 65924899 933006963 112281287 337601037 165855118 649531389 113892321 157191105 148969059 674373664 461254565 964279664 751849526 885076357 478022237 665566519 128660456 204551788 186631535 299095922 23818379 861087191 16874203 751442456 505988214 646252363 329110981 875095277 664146197 929114150 489434744 589396694 88673648 747021063 676386014 922759540 488210588 987296583 817411102 864893607 600759270 920214575 292621381 652172217 534817214 841791391 363751555 960216848 838048300 883631622 172298249 253902813 123680604 479766644 273975967 549901321 99158576 505997049 352775438 431636875 121117909 504254090 419078306 517900598 384224881 857913097 353645377 382163482 84229189 415370878 129371054 475262330 69817710 402888661 396728636 623762117 38741669 217345824 112379939 837695495 57518014 338603809 14075165 388154036 334409209 563647316 117837661 610594452 480252136 657441341 587797591 816261640 223114765 488793249 365315472 434226098 136975485 452060082 406677943 724014571 591205588 848027751 478552008 808027449 619182685 760679258 584200624 987208837 108041058 654508663 137020718 553697255 188559398 782282864 295361005 924344448 373827110 704339004 467831695 829069405 136091330 707538775 689663056 905338812 706239622 753359470 46178464 336653294 108461587 570491250 28782071 735003441 60235506 882021055 652967492 812721393 16665466 267633591 175981851 196550419 143982909 271518798 21657056 859065418 22934335 562877964 220115227 746313733 158477861 670353292 427459221 613806902 370329638 626995194 358229842 988321164 376456375 935019423 184534102 790278714 347257286 669635677 404022465 584577966 120206685 673532712 58175259 780327301 556980903 794496430 618064172 880027436 787054420 868425671 208583184 262060820 1332100 468649848 166959030 974940008 152293675 421093330 240915901 677853258 618189382 772220185 550078195 735446549 603511673 828691579 801639254 948173295 801049401 999676773 433326594 861528754 680557020 881380152 875711931 900298820 617442786 950798894 824667417 881741583 131333022 323947325 69590759 771828954 445342002 692524395 365862961 925722237 541730739 833173826 143042933 268711378 133027899 396647174 193373391 485040505 86602098 929114038 91740854 227688787 176753182 184952206 58594863 61583565 11620993 545629720 212055643 431484401 86657255 862043450 374545974 534718609 96880853 973689786 479518669 786952290 379440950 558464426 442407746 540595555 198659702 792504567 624905942 998849069 457138400 828696868 535323198 892661755 51462339 304161673 136533388 505418944 31146518 240626819 112811072 412070250 170887372 957124029 900192155 978812781 969457937 984385127 760483261 986512923 170139861 821226719 125817619 686978607 259876916 755843551 713599097 972354279 603346998 756617244 449613234 736335935 727878600 959857608 575228244 990513573 753208798 903316210 133818795 908311102 588928034 995423865 709189019 775706580 504282406 798181587 606282003 670737165 579230419 776235748 21714079 98037592 90821463 710846814 632635125 760227864 704337496 755226244 405807037 504650016 150219159 644475252 249824901 615977655 315401808 463727489 309736814 495326452 443758382 633668075 561065436 887829581 847469576 969261501 69925791 436639085 394756410 770914666 45225663 601560211 557235331 818971805 406878515 893368182 602830966 951379536 791203671 987291122 208511122 397001507 31537323 161465540 82532738 837342755 594928066 945932746 600020478 907432641 377939591 474370106 18134155 270335758 180510990 836046471 702894854 842978426 816111269 931561257 556211594 851574417 840646013 890184571 2889076 850334732 426853908 745894639 580410094 591135949 409352650 801502133 501344884 625103241 618365652 834845616 1011229 847188072 362242777 461308133 208740632 291698133 127540178 381930422 109981219 947726659 220292256 594470353 559274674 876402345 531037674 531329090 508269623 623655824 93834823 936491119 586098426 990183098 4323793 29548392 25663544 320268275 67403100 537926931 192914381 529657242 182525621 340829477 143806927 176502487 133137215 947553781 740460072 828237421 691414629 735046613 379075888 836065795 106473412 959841472 446089375 839290322 793346417 969392401 179692472 337348513 142215054 658637899 119263709 430578589 58789946 224993343 55125470 148637972 50186533 724159781 410700839 652254002 111715720 486655429 435987811 596619909 465905678 530286077 494846013 889000175 709679413 891040941 59699157 965806909 578983821 961844445 420304917 592873355 331515015 679358759 327202721 519828579 363065258 474690311 93229059 345891088 46124284 826907618 337262186 703344997 677085322 837555377 188598573 304966693 128872431 767565749 195459538 842911801 621520135 998760490 965178147 992836481 612075890 974999036 279625786 354802899 48825545 957274607 30120102 788674195 630201676 973781406 344808114 376379634 356418533 841121224 650193857 981801727 589743132 940690449 713053122 732263785 692128506 772990603 634390103 965805204 802621322 812012297 375708513 470159574 247449687 422369847 194027425 327425629 23383583 174852410 151720736 603308960 161258359 264231447 243211545 870863086 805197028 981968457 343290148 757802933 431026458 984535158 640453761 688935289 468472641 479813388 181430582 702636477 415788680 992636220 882765674 990831323 72244175 686396304 523045741 859240077 537603937 925646351 899436986 928881286 390515081 528315729 180762558 608179729 157779490 864985226 493426125 517237810 89473946 928367719 241066225 757360550 402041728 441967481 334557406 527889123 367260586 512298151 17494612 163657654 99188294 265665351 151037409 261562023 131165881 766992531 607980690 889603378 488166347 752630588 749098701 958692135 58359524 199317285 194694054 658461604 461346637 521686208 463120638 973617034 191183939 940602916 382414538 524531081 126882929 567491064 24611040 160924105 11792541 728051988 325429687 874586697 659024014 794946472 69441008 981559334 183513709 442852387 49497068 751694540 13650050 895407019 163945560 451843698 147877180 249559622 195087494 365975859 138981303 617891038 192491270 832407853 50481224 87999255 12802148 199449087 158540088 241228809 47739978 849116313 106447343 821533221 474499774 961038984 263676693 979227479 906834339 920682446 148243639 903954873 572817274 653891162 618986335 924420934 896464587 960564237 156733449 987002805 380565151 945326324 227185368 461568383 35070847 569750044 29476111 234916097 69548940 969079848 590174510 978494742 266017193 272310630 65548172 559881409 59572400 60389577 13089883 509899145 186808726 421605844 57054767 245683053 49205865 667788272 10084474 343310871 252833412 474958719 375162589 509599599 241834052 429331818 198316387 976789287 450214465 681453943 350567587 423821035 195478496 590792810 256928062 717335341 282453087 522350897 120592382 356840084 4745052 379142156 37806365 933124434 744099743 954066899 824908423 864648237 736779845 845907978 81448905 256917267 75529411 638389059 207365463 268930511 127401786 859969953 703986710 807368788 175052776 444366596 19812563 769167292 123129685 399335480 679620 796052273 745391111 988024070 490091845 901088611 481177882 681075390 670390065 749855541 44880282 442482354 442068389 661840155 33160149 120905993 30348578 942496087 137026104 286255388 44324999 513946461 8118829 610666679 524052742 903645418 738736228 822384014 392311084 820253988 675098098 779608300 380920398 632533346 29908560 582280414 505784434 866740122 52067870 415143924 190887396 717522039 644307365 645471517 223700387 241203019 74736712 598338393 388134520 949568882 869429022 970579356 372291949 546171417 342831253 441639197 189209759 521524185 10267138 796548110 784017625 934372095 329505216 524507423 131022937 338241443 244099685 819244634 201127148 782135004 686326664 983479902 197462485 276360041 82662571 611072637 440143965 757410691 398763601 905183879 105519150 466480341 150841239 763052852 112809372 770789034 492369169 624672447 106877569 826989683 659591025 728891338 570074948 642968844 216048583 281636515 58479885 339543845 301121060 431335328 159293812 734621661 195935488 671213424 478979892 989482147 839297780 994958333 523442113 611939580 443084335 971614245 159722053 182086321 123672568 340041187 182037892 651556180 565909771 602697652 139225344 551480750 271042284 440915799 59504103 574974340 216146548 312158651 171549112 655443640 374825590 731234346 443589460 630647592 73988214 662131000 556575733 893876434 251416623 917632775 30612453 363859373 171026264 960650383 418223204 931853903 465051721 808542387 131848347 137913773 65063704 918080152 784246166 952524199 448850011 590029009 201961514 207277409 100831626 960244798 323590893 844541971 673749467 684554199 86811314 674390047 316469772 448815570 317279647 633713513 444704171 539555231 382465328 652487135 380166544 408017450 344871753 773803836 120895350 985001525 593063156 777282451 23315463 210726617 183729107 463343005 76375439 227651973 222584601 244907653 185990154 850819232 704804804 821007716 391316702 478440937 415940441 896905136 203665877 796799890 687577904 948559922 107141280 306376611 191387364 296928051 167362605 293446739 57251581 928712770 357895301 762914931 345119851 705978621 73477273 959986931 470464337 541432194 9154488 257692726 87241759 940707185 421653598 680667368 510506403 865598128 88775836 841453242 58207172 226679460 192960518 850870389 164913890 920417645 521059591 818456323 709024862 972887251 233073019 370952049 74537991 840419611 485018086 796094993 41597637 203769730 153048011 388392285 36260161 192219035 62547375 640990516 509388743 804482193 373387069 892200467 19686995 823032218 591435947 789137517 119923341 143296542 99160292 127864336 92246725 566498083 286555427 759888740 473834950 492469439 442083018 647037701 286066698 566435847 46098661 640895401 367334334 638902628 554696057 557977670 473582467 903934444 506665180 996522999 910472059 950096748 213033472 419662553 1883641 422724314 253018206 590361679 531182180 597202705 487806530 866493666 675325671 969171439 750485514 797647505 376023735 961782632 870811995 972291969 327279273 560538464 91465901 757225833 422226974 526504923 13409668 623537175 36829803 670174436 260810019 798678080 619075257 988401720 150880603 569984402 9837218 437647313 393886305 462195806 265250740 317367169 281986308 957622186 884344968 898753422 374230724 494795702 230751389 641867642 246457815 646912959 343562636 667741158 400144305 526535473 452455429 747913775 18684625 596004944 586363029 597692154 136818109 688951156 500024428 662544507 559704998 622515233 517556027 873703938 33673706 243436557 205934963 482688248 234475452 798629558 186224716 977290652 811539259 857491846 65673427 550670464 318566956 377167008 245911114 608612379 220328264 570489000 450704823 616073381 556655018 658474686 258813666 941311997 2705776 310240441 16226923 874369835 192274297 250182179 53888492 164276293 1476313 400987033 9375443 709340227 317720397 787132720 729339775 804907013 151610442 862326367 605359627 935846196 495559821 693667733 449193039 609105022 3894421 458488746 204779033 939827482 102377414 747782829 60762571 412313958 34865846 438498697 431319997 804894838 178329044 474862876 385881232 587359673 214224017 251546839 47893663 756984864 624686360 759629978 507326443 963661366 186194888 689871907 2753313 328765445 125675648 431349277 9590864 508966069 268588184 681094827 671532542 752709757 38936216 516938980 63425246 284623995 138225903 702149176 387241368 588225181 66016296 241893220 64527991 871500873 70380245 815466034 201597313 233640225 89399167 310404741 32784836 55766232 22325782 41998644 19093736 621395357 519971086 719956698 123912803 975108918 142699289 660772897 364482617 930697067 862008379 904553558 485860334 683748276 631760539 909276612 707466779 753041109 468595452 576282584 269640671 992151686 584073613 611289763 120884755 439258666 209636635 282522668 112995592 306577323 155144066 480143670 265081480 712442257 296522121 570330237 86132703 296121751 48427684 338233960 308864588 373376093 302347219 649212887 345369998 789826990 451913601 644594008 475482713 889352474 789779306 992300450 515799133 879744293 772657775 960262334 716829193 817059563 603506377 978551282 921297705 976118946 882572065 972208651 36577040 359016127 31019413 912085410 732671050 974654777 384244119 589295574 368457799 450963817 447549847 542381888 506634453 546519692 423439568 951397593 615489600 630772375 58268216 908475370 504177679 816809462 608966703 944717992 869576274 992600572 932466592 966912561 847972075 887748225 42759876 326110404 126004619 526880888 403955318 701018356 247832728 925923796 539780320 583761394 164150742 838482270 216495903 928481091 493283540 595312532 32010708 667914331 165348044 466219640 66830133 169364448 142721764 186580969 90460596 850674335 652785930 748367007 365379777 934785135 470998776 510960625 469452108 499718424 427153294 528288948 249833390 931123820 582129679 821963884 20258291 243228085 122558491 433815294 49494775 301059070 116514595 929178935 131110394 936017767 265643203 531820532 138834931 928971647 126307086 879777537 229730706 587462312 104364674 225817369 134382069 294237675 175375342 996873694 950329967 982305624 947548168 995276139 344771203 817320767 532543129 737251090 650848401 788053259 298397855 418182378 4929551 698442717 356119663 384514745 29988865 984067951 695689668 832398501 154359973 691028325 74097421 941734791 789994857 877691247 427178283 672181223 614201257 671401535 656769525 964983906 718636072 722706759 60338391 936431596 333273386 993262365 410146959 628257410 254474641 409393177 364073019 393696886 6535641 759587825 164688519 378627466 277493667 865445878 166702391 935537857 788012708 983333211 120986836 642399761 166423884 267458445 84420700 290989633 9765197 692229497 294057501 888973131 557248879 908446551 219816403 498838894 372355799 936174143 306676545 742802328 25870436 281771622 164089248 428747508 314962731 855549438 387240190 926757458 178593661 917004654 622663291 893491975 771273324 808781489 677565376 705234762 115801752 128307890 72071898 348453822 204862562 546399103 522496074 523366785 249133219 782386231 508127631 765391747 692125998 771481194 434011643 466806637 159702807 599571421 65624216 787918958 150526064 936526255 363994152 940284482 577359727 707345289 639707827 675725492 159818735 415930800 320156615 748817032 493569806 648729297 323359853 682662302 12070373 899097970 32230803 864399293 557902299 687859553 110891281 658765565 199967700 286728077 156228002 309971953 72198800 376869295 20096181 804098987 784854427 824180958 697058138 725417142 383200734 519733772 414423191 918656780 865768625 975051500 831707109 931199670 494245799 968565894 60429678 94022627 75468847 643955883 425542856 926503549 664895713 689503400 270674294 346698122 275205728 552686623 172130712 225659167 214251533 369404648 129223224 276691414 19674013 150567948 64897719 576267946 575668563 971149420 628615625 871918757 164266316 408496728 403229411 409091003 10620282 144713416 85906823 514819739 425853016 613902481 449694759 787018793 259485611 404480513 270261870 991416511 725958585 826972012 367377702 641499374 246758867 695706777 671712222 934147860 705679176 800609014 683799369 986259779 165254110 312871471 264053996 702992034 593388924 806316512 200286765 689817223 504481213 986800811 345509974 653338927 192403407 956466648 175526442 692158558 678996234 940164531 521374134 879888838 190722291 597722589 226704959 772668358 293816157 902976492 334608430 477467687 5808766 235014712 193098974 998375303 87279786 341389279 2345199 476190113 323790002 591972633 228063214 763036301 705686535 843385832 287599035 362651795 277285911 399628138 216829761 833438003 239036009 420112798 30169102 565144795 239659678 464321957 393905856 975406963 637363733 842045641 800809634 959038424 487923107 969630437 877161778 995617720 185720202 190524814 72528166 937249646 653012026 676040915 406059005 597575020 170081213 504853743 238270813 597002116 481011289 939520218 323084127 379954709 137184762 918502451 134637912 522981064 246327720 797426151 89807573 673880429 407324429 755293287 724520358 873732828 464359766 864320798 172505287 995304893 39712154 141877536 19716509 692964055 339333665 429386432 406076433 604618841 107172742 413554179 324651326 448758625 192267034 511332130 65867915 997831283 859502721 893455063 363745759 406586222 276212982 719956633 275575901 575879900 572596323 709932801 168042191 331549510 249625492 990682468 219975782 544283675 221152679 643897340 53101150 536967526 367544647 699673424 440220214 455773920 148282522 483910109 268403258 346867406 315586420 622241691 36297889 613422436 381534727 467617366 164209943 172251014 168775324 564927668 297565137 747615510 357934458 822537195 676691272 915179406 27821491 51665613 28643436 993803685 158101301 590071601 76599914 501760881 40371403 377513335 362333700 828417123 100340629 202682847 546014 714930906 485094623 683390655 445158035 796593421 754467897 797158216 434609853 873958770 9455555 465241329 94675363 957745561 194425855 856858494 347078052 642194480 63370374 280068714 75766829 513911046 85559919 588990148 393023193 423514083 399308316 506849363 335137014 765542347 581746595 719142124 393747280 462381718 435338204 780665066 155286187 207661507 146149265 232662155 128130643 344076481 217582552 545488632 35174580 457353183 369555663 809568671 488413848 760710409 174422681 835174362 141788280 744274332 282616582 740994632 548824245 717760362 190882119 491968743 430857933 619884924 154605899 572453060 57957475 656956540 191748945 469721580 370374114 801989766 656364936 854874399 657941188 717760009 471177065 727470840 162341422 467523549 384386057 806273300 490336650 526246940 431558815 890528440 664453902 734314727 604698736 845006240 579106373 844486217 253703773 474638420 431151811 825227219 74303713 520814316 170520683 198383611 72830077 726297746 467677155 474044673 7876597 898542402 143816043 224026484 44244563 134813495 3924979 679081993 319004665 710811842 310708873 581217784 391941751 557128318 427544246 782911080 420052430 570931948 131149251 155406812 140649494 389851363 93585850 404858222 120273949 823243714 664399682 978040539 598047916 748791989 235639589 836185837 564222236 609507633 422113440 544671942 509995614 574123828 182042897 947073183 806790529 962265015 378282654 514709664 84559634 646211969 345145235 544847126 347953083 747611308 225719010 693685411 11746973 267896350 205718519 951722519 790479181 966786160 935761195 953456923 108293186 366603687 356652107 768439088 53807544 669873561 488802486 813257215 301132713 306686301 184010065 583886563 578646220 604992128 159974818 798756904 214304170 729004333 238927676 522886453 289461331 885396059 227093704 778339684 40086258 273564096 218633027 492435577 409096888 609319350 10066885 381097969 375207647 738589564 92664543 953334571 189498656 889926143 742881867 787992554 22436049 921865014 83061225 328304019 273623076 284227926 209113843 833974607 444468409 623393115 255862822 509108743 470980416 641628808 279494716 712681448 543676341 814282182 604543390 921263029 330212229 917194360 53263712 414627958 176925133 253345146 101606259 275144791 222064048 889307667 875376037 988752319 81159045 757339544 615418037 777784862 563339998 779057045 287593926 585066127 203772072 576124485 371135143 613785903 424042829 883857477 582812200 902309874 813527400 935338114 362874515 638817015 156419824 470645647 65120427 382936557 367655295 696989573 519921436 643488446 613374700 791363246 784408363 852365662 128150838 555890885 336464408 417340452 82421724 481843470 218015393 884435930 111347936 628802324 230854804 254463436 212713926 381998167 137233002 341615438 215524304 442448893 192862102 537982064 423366414 657787724 299428711 950660024 187771288 862887133 712979978 855264648 341915595 530538137 516152358 519317962 337743777 863183068 161127529 235254158 84492892 762736381 448091516 744552807 584364061 888125124 72995277 206235086 200594037 383516634 12296628 821222818 218769949 582303093 499641766 541345907 523571915 713515416 67409982 404877666 231129454 740562295 550875079 570035727 556490101 642977803 37491455 744672074 661580009 966325725 8840967 125063912 86449634 862257917 801414414 888936181 712351858 964621273 49049757 840363626 780604966 996319943 608593956 856589597 183839147 604174907 83599428 111570352 1004531 427646381 370393582 444028136 435665134 759136885 637466278 947995677 883429560 913116709 323822327 696259181 327686060 900819014 824289708 845093194 680289547 927033740 177823343 283564832 176809979 638555990 68952025 916348548 163541082 929368497 924703951 962893059 206166878 331372132 290537046 905639272 575166738 703021946 404298935 782021095 36465196 810638419 102597270 576304932 270920400 507285462 471155106 529547328 371131843 889306876 556633383 986221028 879693368 951808894 882979973 990385426 383229773 785072817 674117459 709311113 641773426 652945377 247260392 376157635 95362758 645224728 523984859 783285979 588285658 593717919 105552544 254438040 232786747 308647338 143348923 782823397 313810468 895041261 241833196 554422658 484748929 807627423 543029068 628625062 252635190 940219200 634405282 942931524 825411426 931895359 266778366 759917500 542903823 640167244 535862324 545785470 56253213 951617076 807870111 935863500 725818364 890749099 210109795 371919991 370649830 836789904 707475678 765543583 71588720 155218092 80537926 140016979 47327252 609596163 195532890 774678886 134861637 334592927 13449752 994849053 94250577 475765032 417692046 958718223 30019887 115900888 45985193 299956555 174670242 959481506 159517290 175830860 23773310 299911653 276395009 403349424 166307254 866923149 291109275 441357063 162595060 172842716 103489847 244469120 11219606 401922700 389659378 540423581 500614840 820113155 215945893 686814536 486686118 729929153 188470115 985511539 3858247 111315361 83403805 980205152 861176478 962159333 937118889 954030906 638787348 662001235 522328770 998816956 320297947 879719367 473016692 536813289 536523649 972285616 829842853 847418011 491058994 630957579 577275495 650554425 630647761 789522665 69857453 247110683 18827239 139550323 29813351 343672482 140680101 171333951 85438504 253062438 185894330 442440726 432568093 611520992 478048136 582060741 292093732 728438727 588875905 898226220 395338167 497133413 248222300 434624387 412231113 443674438 295516531 320873306 253807045 258852071 105273358 475066343 282656739 489490292 69799819 818222056 198763115 525468332 187083558 749676239 420532207 527647472 51778031 100650933 70983920 220660299 133298885 251759129 34588143 50329634 19337529 626123623 461136790 757067751 150362062 258452657 93570656 746610952 276436546 590119292 526634412 637258451 420469295 970795667 330827670 773334602 338394963 867986928 784968059 812194656 6648311 855602236 656767179 677772936 506857417 840558852 522294197 880074811 188802801 375469639 367436876 861256214 777450075 965074489 630509896 630536931 567483525 831782035 155687907 394639354 135609300 223627072 160018625 976519752 242923671 482449974 78173530 369591139 303099820 330063266 74661857 557593504 385250502 945352146 106365846 184813036 121791911 690488098 27445389 618221990 119043171 467940526 133469148 373546984 260066025 316020405 267894382 566099010 140403826 467266809 238534595 427616009 263368504 291565429 239925129 378205442 23015290 966471807 496524587 516065384 497403656 595011833 527006450 649020114 641819028 980172907 613754220 702269626 458949150 769422350 681162835 836555492 510758552 817020559 197553946 486115072 71769641 211919672 116612945 179211601 108805217 879624547 452581315 619194602 451006975 820102398 607691570 998865818 149843645 203263192 26143926 972249322 425152484 938755393 354346865 958724847 522406424 704844283 198707987 342498283 7476371 419291051 381607776 488253847 40711466 382377631 66677442 637406915 63523942 584591904 449068940 881673260 8615803 439215195 33172297 899313599 452030955 699074169 598354481 650756243 478897833 479434681 71020971 711330145 331211065 948145957 907589290 942177365 647869585 806766612 510397465 967759454 174180231 238535976 83999616 993889431 492443544 603471314 365331666 848911014 80549389 89269878 76926395 166722872 83156511 691847864 508947794 999348739 368987826 571010007 427639610 541663859 77427686 819758910 726130707 919708934 266030387 642503912 232684249 652400142 316221038 425974143 230566981 510009002 52176253 296426512 180737023 758189248 84739328 625660534 173360328 242641139 89276481 576717806 197275275 452696037 46989401 673797470 631692424 849905955 125859116 838293861 125934296 481567425 448634208 754228968 21662132 74178391 20348533 810778445 686880203 937897759 493641019 687114782 191971684 773609996 268555106 628200349 623028892 919975727 134501478 965088526 114341463 136262358 79311524 762087986 486774761 618312912 164773897 764161562 41879019 670738661 259079730 366436825 228566379 634444517 275596749 327856779 195421098 877713760 611797980 703068985 80898642 202500553 137065418 587260524 524911358 640778440 139910204 797314852 487194423 647388570 14955138 513124700 167722387 300877278 28509259 59814677 4630729 124157238 112891539 857383136 472116571 828252690 282208965 292469383 225109214 784508174 480026880 536797282 99114060 585889627 424846523 655041748 584018785 926983484 278000672 291522213 121404262 890842306 528002140 862802288 809378303 942446277 592619970 854789928 680302001 931778881 251031666 583907514 93547449 494127734 147674485 770082219 400656666 808376875 11559213 617406968 403634928 577078523 574265652 624674190 438455296 930773480 124052870 805277796 45311186 732335705 353901398 898235882 529102507 837550785 67907323 351403628 18541578 219200548 138066447 972093086 179984568 971249970 23929158 173943021 168614861 528921696 243982997 716333028 617424856 784337288 630847376 743602752 420503412 987514974 556345319 947075445 700837610 814019138 243385702 427660714 290687220 512682564 237771012 870019047 37031695 383624145 184878182 955514058 829986361 988140735 431437808 920270101 656874134 997716791 516908448 607122565 368752018 894682466 344163620 633080765 285490152 860422936 610711869 915291015 751076249 762913241 477175398 768192075 409468316 843838622 828746773 846981171 641786444 789231297 752623499 771514814 432526285 631577665 480367665 632642009 92594187 417125993 244727956 457340656 335831849 503839521 264759680 765050618 374507897 518015386 333102939 990429246 617878374 844920587 834533370 841982693 410436633 954041767 371000228 631298087 537105256 570421002 414880688 496970236 272844767 326549804 184874790 449614917 404575085 934553449 779490016 780661072 737988419 945705217 807770675 931444254 793929271 938826007 746635094 897193055 157962559 185921055 14527455 151197453 217418 912341542 484551356 674621326 451237439 785471521 543206496 891942974 797930993 962079227 313630470 746056910 528656655 601262021 328346150 964384923 84441743 845836005 467985944 726789805 321309959 648776936 484940336 836485857 22992908 422956964 110216304 504434928 104069255 294659303 197829078 685995370 583397083 986545609 712574618 959869165 501863891 882078761 526909831 626050334 141452964 355459900 250254311 723883003 252136096 896511162 814075500 893963343 186521242 310286186 178586321 991132294 428224883 899762234 8698460 628939215 135818025 261480551 5736464 938981800 229752372 468544562 39803338 471090423 217606169 396884026 127745742 919327916 721043113 857720652 508499170 823749355 694409022 711968328 613032235 854006737 154819121 760204158 508584454 920563490 764023754 856623563 153494047 473106892 382707721 506118422 354725685 719713794 181152513 234241988 144300387 156279165 103733113 276514428 19079286 916459713 378085204 941601325 436137558 466415874 11068851 552973800 224765064 789367259 732751404 995912686 132536937 165881117 70123790 335802292 60859372 572266879 523997639 638495984 371215662 574004867 208601126 250749241 118061847 668137349 34403718 836474718 424484895 906961126 792407582 828668078 766072653 918105407 381640723 684466522 679798818 912588264 379461710 947751525 746830276 978957575 616100762 876170528 348973739 612211171 250352025 419066224 10150601 978838880 316714221 729535331 645428258 880803702 684897043 878321435 789846756 971264272 127652089 294899385 153711763 568910765 206238872 698624914 142455584 679584246 664660306 976025068 520881862 799986285 122784279 159361884 146201895 493660503 204005520 702626636 692560458 895408483 572880682 940921165 318975927 672132274 467351915 799299254 715842999 922739096 694209171 764028798 526514034 692609628 169530285 457824539 317938990 600101655 44434894 609535611 245475534 783767611 268565133 977672896 896971337 966902401 487699013 575178206 560714883 794654450 667747847 697748436 499210919 674734089 25333814 328122601 260098766 345022540 76224908 487341449 274552967 640936176 363481408 602405397 305405326 635271547 130159803 516299343 207869473 983080867 71340377 176376334 149671702 284099416 173860112 258624905 249493065 871217422 442954693 935315193 902075866 951213887 513849960 930088282 375052515 613627674 222599678 613260833 500121736 622950290 306769610 835018659 487712772 759559116 721218548 955643493 236158456 414217864 142397670 775063610 751974828 894368941 435481586 735226738 398628214 574867180 165180414 727022873 144132998 677282407 30439613 880456636 3889862 541932592 333563654 999944086 653889060 964075984 487356267 582175985 174169368 430297462 69407505 429477469 222079961 785264921 294461824 716611897 199436641 992525208 240083845 933467183 862571855 882944408 873037247 992442733 413010985 512399444 196894386 635586691 344194750 372108157 349478087 894352583 273568887 543110895 390642355 594345873 569752239 909396470 851526213 967064374 461957064 682426742 177230183 264256022 107847640 337053928 123876217 638441671 514904505 548280015 375460973 939570823 312845557 559262236 195759556 451027170 41691106 129495807 112093360 708556082 200132870 258219831 35808804 898670789 192269632 891405952 580089169 705189915 672152198 860176398 459743942 749670654 375138238 893218656 42288799 565238180 270680768 392616030 171219467 542739693 453581222 580838979 248662250 388259104 269661762 984909447 857369897 967589615 462431797 836566491 647375535 924882854 702839953 827053400 401871811 802516607 332454884 513037675 79678276 224643595 176155084 597263195 5428196 5554103 5543448 329953148 39359428 178495823 43445233 616417814 256116244 295988151 289165488 993904223 784594965 975023489 548519129 954829804 162785508 773556904 489782688 704407467 127024185 393891257 95848479 634660798 40778512 52027959 10010238 91292782 41793767 319224788 153762810 438380086 206383306 270844362 73268985 606194863 295932018 663301421 34944346 609992667 235948712 341816477 151669958 166500925 84091796 790269128 477721400 655372405 13267260 620207826 41022598 536347220 508536453 878482981 837635848 944956412 615375704 797736864 146020394 992668112 526487490 575190054 171958274 395265232 198946575 287692437 286432178 594364028 530078099 944270986 782011378 803985079 180443230 915178512 681893109 946299573 225192069 758064659 713553681 765191153 278397900 999572259 835380830 886173349 357630020 803215664 178767608 889749881 341354575 719159125 561967825 932603991 229149450 616495571 317781513 874407470 139818304 665216599 50338923 931827670 167971699 871884299 5032059 786146398 250084297 944235579 66202915 846910564 828158897 882136522 326822278 747476774 131987041 384874959 144650321 169743668 100032346 645890432 95384724 212977731 205845567 689045066 593291601 752931539 1522970 649673158 49565277 415975093 16335080 147542555 123663981 709306382 685029060 822174649 697909785 857094277 647448995 760153228 240627585 319384922 126380898 820346077 314122468 946517707 675669996 777357783 365700888 852229481 525737972 830194756 118093611 900064559 272565370 883316141 245887527 465385918 57096304 703129157 121674687 812430270 625777028 898977177 716282677 849765362 779543998 914648958 265291473 961179592 511116340 611872638 525246505 790785939 568053338 650598672 185130696 623993326 325035174 749884919 515287870 646940500 428007512 577348028 298391292 849933719 374711984 700934369 652145738 993043842 486823145 959792945 237786623 824697566 52604058 113009630 99775333 138599381 719960 749465963 649552593 854231912 429120640 863109930 74532570 857720828 432886399 640814516 360001515 824353852 455727884 936163141 760455874 776301992 438766500 618828956 282280275 378059494 112592986 854977634 771746283 890267118 672600740 983015360 348183329 659273934 519932571 541772434 27431842 239975629 170039935 304886891 284026343 933101437 745628051 953836672 652043673 998074925 10437053 573177460 347040341 363078373 27579769 741195856 191236640 390167969 291250641 908114385 686304383 821791955 60467550 608916956 452096243 715671911 502351373 806966206 131071969 721187396 622139222 761307240 508377980 686328976 425429563 896332691 85963721 275027045 224736696 960919321 851957953 980934644 323690525 584824020 209585024 990834097 898968666 907402999 573354929 639019792 186482281 811346921 640822932 911639304 736516600 774269577 58884765 636558756 252168091 891135232 722687528 989271157 541600414 607917535 319804401 766097407 410135319 770337174 520028190 704472591 552742555 676611070 17892713 686036093 444173866 855922205 484315805 618743640 611214782 826264304 726289132 877945397 582784501 939703451 181651810 779701232 764209302 776719651 25698995 894575572 342560913 544216632 95726426 244010718 70513518 623852170 41189109 364411165 47994335 374738525 82579593 155008043 105586407 944801570 541005150 819986583 436385425 693677430 495335609 828999596 61453242 432955384 21250696 189765534 82582415 724714300 427358593 887877986 181853086 346284064 177076234 640096473 199469426 398080161 132174467 786692549 764504578 944504435 31716685 815884236 185029308 670839930 51164128 322719641 229783746 719452553 277128014 407826429 219034176 768881134 418716302 832746592 609449868 972581801 254374538 724546311 86326054 513052946 138764514 785506943 143195673 339484463 99510430 261933023 195507050 863343148 342288721 560933938 101546720 926536424 560202919 791644443 416347239 564246572 107068038 378886346 286202237 935650346 547855756 999062469 458370227 514370816 56209446 544951839 336115577 737678126 578634944 888702406 567156806 678632035 308091150 787200832 148211186 285101007 150909308 659893777 328347188 712315421 382225001 821257031 139902400 543794766 121309837 791211948 377354234 964193608 717055259 856267495 700898035 872881373 682053911 764873718 309302429 734809693 326992270 380233470 269840122 730873967 564710481 669890229 127215381 766068710 56322198 660799550 399577253 995432455 817753607 998047536 676839059 877807527 233035264 656800038 288632299 793750614 68010109 757545148 471942330 931728149 89397902 434465401 396361152 419149795 301821155 923997030 647439139 930743269 411421312 840361004 292705622 687723493 207515213 307377882 154242089 508789822 297905913 339355255 54506726 844292369 286014316 340912946 330514429 603872449 346757913 440124942 431741596 496918635 145351665 221065683 113442477 767306320 379912300 865391723 745863855 895922659 712740334 720387062 2445062 449651967 302034325 987405039 267476966 939383878 749780424 897250522 304840622 480100632 474677357 844460448 283687261 395489932 172133629 628402403 618912140 668270938 195608784 858912637 830502668 894096844 648823061 671247603 13682913 803654106 660773856 822171267 443399487 523976029 68401164 470820700 451872983 601393330 153104849 860584092 189781065 235302991 23828518 556611950 59877300 290240433 79300901 701237876 462282991 976869209 775194053 828858952 676623090 862131429 110644511 650156804 10928544 972363293 80639124 767496652 382707618 763570487 572131369 679578915 324911741 848989599 528733717 642078745 43219365 556150556 346429217 439206368 286694579 303403295 255446081 444761861 44962530 647873958 141230660 160323612 41991885 603148240 565975483 694002622 116560251 880390876 372141089 976926486 754929588 782000014 397839669 911869908 558380890 850285683 38944149 39117743 3055377 960545464 888458774 964282539 667395128 704349430 673049358 994516702 666440695 705746773 326643759 524566484 52283564 172199193 110530452 728232622 143328393 242575368 60914215 569286890 19058067 30135239 8157792 823871511 126869373 507917653 354712507 896692925 844263289 889447910 887230024 918054518 598105803 982941265 423535968 482406419 140584754 530912083 265073926 324584284 321846918 427962844 60132564 733671567 138263943 437307128 17534465 364028173 48379330 696403151 257803720 633182730 477694181 680772528 490399580 591441397 497717739 544870389 28468584 264437684 73480341 201792951 90481382 149297043 6110337 935297183 707422297 937287729 621545819 674792622 553947785 680151365 37134720 377862319 312798685 726310241 506090112 755044843 98153028 669067660 362897994 481900410 145210913 715046596 95172523 693325659 13743944 728220026 319820885 423719160 171409949 843809883 174857943 444801280 395365180 407931048 292036422 684828067 633009033 834823513 672327033 846851315 421336714 562288757 495581332 936263752 611937697 933901748 908930615 973072760 616279679 985252920 528907154 853659238 16023766 89326780 88785746 628120434 345987875 932037491 821647650 953227778 717039960 924598978 479859629 579244204 206630388 212098819 195026238 960213069 887097655 917716905 471889646 510305002 154073032 445957221 193753811 936116088 515893595 780622618 542777900 909785300 344794301 502994450 225459468 570542750 308167388 422747580 9825080 24627585 9109114 660300159 549455068 897941943 39901537 493488428 461850402 520179893 189932378 617982230 472438280 687574798 462570959 617400816 67830918 811428325 197735416 289896479 238983370 515353777 291933852 576425600 409365924 574506287 488300538 863864110 482344293 746220066 506471550 839158298 811593044 832931062 509262296 639420281 87904116 454896210 222179492 469615266 460095658 979771689 113257610 845355676 709279482 866075903 653057479 853288854 645588149 859805072 210123790 330068391 82260830 266481580 263472500 742220389 453554164 546903787 217149355 740934007 336587119 919478146 348308070 530168556 413173113 957082669 121303597 243630329 2496739 699808777 484128254 904310724 260203669 583249349 418227617 569146034 393235217 584327951 170463705 268794207 56350527 73985863 57076845 449669245 42999474 571414668 252593262 614767998 25195169 640002597 235922347 612776976 81223884 467561539 149594560 219534835 67675802 432082102 125208644 582426519 66587759 95511517 91477247 762558215 358437196 689168807 177961408 200524921 188065771 479977145 474691545 940815588 829426558 906036838 537263025 980842387 730150799 906751110 287884886 621797583 296225895 859297226 108434288 740353719 294367979 857303636 782327297 892440132 434849309 912576884 879024861 929763503 240467479 938078462 69905542 424455747 97896345 801183766 275714755 870569063 86351633 534862157 458892984 552202234 377353555 774930023 686947410 869304313 506548658 693663830 637507301 646547283 150466245 344553419 200042766 562990796 327103338 899207964 774370105 943705081 55327627 616905583 473246360 673952955 74610320 653917385 460097567 855758971 291225129 294826048 18226369 597063327 534990123 679759493 372826501 560910354 539264301 883300853 446842478 692528111 402381461 844134268 42164738 862751096 302187507 346619808 101761307 226629206 179118246 225520516 118462286 223763326 138600775 804585289 277900158 575534177 259965474 760348586 414247523 689136965 231876641 429995437 161670752 910068137 23161895 285143927 268512242 669811444 378650952 948647551 684673675 903940224 376601723 776128206 26362103 882957588 757770286 874183580 541984013 974945210 444470513 706667352 130576937 705020885 204178900 618912782 437949067 938947008 225862045 678405610 267833802 476761070 195343872 802354782 530678408 962235625 338508492 618149631 586602323 718964038 297898068 534835202 83479901 296016876 170479314 960126710 523682634 651544664 398901908 478764769 291159113 835099711 456173857 724741709 93552816 920712676 370048124 638700958 250423666 879610954 86780087 957188846 814819536 979088202 927359559 989826883 963074804 964675486 698290267 739586709 329018016 386872820 67167030 411111336 366510277 972693469 307662661 638566241 325201465 707590574 598626396 882346208 414828773 996397462 768554426 795322987 305278982 334252428 231794751 976461562 750448688 970292212 80987153 198957953 9624833 368363542 34278751 515047931 418070798 712459883 96839393 517363145 489084691 522440262 401141724 443178863 322032752 517178454 230037600 636598668 177578273 964130287 932482181 983409737 581045574 884952861 690855672 711844546 105966799 686442408 628831640 671641380 633388576 794553479 647489059 899912105 91912943 140058884 118316049 368299808 227016263 934606272 355500946 522523942 489613905 683311782 27401884 979799511 975271117 997513922 120695486 403221153 108634974 733374420 617392470 754438786 242120930 260251182 112969510 599547878 287094425 719533063 578844340 659569329 346414852 984635712 250733877 430112797 412868922 855793345 79025452 156717238 34678241 274889108 56473854 304937249 79093071 221812645 146086087 222295270 88619770 217989739 175100505 733215140 594057873 962067197 432713073 592966652 514362185 906718000 354244915 793677265 718144351 960268794 406519532 881912217 370832905 976237520 403681318 639069636 476480052 561226548 409946663 618695536 244645556 323683366 103289916 911482435 788018785 847114294 728867670 783889310 721534059 960501631 85439900 997450049 671359579 689392642 194412155 491539443 4235795 32877226 14445564 198148853 10325994 441130014 192303219 772940407 276975930 653140085 71751793 184322338 23630083 352741472 230238198 264023102 107857312 477445136 111719260 834925894 198562684 328326502 115836133 836156606 736994925 932496479 824426583 931183020 222799798 977179484 604173682 645630319 93505961 103995437 70655891 791794387 599051584 632498012 464369176 656396558 204470375 385765755 378183836 729610567 225282979 390614895 15145767 361200703 235447354 321330175 172439327 589851964 57378102 71756446 15425158 435141223 11741843 944653882 406613609 676938206 163548918 888727893 374455798 829026701 776083047 905992835 524925377 608144097 313948079 879606990 259526995 684250294 638583797 947455214 780390150 906924428 331927989 672687893 310222025 628534822 15103916 120420407 9980592 35608181 15585108 620492898 464135165 979435818 734882285 842176636 608072989 619068712 209733799 634132609 338420707 709151733 113282589 885357862 153007271 498401807 4112959 856115004 128965957 755089281 129055314 560735148 55225445 704739259 340045035 681637095 262249818 748269474 45896513 251479301 234668639 243587709 108268361 537094334 462753881 677844182 82696032 774218265 474101218 857582603 353247488 497691304 363819961 480058769 318087598 955842703 805559942 874274149 482634965 992549262 438401936 482527237 1157609 108613949 37716080 116236376 91486141 638338359 230657109 892503080 11266950 681395028 285932375 425624201 271574818 655319654 33145309 420104686 299628519 556727379 55079384 423036427 172652744 799912247 132644398 861570262 161661870 934512859 622665418 817711545 266187372 541445250 326523963 513216024 443753774 858871539 773719031 813027210 675061289 824709515 185221081 364171812 332445310 579808514 271983601 781953902 362065967 905612305 682762380 829324182 164374680 257946026 60576869 693023580 341706224 794807275 123243109 369283574 286778424 703905549 114941523 355190068 246798952 982302550 164856149 177122455 43855220 970160700 385698512 438084296 259848061 819272131 648030096 884205284 234276270 384920570 316801853 516321571 494448298 525582607 239615251 282258251 36580827 533725975 287260918 473055464 241124381 422117291 250572710 801795821 344262658 753453564 699722257 901408743 464766062 668580115 525248772 681939042 517376362 764658106 46825427 583496438 211646803 254489670 90875776 372507777 190914838 744485099 81683066 938224030 252621969 278872181 196110854 508103114 216491956 496934511 244173507 999012053 774466903 891135571 263917785 664749310 271862321 744696056 69756237 110265788 47878981 593641597 42713952 762374839 456369673 683860532 97190769 849205528 100540117 189244671 153674128 889586975 48300143 236169257 189036557 373870500 152266994 470936386 343210224 434624978 341904763 759005212 492226173 764736925 313535845 678513040 495546223 916926929 962860 697066077 202268397 331657798 203013607 942689091 389840746 619580833 165232863 421250777 379691791 545380125 240019037 992345001 332720073 401790220 288051440 314185139 48131061 226762249 89058012 544851703 116413389 776462991 575594242 811808097 713569959 924826276 455956524 513179688 127993102 709299454 502614522 866295360 802639939 997778336 448460780 460468329 34466141 451925174 414606724 726313543 632552163 857972407 100039759 206888014 51699013 178261066 34876321 643906429 266459888 711101388 240973725 318048310 199553441 336364379 111464687 441985439 55720633 492853745 95371916 657515808 441452684 773254613 352174288 982924867 183199052 467568881 187078394 327740208 85918299 838227536 404377709 753846646 743747565 958733266 466799329 906654115 503027846 615830492 460793474 668944675 434880302 708618300 637541475 843531771 789760328 846504491 521940190 773670826 360417645 739379712 299530292 299991370 117737515 934862375 155709233 477581149 174106834 850898383 343576766 348337267 305994851 786773289 292030145 747211138 706886582 976613342 502458547 663940717 486928867 817168676 45280826 524209212 207173341 732825466 64508823 781828597 274557907 389228739 363648867 436396965 235341443 645010355 62333827 586485315 32624761 997227922 488159652 613992826 301607264 565495702 188731476 880942772 574756716 883142622 586948858 683600683 43372014 79044976 47651480 675863417 627018097 971841466 766663655 780696050 119457280 134086400 56147352 598582821 283227250 398191257 328075027 357552590 214851693 440334328 68875231 945017497 250051501 798865851 313320043 884840007 152864205 480569068 413882096 699549666 393980013 674040405 294104019 839741470 707310956 969078793 251841060 606965051 52732276 600456517 236752722 249636814 126935955 893954190 628605798 764463479 523553305 793375360 588050991 977518317 173611006 826848021 751968068 759383501 619962371 648421776 372712728 435640835 262906926 440089997 306146134 941324215 803003786 960749597 298610990 445944115 39256373 500762031 79784520 855424371 726643054 748575083 430455945 467951060 113927062 852990091 167852989 735840077 336493888 846424153 582834358 786024494 562560148 703011847 361163717 528790572 315909634 656586489 401600343 996300267 209757618 339851442 67802540 805396822 719512934 958958853 120992958 545188204 441005813 717171879 27563876 704187292 259097019 622569562 299676294 588021165 573033316 834131031 121874686 812873769 445550156 776959495 62301217 980902054 46560426 344776714 147615661 170178671 101924829 689120829 429574455 439009451 341689628 684649208 193471201 918178831 413722143 881868904 164036674 429023478 23687461 225551633 68755902 290548577 132215948 722765087 615298187 864120469 182835158 624859436 351624041 818279207 527107019 947687478 12299963 792153624 180184405 191845091 101764300 521643514 186397307 894114190 511972325 850704108 667756800 691700456 211722453 264816583 6453260 886930511 756394338 911443383 730668485 910565010 289217705 443838146 135790320 770147820 384283698 412521842 364532198 700048238 490387032 995591845 367126604 425916910 282562149 497878859 447620352 636566724 512018327 959269567 229954041 908722200 588533396 936576380 466951232 553647402 242032624 390447645 344263342 458532647 420043490 787443778 379399750 933333962 496785898 511087748 470866222 873544063 786784164 944015242 676610561 997219994 634888411 780349324 632536283 681404472 330923614 547091427 179019758 909073283 51268247 335134759 271654905 823932869 106019312 195965487 186446871 362249338 184694478 710169274 357490792 621823560 577046243 997775232 140706784 156356854 56241757 305050973 54219943 281117239 263746663 529088159 123026849 930498620 849290596 964419948 536356000 951602870 881865911 888936184 842300401 904545794 189871802 743086995 348697221 795070885 730860738 977303027 897060467 930604363 545093341 694347655 204903046 922836525 471806862 762312734 335589368 475268679 465937537 725731958 289620214 823785085 93010214 281653362 195371120 930612318 289929258 866462408 218355110 877411549 341672900 531910897 285442706 540325868 54301713 508812525 423778185 641640085 23494655 946891789 19104064 820674519 818685962 953560065 161824991 589482650 244763624 760128370 563003580 940676944 393557724 716584098 407315998 825033424 399062829 848628217 183953458 595775745 79923802 510628559 53175088 880370249 682922063 834239148 123993466 315537293 20825130 312742107 232231298 425732882 395874078 624484398 342417541 399111004 28274290 712984364 689457536 692140053 464456376 477259908 135313225 376721420 328884869 904756877 322170783 966894268 136791941 909967551 71114525 971383686 791350542 846834417 577782133 957822909 416688568 820917148 338368345 535058130 168490097 466545331 443738915 878498745 671529336 974836391 669383030 922970368 28210880 898761120 326375568 666111523 123466761 771899427 615808106 838082530 426108198 501233185 397182503 632072043 368657841 884839411 399310940 718833921 553253742 817248591 619421096 886352679 335883227 915808251 322024347 809213886 206304984 850550960 498268843 869207548 667612446 876768432 310708751 420393265 398505647 654287577 367328012 888989051 830885910 848603433 384285820 619319899 555644001 889900567 844383438 964772938 648305594 863376557 433310481 814416094 412623951 499358716 364934135 755885308 411384029 440932824 339992217 511596733 96287081 890683526 471036112 587264274 204379957 339055870 223422435 597459328 358263728 555250769 134009952 150653601 129539690 678976108 104587312 844250091 530445974 794051306 406195137 907960316 509768887 547976723 243601773 625110764 523003762 941010937 100378272 313171684 240630116 882211000 6991643 903601899 50478868 386104524 36927277 642958926 436769787 817228047 519313125 992599339 868965019 932610457 347874075 858027248 732454682 922443820 94719362 197088157 78710887 689226241 188526780 582450575 376108340 933863266 700093901 798929061 782733796 818944538 570652510 675771089 15560434 240698268 48357799 827619041 576286189 657289734 414715195 513097135 362162003 820253072 66847363 999300693 606352292 901075018 236126479 986611188 69983496 74288123 52031170 422200615 167765330 740431985 609180627 861731228 122217229 469388692 442402918 918646162 197515813 933309554 388586673 909040004 286918537 786828430 333193024 641996527 187868239 512468844 404019269 404830594 52156417 894233693 714786497 800077789 318382762 525870383 474043178 665509290 563490318 877532840 671601214 758054932 72059248 195684206 93268325 637173328 88295800 704913303 634192151 808968325 145028122 901866154 478002642 845653375 466349596 968436133 78876283 803593621 15569373 167231639 159332950 432581031 209753264 890159911 499759583 645833840 22793701 644934750 640142895 857063555 261465757 385599203 233594728 439867588 245110310 566165140 365065328 689959219 645064202 733978538 110949628 184053239 53571559 577972809 432899498 591726204 306551517 936946687 599335114 600861243 375243693 603847127 169489126 635751683 65174003 887878814 518777851 710599448 322570681 925361486 745233813 985538817 267985487 541155560 363951794 922202215 395424079 910609962 396885786 431983698 147603294 248741228 246274366 699907389 685517079 913736993 679395519 943526354 875057271 962038512 504954840 821476108 672955706 933380845 819942648 945318578 675989692 747463731 400371007 827686932 149945332 212625419 187996899 668917569 181085736 428511864 167741500 648747708 91370986 556350727 390946346 948969300 146911386 490503529 340287751 942076628 385031993 528151200 511855018 856590770 300910777 758330753 497065206 568403512 37072368 713173806 168219458 482729563 407690330 849321807 191601349 769052003 439162985 549464625 148494306 705929659 446174996 814617294 511178271 590770765 488492609 569352370 70831699 937690037 825236803 964557069 567819599 825824075 433241551 756847661 302078709 986538555 298232737 551265293 6041160 633527025 147749750 669895017 392972004 720394045 279350735 523954231 132900128 759371777 590966808 816311136 617325298 813753340 211287653 464519878 284937090 759988293 744250840 844732558 287987480 458095180 398855542 552679048 219960022 732381605 233231846 331566882 206440185 706965675 661299603 726160548 714997244 920965186 405015666 802626881 476912373 684941369 477144424 489647537 128351560 468422749 59984056 568989393 479766515 769438688 51237664 163802172 95959204 758415751 496648529 510212816 69351025 529773981 123483338 152983345 20232213 190239996 112523515 501532403 163497339 840838642 296909007 590330419 587316507 842381975 144193904 498603446 481068143 960941965 127358398 925081613 21522019 777860620 164212565 819787219 123648560 970037805 74047614 138296640 7620711 833339818 715415287 835056025 330638196 793205591 377036243 561983791 523930825 629994472 419445191 854203293 16599489 829601499 388313553 828150009 351921671 908352582 114593014 919582236 19031958 130221048 30504401 151347272 115986332 765748113 308169390 724411056 548419255 551853125 132679107 647117070 633726758 799571658 542666147 990972288 321385204 441060455 382426741 934500803 751692293 764606487 446292423 493011540 59083186 937271190 767845866 772641885 167285172 737130381 182267319 635364131 121729353 330583711 121564333 243586900 138584721 678612607 2182348 978308614 950032402 969263350 713617747 942084112 908846070 959418474 58020585 185176138 19674633 422548982 83956952 463407469 129719327 777570411 660287790 888607162 497869483 804864554 758933248 764448865 519709299 629807372 230765466 885010909 834901961 922143142 90657706 758616321 187853277 929803631 207696999 416704886 268732785 391460865 321887528 772955350 253751598 958996677 478800649 727261523 34874759 827012655 551081505 674474344 295115811 872800250 112107943 513429502 158396002 572466311 83727746 593496875 416493126 852829824 334018440 891006723 785099760 967851845 603569919 758247896 357281085 996617442 594283168 973694262 144197498 584533403 385068070 971696471 481988471 772659748 563551191 852383975 687360525 882199340 214298361 269470642 30641033 634424190 24023292 190355900 106436274 490277171 217635200 777524370 763730044 886059118 190485990 454481223 357955630 448896431 393846323 429123305 307987995 337357123 309671621 595483430 172371702 746312768 62159723 477874265 232522516 748189201 9303095 672713309 658930422 880104811 559207713 825200949 120475537 594132478 86137321 451009897 269184031 306073215 147494939 975011568 562548691 977741206 491954449 987318773 599984390 672997320 384044360 516654637 30471802 770400025 614867404 707641260 189812106 261089047 256130360 504685208 35034696 173138497 47206648 783721683 114446102 201951961 16142654 845343236 808078211 992839975 348596426 667916458 185410111 355134106 311765975 823398366 144878017 876013854 7704659 168387166 53736743 951478348 418166013 732707688 418149397 598514057 169509541 523825058 280449969 391093768 307641054 486965599 466405337 634521223 539959067 762599176 314862781 646152767 111488757 798015283 567821106 582649766 221475522 326716813 201662778 441062465 310935179 862801064 110066385 522761738 297600693 359908317 16682129 516215359 22353745 359005243 163815172 627902957 214255063 836301255 456122844 642991714 281781307 807351149 418758667 565119901 552179258 843661007 460277548 879068354 572434301 893827193 326017220 735446969 367550241 450170710 60549782 632139978 154711813 284799280 31512065 905163561 598346293 921202000 659669345 847104115 839514098 853809954 43705126 452785231 334363732 588430693 364649461 685026337 95833753 370430640 327058265 464925732 163309697 278866546 121695307 955167998 7699529 16732386 9080701 151588279 129547480 409203319 178207089 293671104 152307256 209160059 97729170 911247146 191712858 210559619 29561852 648787340 478001503 925182216 637878995 791904387 399484536 634299810 68273614 937295980 299838681 355402389 245154567 291083130 282751591 990453367 970261526 978403016 366195191 823907322 618473843 859691552 38009670 399843378 48016604 247081491 201748897 827230940 276716861 667161044 70667297 414154811 380169184 720480939 578977607 908101942 31389680 597521177 233890880 986476357 979123377 992637603 554332420 671788218 453995800 596156457 507918611 809050663 318082789 773957573 484109984 968872539 262592844 403584696 301692091 921376496 524988312 737248161 31409412 394100871 73358319 841636624 642780689 853567199 69434127 754689578 451968246 586293919 146626094 853843301 664298051 891611169 180690424 291962616 128674523 558862519 254833870 818648294 403225377 489493977 350593648 597484461 540014891 803204269 353763051 758184930 342082596 763945210 309720250 931488067 728165796 920575768 611541642 910564197 329613113 512928731 234644536 637795266 444697851 783420090 356509206 583978206 224126470 975471749 455821985 955267051 331972961 552842509 111790003 405325175 368334471 571793702 264782585 293919803 71298023 533637369 500446846 688704021 250993189 569020937 436092870 819486478 813253323 847035614 634890081 887430623 84348100 152004058 129771890 904269552 168613685 339690971 277816607 991021872 514641466 584638201 411945659 727798883 103339044 707457959 657110820 934335323 647441843 986031136 266308106 848023462 338830715 795365600 396418556 912362857 313162805 723175387 73700417 404620100 291296537 400687514 131721056 559737056 315081655 563264214 188337326 377139746 72665149 684983419 309810779 944175381 804887545 902440218 221184449 755064025 347777897 777869410 399352803 665570244 27283772 694127620 450522294 631998731 63685616 156537363 42114624 952802481 322035120 970755106 312165667 514993151 176755768 530679241 164284745 980336864 426370904 752952871 713957990 901512855 57799461 128397734 101156014 558878164 266382971 701530967 133011783 247670779 194572335 572444694 487615008 976663614 361498880 466675192 165582530 507433672 242695480 707581996 79820498 555043014 114202412 171622320 162948237 770158418 311428134 494861827 91014426 138336799 25332355 780966308 540808076 898712947 535912426 689940587 222234050 800971126 736496591 856773551 739459212 845667854 597337148 657496293 221576043 542520727 360888806 380962018 362410982 801708400 612271267 961669745 664037847 997010585 936771514 954859801 445689471 580903781 37522385 878137571 242112604 799589414 634461072 750352771 17216779 479128740 260570732 463825018 263418945 611774355 441033885 676990966 335223517 528029532 88741419 603371407 209665046 902306659 803215186 946865598 322154850 665575377 430275635 677812166 39302364 546278062 497107497 615935914 53195145 830949972 579123185 917017163 106153326 554994744 401769809 764839902 224665637 607032764 7219093 217747910 4611050 67036003 25166541 670919010 234780206 651978364 165808197 456833616 188648616 910253761 859290518 997974749 235816024 312814986 197472882 935470338 8997976 63793986 50785589 244773288 25197464 563307607 429489166 820821125 454945703 829331974 817499809 927968707 850227200 943997095 795232289 799976085 149545291 705193488 171432438 507926561 345697032 454357622 49475894 545182579 203287132 355768319 311753098 527597005 304453126 840488434 538258381 830045650 608217667 703106844 585484998 863277756 237706317 718707279 107482468 362768339 199205275 783187696 406682543 436926263 195243907 928858587 637763754 869464993 811803312 852365410 687420128 873685937 784061602 861587486 760408641 822741672 386331726 560032966 339557387 788699627 35604965 745098299 15403792 242230569 8311990 460792948 216266552 481727059 457482031 683102446 151735682 736932063 440068616 768149427 691449009 780424090 336879398 346032467 220068749 283586392 35612462 329998275 304636156 813128598 587302950 686858284 169695271 309597388 80807849 453890573 34822391 631146666 184651991 623189584 491055482 688764141 474147702 736730193 388343993 594251480 201239491 584059882 215017951 442766465 249873966 389645981 230975242 459381754 309925338 774263423 289743579 506144434 383487252 445506231 79873044 354851838 336194590 759928949 74974349 898631517 859319330 921542544 864022760 872785347 597927673 750651179 634344541 793970301 32914916 369854879 50997919 624029062 295688719 605151020 506266757 582643466 113517388 149136531 20119540 872090905 494558394 813253355 306540121 690771266 267226170 940266803 571446914 862384099 430832345 591741360 541069912 873841919 135334987 721302790 142220238 976921081 426242998 790847609 553242925 858704408 425851760 811139027 561286511 950124105 484614976 741439869 367102187 872021612 495506624 721702278 280337979 876730742 286408594 351709281 282991883 562474991 404780264 717090957 534551561 644494929 85292897 806150625 21545933 121093506 30841363 143947794 133373383 585452321 277260817 936814259 89106405 354677975 149686141 680764993 374708076 552937414 520159235 524835831 59357331 820587508 488976763 681114625 493252017 920440152 437631358 587922079 292150650 504114630 275647222 817439396 159515682 459462986 13421587 524093197 409330840 461696514 341451547 826130249 667411177 685403757 397772756 511804193 412000545 929766360 637410212 976352977 431928215 584168305 165393006 970057250 460957100 472991483 282136438 320574580 147741943 366223977 7272562 100536185 19315170 173919571 145824378 786119474 260557967 669889452 652113265 859223232 254746541 463835977 356268450 607074654 248351096 266148548 176904182 510476516 235814740 617773958 602595607 807117725 703456022 809529766 45962737 669565542 110345525 328466842 238414789 296669007 48407625 783658036 626981851 667127890 523937580 682119344 549506711 990317094 496666029 824613534 84085423 156472434 28163297 390378013 301606135 344256370 21845502 971042650 672410054 749097807 692682105 705461169 241741050 805660588 745488049 942696622 69983229 618211591 291904196 899685645 684401202 962925372 820923064 899700374 889379588 924270533 561713716 647073115 449792786 604341337 304727249 646314503 409009328 765946689 446975292 501206739 347563606 907019565 631794701 769110900 79411116 294853847 191030103 856394355 623129175 922080668 133028980 935736204 410542895 470539297 174591701 595441365 373704968 528177643 143206283 282902953 49405364 997972782 627748620 990128505 905036120 921453579 412960710 500583531 17724963 503197039 327418853 963875155 525629979 839067016 34108878 249213132 68382115 374636371 20552031 866262609 44999395 397575130 229735530 613783014 333685225 925863211 139851860 143418472 127164240 912278333 814638193 971073894 285213459 479852550 107422106 249064573 29354233 396727135 131638869 694345493 189689348 834814932 223337281 828347506 97679889 742706979 316614376 936831827 468782801 984562354 958192205 961418781 740988345 866598242 37475994 82246675 81707913 849764883 218626858 519444103 97942335 772202702 12774900 242489953 161983656 456174258 258833217 884652624 671214475 932453063 181974992 632303755 59832560 824342111 739002121 759001822 301023816 741138649 634074708 793365556 435824368 758365826 610241356 957342723 734129898 829470104 359606862 803098701 180250737 509198952 428002013 828248319 278466184 813063294 772166403 778777609 428067091 691257898 401543365 789867599 579436274 889060109 197045862 453127688 288721308 558365663 423368097 547631721 146409403 685703697 672101608 722117012 42622713 108919527 25763737 213579357 42877858 475238122 55802493 985195113 877348512 988648935 117220287 781010037 378105471 705576793 562883355 794306852 632186482 700970685 554961684 841902466 222736940 469949028 254684028 465253148 270022471 519287341 150206878 451258940 199065077 847645845 586052561 822379325 699891686 990811034 862244921 899875340 270201120 559723528 43390863 961609642 702838418 761865281 728312741 882268161 863699473 998797715 972739517 973605179 697374062 958192580 934715732 960995118 343754227 556490728 181216376 507500523 431110080 900870197 351387510 581203232 300259680 357255551 334489498 616939652 531030261 862088637 773107161 934244827 749122035 787199852 99093813 902471667 686197441 743086831 741223672 964710395 413629097 609440263 514259283 822951276 194154234 926862752 604135603 938872905 935758650 954895842 81082052 103286151 30931254 962339682 340762121 739326697 725536644 967135557 868180706 871456620 40163254 189193145 86141725 955230418 887021763 908068757 603676746 693704214 630128155 715384247 214342858 414146086 226610611 276779744 265621539 803601743 463124176 815191308 478754505 943452842 814961986 848854101 231402533 756066222 672351825 734378559 18176869 898414230 687018391 892357156 23658918 927925061 433679451 681198477 469967974 554942074 486300613 896406716 322521323 697622772 368071856 468433075 335209059 369111794 26965852 922105909 248071548 409111093 210596382 711412544 711381923 995987777 780574494 810156148 238333751 753586930 52394178 512158305 289604679 381249032 161895280 826467835 720279957 981774967 369395453 982196268 300849881 682678466 208405503 208819250 24492955 756336964 425079589 832828405 336547498 974947288 158987704 284338642 28385920 166913274 1832147 172800430 109342389 844979937 159738296 429777312 82565820 933450392 485808499 711187841 161735740 766111032 723314200 985681898 242625000 289290684 31038442 62858368 58366268 657998067 408597443 848426993 770113086 923388750 295017639 479971618 305224741 373668710 150743961 789165436 513323153 857119091 457520199 893970726 169590464 517268657 169109800 419603939 245068316 259047256 27631128 809824154 587885953 784964063 497857383 923011614 243436501 716826974 276604571 400429127 27281730 85264635 33608511 286470772 225516506 679165452 555291946 852539141 650746660 877067412 834934985 975969433 892558307 904368598 443424309 496564834 40925706 374802091 212943241 800412988 390431794 824798266 642279021 849365242 352293039 768477485 764690461 820981727 788647890 949702061 721396163 921148631 526259213 821501365 415117242 840050215 86731973 569098651 548453306 577158811 375202506 820113601 790211972 960610841 31630579 542383001 216144133 503473765 324049801 929486483 355839109 432864527 344702739 582106789 180405005 312196914 234508297 256192419 113931210 332513340 63221942 602374178 214927001 273776985 40354049 530181960 147442772 405930375 351549627 771120410 406060450 599677697 391754887 492149916 446236454 953052176 72681944 167092337 32074713 668315028 292739040 519218734 303166323 564628669 486777176 491338527 81238911 701438912 267804521 600713361 127615308 785921831 717704650 806507662 95692173 841859716 414412418 531970640 428310240 853428607 603988601 740148180 478141632 954621276 760175973 953338250 55806274 830697232 787410014 900701992 735958994 856359439 729457446 773715477 53086341 557017486 410877382 562362901 286513212 659130192 313902312 816622047 764732932 886661190 52365842 698649989 407165635 823497291 357876503 514715345 346694411 724510640 40889901 822740206 318349036 806412924 342539440 660055907 639571514 959705818 761574912 998712506 872870290 955477408 440657316 678868735 318847496 947621543 919784271 920030170 324340062 547542439 497646828 879816774 785235012 935176347 296460449 403823387 55099186 268732329 21173429 692411820 70307085 444960092 232371456 453664728 97287931 824682271 102515163 199250736 61143677 876701169 368175588 720485932 69712890 781395703 248407741 801998957 65285356 742945020 425832612 897748305 622700460 851204277 747545096 934428535 695830503 703499012 69657850 514958572 146510076 543423171 58277445 591822464 313280143 482579616 352475957 799131038 485956033 569713522 490815322 584195825 179799339 335472242 88789621 269296628 263979000 459340506 42935075 777194518 502920232 783740263 73533014 81013977 49640359 150420998 28103295 39075957 18663853 892962210 455449588 553315284 212598751 377181978 44555873 353497768 31345373 273109258 166237382 918208798 21418195 421193907 163691469 482816651 60302664 785752917 515606197 765200548 704370855 947676350 376149578 583574181 278533861 430013995 165895043 441546661 401426338 468192246 165451943 320449973 117174936 139042580 95098542 640109790 268669754 942027951 43531973 154087647 14310583 45851248 12794347 581749625 300905245 741503263 327191525 785423951 520354446 971565220 773590204 983265193 761194764 818287112 566619366 598071224 199760450 936356932 240937231 866409318 859135878 867161796 449848007 591309498 149382389 575259048 201492533 275974062 141126451 175975816 166988755 462308465 292423434 838711024 319238617 860823619 319054680 360711245 65568066 222335138 195202808 689248986 4431317 917184761 624470843 819797028 83954842 313167922 95925836 742694410 358514319 777849057 733736741 903234144 467710698 625816728 606095776 710773429 652328693 975475928 384603439 818853712 769908597 978863817 369651983 603573282 306731050 312529083 129491330 674453963 97041616 493979853 439439799 733034620 456015153 944804249 29823661 359505532 119890894 336044824 230146257 371054879 338841612 795791649 142029661 691370356 200414377 379640107 66344771 434607508 199392864 547733391 450686406 732905279 566988633 615701128 543604780 745356664 44928764 359027650 181103770 192208221 21759112 544457648 57181022 226972964 189640252 654078438 135462525 182477462 46050886 693841822 91124219 496805509 106538164 833648021 241908492 688025416 17380521 369401923 188144755 242489920 7040942 849742888 318456080 851103826 707765858 909527838 586672836 847998831 449662275 907160662 184093804 251738501 166522021 720716843 397620935 764716210 79315717 152960751 38595048 994820707 196703611 675946817 324350009 374906520 219689091 269384206 204870915 818182099 49871750 198694180 110251317 261879362 239537007 566404949 291870415 346871542 158595680 524243363 267510916 806412300 344499475 605361073 390209025 833809987 200416596 425533450 183438207 803206796 12679506 780640569 194594083 350095761 244235751 513165996 301488030 702347265 138184300 424726372 169038257 341997790 234371921 651281541 325769678 484475888 475394722 841496664 756849088 766699894 676918005 802007049 185876219 797296188 389751849 400383395 372715616 553496487 127165887 702704522 586503294 866340352 377410701 482513883 23640028 93841061 83287702 521625901 147467198 855759940 328052231 929717189 427482340 843531363 66312701 147375967 71049607 822178504 736723438 974793424 654849881 770270919 27225646 43154549 21987770 43630775 42734619 81827315 31594583 486446056 6670694 482073235 474458284 972085722 304385893 461253202 362297862 526943700 289784398 497593380 51815586 797836021 783278679 896912558 653753158 827139605 334772852 817997674 603854359 749513367 182811862 942843195 788602845 862344117 167962635 254867174 25383354 226690077 104613910 599976422 444532026 731649294 452510619 456135275 134231723 990802451 670218853 836874328 770907933 807043050 588828464 656826639 272161398 744972175 389347500 552341099 278197708 805527681 647032223 676818522 342415177 589691587 527348082 738325780 126967292 948755502 6470987 658854126 220634443 405666552 66237706 721033185 457147549 576497670 35813597 262745522 108228209 463799479 341823778 698712151 219045213 694993708 541998941 878991185 855054831 858803231 169183615 867491798 91129886 98261928 44906728 266517432 158200815 487898498 157578599 382715197 261801467 956808193 913615067 997281995 489250738 761652829 385816612 942572672 232902720 939631340 647481149 915227366 867078215 987268553 607082223 730561813 186618180 994547179 483984446 866621061 741287352 910744667 83534794 839636044 793821615 863876912 818253453 907604411 775512713 994517642 886583988 988541738 119093129 971474608 945685702 991879384 217234305 657716630 134467401 540606687 448924068 830753797 421232586 847668096 176153417 304075238 301896263 338862744 28519319 960938693 277773129 687311531 594311937 828793974 286913187 835004527 463298501 594274659 272164017 474551498 371914372 694116897 317630689 565798024 539522387 971586096 353950135 876302106 586341817 586678526 458318755 592376476 69004150 463260331 298024973 494994753 436256069 986157013 333929170 786609478 665325314 763976320 226875242 312564561 103722966 791142345 205549652 768713713 739442761 943742541 85366928 508551751 356204298 455775143 427075871 613103704 590866185 861791281 748716737 829246885 713844789 791141660 101556441 348642362 253709496 368436935 140971868 832871339 775741759 954361651 547050178 881842199 723023254 815976350 592405054 827956725 506830533 955033888 180128001 970433253 95974925 268798990 266695854 869764412 762104677 931094294 731245081 901584094 458119601 698804660 245097517 660507334 582533798 893833298 764402468 807203321 31313499 54912026 31743695 960766394 105421755 668411947 477129192 571228277 70175953 204914763 19740036 850627623 527861558 997586319 455757210 682945878 243942002 590035224 499284378 559627790 313231651 882711366 284672358 562147799 271632876 635009548 31321543 957213558 290370336 458303337 370312335 736552155 141058573 908970903 874024294 924346931 505510140 747646560 445609840 937011200 584106792 670496275 590651188 756880141 427950749 913545682 326865786 823560336 504416118 706719698 268930375 364649565 57432756 492240301 100072187 557203575 152574043 967619792 152173426 427971111 388437892 448354459 289275760 859570074 353827427 899287461 755823269 902731579 886805628 903978716 301691059 539876917 513295247 923359954 585456307 895924512 491196688 847003951 57199302 753510352 330707299 818547977 647043649 782598032 730478371 875728721 815094678 870356889 387220255 865674235 25740344 623014662 273376413 414484655 5258331 196124393 24247143 784110643 148035832 788837378 355985699 943292387 234371403 553543469 526859760 930052332 793990011 816293931 614266774 845424427 609742073 787781458 509260481 775096523 475702532 659943158 188392258 493854446 114601729 603679125 523459646 580274311 153595608 737066475 465909919 515783922 181295935 505173395 377133603 651465693 565184057 600512619 253779670 828923760 606786364 701937434 543835402 618025249 167413102 892523420 29530750 318715041 68416736 522624059 261596912 880197329 1217425 222805102 164351721 528712727 280468228 613598763 399888866 926135264 560548973 650520330 454238875 688633941 8435912 907417255 659309771 757127728 309074579 942158068 388478266 796911805 441009336 874731035 444091949 923138019 436643076 447788643 104260808 276509495 127738979 551637455 79502811 716716594 243377437 247390753 120131529 280229147 198575655 363003717 308532402 317090792 139498761 575206081 87942813 219300177 17162645 448900919 121536509 933964694 358188153 905101202 746225868 750794340 2657982 950476701 357231712 984588574 525791743 727287490 603485752 738929737 404847143 729043749 361340175 505423047 32298603 740323790 237043410 837511198 832327795 904300721 499125189 718655434 308989515 956482235 635930801 777144536 246244995 698315253 170755642 992017601 392259779 667461044 89812659 852219964 712366283 813675408 189880477 840577648 811257441 971832834 177035797 820084545 118264681 680369339 149947421 448729331 390275088 399695163 232481314 644417080 261364255 413196050 52325201 608681641 158277465 371492979 304155373 972898079 701988076 706816168 665724335 714934561 638817865 701853858 634823766 860290329 570600854 634920599 622478935 819567244 60166319 117171051 58474287 180936209 160247850 456046783 260279675 816219026 94106074 475014469 209722069 502492333 425184531 679187134 309250643 519946004 8782984 164918099 145063362 647787914 159719672 855325868 739564209 821995120 240512572 918973841 410704119 825916525 509367131 649166463 250724807 768202029 498185705 653830686 103645851 283891155 77213522 884980605 883180461 928230491 393909097 530163430 228475144 403127081 341590171 719347428 313790997 662719672 180777595 961979365 360050273 429450410 192731960 216208891 192973809 983886465 319178170 362305787 148904855 827781765 97940565 335051613 309973660 780137575 58538403 287421633 177246115 718766902 599416147 795442275 290444185 609546461 599627252 898696889 44925973 958632361 854730634 999519219 635634332 656439981 462371733 494079085 33715322 836275714 311343911 549994661 260278378 901119439 225294623 330510855 106468739 858427965 489873110 958556738 748442827 887347165 177986756 391968375 217679483 686962343 271421483 471286224 260800039 385681681 215863614 881272063 53261204 239605374 172105757 615424364 608994971 968385269 922922513 929271019 330329719 996177947 22345269 494188625 166867296 556246217 212733271 754075187 659188697 685054230 659951769 878839724 452501304 823945351 462635842 681302968 549549998 867796299 759556774 990820378 881695353 972862059 187358173 638613163 102523259 848020401 544224764 745339919 59472004 876001408 709583077 928699900 523859218 843958838 30579100 438651747 391425027 757551082 31751382 68805978 14163954 649887695 509611477 782173506 20446495 366449566 128225769 557050744 225671742 533761098 291461294 536502313 517045611 915305945 288327322 360362724 149668402 899630947 735775259 937096931 825343044 965788944 736131836 904697314 619689190 824287766 542600389 895354134 669367701 677599639 252162225 443304692 357331334 682576381 133312678 894315238 477351682 752403685 401844055 685068456 107135025 314459221 14257780 459619165 309647626 906582517 639300423 879864948 661479830 674839739 283782559 438872804 34010335 677078276 262905724 497391929 188248683 730755457 103052067 727052454 239061300 386841061 5076001 187844467 167275580 265783945 109950198 326854638 119618930 281672405 58212037 446365052 156052975 224899599 176444916 187720520 136396100 509058517 259666918 575860476 327516971 731223143 334887087 746353834 512412414 548836227 87346212 615728756 248571959 660760599 84956789 790308501 472943545 897111276 716660211 870626433 625699622 750001920 733505062 804709620 217964017 587867925 279248719 725394537 79587677 728091008 615697916 941422182 390968669 834234079 459365479 712206091 373513029 556418348 307648239 459311864 215410947 580765163 551564749 898327713 293964143 937280536 169809073 734038021 318987762 780581688 669077557 729860876 107538161 488968373 275649149 914002416 204099544 442330205 339526329 640348434 590329353 752115268 590312714 692697153 229885021 883285874 592683212 682854820 634218011 982326004 957608656 959288427 476259007 710259565 579757019 759038007 530777854 604581808 96571354 943008914 567845651 858214206 353460806 353507541 261112243 664520396 14048326 845081517 675725942 886465765 571888822 720479125 557656708 697205226 302601583 758978122 431309674 698484979 91014972 742723707 721193803 847923507 61600994 97610173 72283923 632214705 597473861 633644775 25549741 648077375 544055602 761830186 749747307 799879356 144690362 433378222 124885238 963287052 917658796 968329986 494482406 802842152 196768835 253972800 212485293 665480155 579038720 653579138 310894459 387651166 318573161 386403331 256878533 822545432 716340063 902868953 17063839 419223710 87540899 973669887 886803426 992715771 457499294 890813140 570233745 613321834 140883792 160958082 119730893 308452301 305406713 856758286 388748578 453121735 266895809 576699471 96462604 840346768 797633619 876909692 303036904 840883106 552545515 929112258 773617527 829835689 672431165 696589073 576117535 782184053 748459947 915404386 181665591 384205746 38926339 309620597 123026486 426042217 213611753 311977906 215622119 260639794 36290366 36992301 14987926 717230478 181437652 932402144 285560585 802565923 263858908 390268457 182627095 386388308 300068010 430284303 264365759 392811057 334082448 833099770 360381406 996551395 636404479 816981703 743960382 832715172 42609068 55634437 27276764 139572874 37227557 764406513 274515400 651826028 294592776 848024985 188950664 587058948 575984648 706240093 600850637 834577574 490364665 766283918 379652785 975640500 666384130 793796229 599185571 739493593 515815702 521325341 19468247 565348757 216234303 747539593 331423566 939410539 680213526 861382092 203312906 510657091 126446912 483004395 50152749 895326901 840836280 916710311 862103766 927874876 883880297 908720898 512580914 973903728 443545103 737161298 555848976 797362777 377098030 639620414 188217007 446502170 413734378 523773646 133219805 956308475 125730893 802294898 735467793 782123120 146094034 508375861 404720094 641576773 184037761 276996061 265427410 657833428 371772263 708150352 61246535 206926479 36751470 205922002 57720229 153296858 149603042 668978936 11726416 465560273 97517894 540330548 279615439 764702355 31513709 896316100 385891188 812065991 48035203 298561451 30771690 575265332 246401233 426351541 195961585 683969530 520749258 732066680 714450666 842222151 474935505 709584971 369246962 709606835 441257008 697864762 122887074 944740360 61802483 692572375 230906647 658017599 615511344 999264083 371475662 733608374 329437783 613397623 184102611 899521701 176530348 224716588 54477455 481594814 138647525 850546033 255962133 305871718 114711690 171073405 19347305 51198666 9307869 569303366 285075825 989129903 361725063 738552441 10575963 918261719 74827940 314515099 118233925 794152770 169735516 651445841 339295252 927886243 523759412 684009348 55999509 413622485 351530580 929847312 15908722 384833376 18307880 828601738 767706752 891281620 242516603 819720873 655655090 994543075 368034803 850649698 312646088 401074260 376826167 671619274 382291510 481556418 201364068 249853827 71881985 671914497 366890707 511636309 132010819 321271916 178009891 335695441 68552263 301932723 234873695 923051327 758328578 863203081 725329476 897446020 287475529 836060940 710767363 738697468 103597049 391395919 44575134 250137793 165952211 427409303 112031791 248741794 194116285 793837516 301995917 714001230 26882084 382682090 336089955 722378092 9069608 711750630 167194564 529338714 403606934 812602423 489493781 684885854 348976295 377985455 238120786 334799037 221675081 617504049 209288238 978962605 692336705 833910164 490580258 781926597 345188984 774971679 418525589 576917549 411552081 845013869 768788757 870960253 250540836 927655049 624570891 756458789 230977782 512812606 138470094 790997974 689095558 996573103 591485834 988464640 91747368 838577818 476214869 803834472 413836076 969873891 362001956 596073165 92204819 415609664 380146431 825592354 344068655 596381404 257475064 526320972 116104156 479246359 62127908 376180322 258624472 681994421 72451664 988144189 295734382 614305637 605184940 877233518 655554073 952138756 703757272 808513141 122363069 922924791 171757241 860293203 114462854 423909788 412482807 744073231 532675061 542492910 371998465 914558583 10032827 428670285 342971661 509597639 129005172 374733949 223607464 281656760 205885948 685317834 120825083 729341857 106586544 159702159 155373902 786006779 546317132 906960025 607862244 784434873 642641092 991240276 519578245 974470698 114459817 288366349 242582859 802888692 241274942 676413439 203923586 784080481 568079131 757382402 250411954 447563381 118293630 910587531 63194568 286513523 211348582 968328645 457575854 787197973 309529872 746924912 387902846 393525388 108899764 225003041 146055017 327358300 79739660 300108027 33248318 846784593 234214933 387262458 318797474 391541578 162154213 678408518 26061464 453024152 278168095 525884106 92091984 163936293 151418033 992721510 13659640 457586753 134461169 592042533 219180579 801383418 254675075 655199334 263286900 554195435 196372289 701883838 452362131 655554426 359309117 741879833 636586563 668288657 551807376 779639301 512132348 673067739 226049858 484130164 94639164 151507675 37839655 522005866 200347691 278626027 258831056 531395725 224460389 344315827 338859858 716822747 21752938 669413040 588422796 887846454 349600237 837340964 690326529 712055491 351760711 840483152 568253222 968957773 781856624 963574219 688794238 709550985 699298016 790128410 335293029 701945077 115733838 310588892 185189992 201952966 117108305 542625276 16477859 82284803 49524924 636420278 301246002 854829656 636582597 994244479 334695348 436512685 87368420 155089033 56507126 507773445 194396507 245358764 77154816 925060040 582549164 840372148 318126932 803050287 306737361 651476595 106340621 648165964 565064354 815368938 465746516 858009261 261680120 807764618 67928016 183448822 104213807 166499371 8088797 332431177 117388032 134310375 124949678 167048512 13641329 973920817 463944054 478456657 138411261 300809119 286296586 732613244 93380296 454704612 6918614 687777974 195352737 402347707 24130349 306134335 127685797 138349631 104489327 514542472 99867489 663238245 593076239 903083528 205193047 587072189 514651453 849429590 239447173 927115446 341345488 903056148 562910987 689244415 104582658 622644917 463493250 640844342 134733614 146039588 82135694 941462659 781688698 940091615 618094578 684176938 511865820 941133820 595832640 980651855 834866689 929299899 655053767 872526637 181973908 515809862 460624083 853434957 64990771 568910196 558601581 959710200 887966024 986930634 333357612 977339870 698175514 985310103 577125530 581257618 83410049 910962534 507258215 605748016 514294574 995659210 378877858 834491637 186579606 409360063 29441383 604239365 437189777 447910577 183762168 502008282 353522357 373043407 103967537 846752881 240918077 838104282 38128019 240869105 128732330 931596753 751311152 816017102 147288390 697680349 108458975 540115577 117797380 906018600 656356925 811593978 537489319 625684302 508689258 872344127 832624589 923130674 591116988 627967274 513245100 910348644 207546956 951243704 629614521 983621628 423604751 491191736 449792354 980512699 868983203 981853934 558494789 876395519 591153185 827564508 430154442 890968229 861982443 915704045 97111022 921744550 763767159 845135408 588819079 667095791 476644005 642073826 521934918 861089993 453839365 669663038 662370917 760183780 559575371 798389659 160086365 594147473 375935116 724997371 522541454 558142027 361563566 746476281 548649734 722530143 89242717 904619676 628342037 680517941 570306525 929783333 477536406 845933945 554914238 858760358 695675557 838989430 64179812 705910046 14660644 752157911 342657975 916259016 139691689 220966003 147546427 535988923 364424131 765739668 516414526 985239529 687925905 956185585 543353074 690681213 659556310 915406829 215088929 652455941 527620976 947270851 544515655 675538765 284167778 646941672 50112992 662400599 79768969 379560109 372215533 386082134 188297854 220914084 59264450 948413228 572057533 601136368 515202284 946604430 404927249 761184740 505962835 778744289 439135979 596393133 504307587 847097097 464542868 545322793 223369599 529621551 268350841 439214318 54061554 493375612 71390008 565474374 93869668 948856206 490707631 752994180 548314462 755232653 577878284 890661289 831410782 856509557 839377043 989518411 460622211 869875978 527197595 869645171 813093067 896556573 220167377 484413165 64485843 180533417 158587416 989859599 943701207 990808013 584425499 636815291 560185509 571143002 448677898 902121498 206949782 225815074 192448202 390569360 354260707 514648749 500506408 889414635 439494995 821355429 96321681 123824040 56036842 813895887 808889628 848629155 93886079 589369655 83489364 227380689 181754395 427130896 75432147 563737338 451772028 968775684 491448685 701320581 148086542 162806202 141139126 930938806 282225954 761642288 111292893 459011416 360986475 647200874 495415896 528265149 103875151 635213136 179552004 459713935 73575681 703172184 457722158 717585564 660148069 750839115 37117906 614989235 589026884 710613524 678786926 698290528 494727288 834178896 464723738 872665809 695801593 880362702 669911208 938836070 12500129 284849773 222940843 939567546 405679877 921695144 145640718 169562250 36070620 538333305 197000809 851079004 145319957 245912585 169193438 726937727 171264156 346481557 148505628 415883083 321209700 604560138 17809695 212635317 184181806 744219527 340995352 409041425 107821269 255260445 229615799 461111439 346148077 670893601 1868954 471167019 412146306 641728557 10793359 638649538 61437973 504771440 54366182 276342426 108883633 914921417 826895462 837407988 791050653 950642618 394338255 995600579 402963485 654250465 625267926 908271268 565893096 605576748 371375578 476905334 320455604 890667495 853372544 928114435 344060202 364420227 230532369 401137866 385466078 495111536 25647799 549958088 501730985 578595304 202594549 831658264 297162355 723344285 592524000 653613769 445963521 911759322 751365840 834722552 301371178 886542143 505077015 917641956 224365627 311002796 157437425 473282924 29119668 636053382 42835274 57230037 32054469 730907946 722106765 918440358 592783441 717967268 435428678 576176288 181345253 672368789 291648318 517479633 514984637 756727383 202048123 751573379 240898433 579037782 347830982 415526401 265666106 374312585 304737232 582027234 269728870 842086157 321137075 384209542 65161126 628134532 102586330 883074294 400677062 893167251 749347296 831814636 249530128 471604673 42057887 294196602 77122820 659154967 480110925 768498261 662148012 992925488 954644394 976524018 515952076 909605857 619896316 692365539 656276504 807359166 306672855 498182374 47650085 508684076 346681194 416817429 48032061 891740286 66440017 490302190 250550846 497428579 466162882 790236931 137421316 962111765 499853758 678549515 351981863 386442401 178205341 433589168 414563101 782858457 644461035 799023788 466989959 496482228 174771188 432479204 395039181 456869620 367141923 873651345 737922765 749656526 138496418 826973676 741392483 972656304 899893548 921172083 238720148 899659234 844269214 900664015 108762791 217449890 203204896 724819731 611081402 979808740 343593044 678323280 440014804 444131079 306436400 738769130 145822966 704792508 71354723 486455289 317514356 906474278 460719924 670112748 556363573 707074986 162775566 531296693 124728538 930893881 126154268 521675879 394548678 960518946 804308164 877477434 870601144 883140813 580565349 725359128 319573679 478598767 212979409 724921030 546233367 758151199 605353728 798588972 329684717 417592701 35370823 517956292 371360468 911404086 50278252 123112346 19971600 374977601 147404482 586225346 375784217 817147321 601336075 644212908 51194088 876909928 644937026 811907756 766073349 857898724 679213573 983779256 758783788 897547433 762953780 778705033 442072697 542797912 84829052 778819514 317492511 880723292 463354221 649862990 80982415 736969145 318534439 347532289 297769164 939511655 261104727 610315599 4962509 101986066 91152827 110177475 88171984 600117368 220711871 326325446 155848507 265523408 158336312 323752248 279294300 865303182 188408630 329113750 165886670 333073164 211506162 517785258 218988767 325298342 137745894 703770023 5018950 712269352 240631907 884219057 511626399 589859773 203985320 450819252 130179827 273614727 29091631 706208941 351773947 422867824 216683652 502948591 432755775 662509639 546944267 673461738 517595078 652839050 117847835 678798831 226983499 748810535 17464461 325254256 91295131 938810054 80169811 547534137 406947669 673462665 564163490 592454478 99939384 861418584 667875820 808345433 266824465 433348093 317187699 747435218 273695719 441090999 169455862 205295074 201337172 810730867 793693230 951942994 141961573 880964644 851624150 875632032 625932121 745193394 679929232 856049746 787001938 972330771 785419821 885644732 31962157 472883752 285390394 524874005 204082314 446428111 249624422 358336831 83225639 200472665 83159281 639652897 120914627 580466335 379727986 486183181 182325334 689169286 345751907 991442366 399105865 733954570 123004636 301093074 81577482 567920120 332216059 368873289 368544455 910567919 473204788 479264321 383470642 672550736 268674857 272110588 1056222 861447557 461543688 628791307 345469627 473674965 225298244 761202777 246582094 607595437 574281930 812243304 303093558 453101621 378724700 664936192 76587171 986320711 484011685 565565879 153912426 276926632 191677112 458221440 12396087 487038589 23569185 848922250 628378808 973596897 826299232 972395202 752777475 847923882 173507348 452642060 350291807 449086150 117204048 927610067 747545545 959570794 296174552 935678407 272838646 955008699 612222327 902222800 731733360 742846170 54346588 932405165 768102953 963337455 577760886 610457646 234844338 538453185 463903212 658427531 380059418 882795496 624794633 692633107 386314363 613268578 321073886 943643588 562288740 679319856 48960569 715495642 149444174 996991750 234325840 482814677 59465533 121061441 46274617 801212513 484430620 810842729 363019859 968877516 865343631 885128539 146493954 723828115 209622432 745725275 687060085 773798929 481235544 824732395 367316328 455517422 204017981 947151215 136804515 340740451 220227912 960326206 243928662 948208756 776141858 951435729 213843323 955121945 702362508 955441961 409137781 753141280 676240705 836883751 11064960 867558135 511615248 808414344 752012916 758278784 527911644 906041628 753829520 762076328 479357418 535659366 39036338 276762564 265177056 897988322 404143964 423719849 325167242 653775373 544068560 964118704 838479167 885754483 72746307 734907439 727634583 928891857 100952948 845613942 239100276 440744953 127758415 310399409 37116869 983050297 607074974 834655523 454267008 797942906 750442139 808158677 752423601 899635598 471213152 759531939 495391418 722790916 16098597 636493455 527477061 578665188 82868001 366310743 287317450 672173635 159305184 661700287 580155066 884353292 504229999 837966172 69611012 877241788 94600610 494658287 293048531 464270495 366086541 498784998 66501189 130712419 75418289 461699509 58576808 967327045 274050658 477418179 194760415 637731191 32965167 364799903 50743479 600092889 354556566 601833006 99126914 775403344 203957638 691548452 25064008 646368155 595908561 733166810 643100335 962607484 155592416 718606020 289372937 861244885 18058816 919006966 164879538 484279617 62268551 479459009 286300509 355456906 324454314 701496853 573039153 850197721 298901807 519527359 83674142 125256787 44573143 690221746 167624416 960363715 357018511 834117351 90220776 110639357 58763549 861884666 496795186 968620316 49650892 65997548 11094898 930899324 597786564 934086498 105795166 464496612 101351991 148649719 99777256 902232785 894271830 903203155 384046673 907209268 738589485 752156129 575088762 955965730 824501125 839589408 545671843 849037153 30081311 173785897 50084330 87434073 31152508 596418125 274173005 348630220 187949428 950012162 702692590 791502271 610376485 722356898 386908510 482435446 312372161 395854269 229311099 736584471 60342258 512860179 53890192 885632027 646959568 800282661 83765682 646409348 505087886 738723001 321466161 842901783 339995661 943632012 253495550 463508492 357491864 857602737 227802679 799554882 426104939 814348282 289851650 985119402 198038082 554152970 257114689 406134230 76171893 331993269 309539163 756709261 484770156 746919763 476889480 777501792 464387863 631351597 591445768 946830062 192642093 325139291 242879461 574965121 208830550 743943715 510785610 718651057 22573804 491076270 10927329 992373633 474847146 793046867 39144247 745840860 627492888 919759649 607864822 910119915 343408991 871572263 538473637 686198845 299082181 462868138 124398599 363230843 25577379 927993762 269347804 299250045 185081826 761603168 25076049 588623968 310645889 770766439 312000390 968746436 12935674 20185026 14808703 963315248 802198413 973094089 239934270 392178663 335879173 397649758 166378040 515256845 3055616 897070725 654359434 948296851 696300050 786285698 247387378 471906807 237189740 417335345 335121515 557425904 313336815 456926711 316686222 764178544 655558506 932814651 552978180 832760851 50820846 125325535 50570213 855272837 274515056 305852720 151498991 474988731 276960130 880808487 845757572 928699674 904398256 972976506 92239523 98204996 40589050 594560521 396187975 593041447 215820354 856963358 215189993 393844076 319302484 918311932 480548882 846325798 654692120 807483647 303607375 604584157 190758809 990226011 702231914 883516333 477443198 626543400 596155906 895814325 281594235 341889236 266339359 758234562 629386239 976215684 68790665 904366734 551388791 975808703 473389217 902041593 37853753 278127538 97837159 923015706 822339278 974265925 448045095 553470269 149228313 539756620 134964881 212194338 15584891 954639313 689972132 899267408 635652173 741760892 452527086 519755853 504962583 822759345 670626190 764598167 56966249 119361428 18811502 778930303 436347566 774238593 374386912 951022697 901854546 937697745 547289394 648347148 595314055 702288982 168174730 577209672 537732522 633724366 454579290 859240865 242062274 777806174 680278453 976229996 658209555 806997820 31167716 571280497 552741153 922992422 669601484 958482869 158838478 837129947 75117300 166264520 79827790 557628235 91773434 381982267 244556615 361315838 251718962 643553705 562720334 889384086 537763182 565432017 450663027 943323886 485079307 546381209 105108263 336722293 245418375 629644392 65762939 576931443 530034813 829212810 244418136 929573659 868965779 996181864 751645593 894794550 826043524 996261873 712889561 811400591 502608755 833502152 268901744 740375933 301489026 705525626 628700121 854234036 503540739 852078188 369949455 823775043 237349550 436209191 197792166 498094487 431034211 532781934 133029800 653301105 311223575 921240602 378406527 685634522 668480695 670407200 540102758 804139466 109798063 702498167 585176315 633140554 130088611 616509156 186638520 591912780 336409194 693160581 466014467 830187742 437022172 444553175 228611129 250390453 97121637 221244373 21923608 649375605 451687507 742014019 235410622 473780571 150438647 317593690 300370384 652751395 504871496 874098537 27835525 550627403 8021664 209240399 13511997 852213004 830823236 907214524 159602650 218460750 133652362 172020975 117223321 761403103 714772423 856476256 257546854 580538405 93954484 122892983 9964379 912001634 631807076 653918840 587753654 770607885 13821093 867173336 628626983 897977956 723852440 814136459 560654163 895947908 795771337 827691109 492025929 710609421 335990100 395003657 24973929 597429146 262306969 788629534 112242214 623351133 568819534 631509122 32281979 282438004 220209602 728652183 324135271 869158615 83441198 428437153 749758 81320736 4420769 261662786 177704583 549755950 478854229 948334874 680375256 903909000 138670986 569798014 381472182 918921716 766642409 953610345 166578028 472022129 17407559 126260689 55584703 922952993 113390183 987051079 974257517 991977948 796711476 848885252 85991428 814322385 568428782 904840417 560031161 765957778 179861191 890811305 737712144 754056174 676483055 687453150 448092752 899501719 733041053 963866970 648274714 682083580 547442248 577542531 133717471 762567652 226097446 600655514 26751406 584725255 265916216 839770139 526647854 587814471 395391744 918233773 795387146 966712963 319774647 326676723 212532171 528727148 62068260 363636508 188731625 213201884 18776295 568106991 29965097 268292585 162392994 688882889 293082096 465657754 234557838 828697383 196970633 401973130 21539084 313068473 280280580 305922637 180651159 216623105 85085237 964752856 845307327 852792995 442818235 546295083 193321929 915453857 507606665 802775436 639184146 709027584 82821227 90621404 2641309 668190192 143317643 324186296 63955067 74156310 35917198 611584783 131819248 493756327 85060368 401692702 288892979 797057836 310941080 586991025 323847760 669264707 58084127 127404159 118717160 758223873 497443773 655286012 167843290 872499842 871360821 893183778 79228570 326218508 41345902 64889289 45610323 965214332 288135603 531995767 444055220 973186667 526404908 798476681 761121613 933779589 39804526 732832942 416272072 658010274 494621350 767465488 141372802 525846462 93463711 188228523 4383194 856085561 483610796 859895239 844973025 885858040 859633768 860600185 545052727 726695021 637678667 677855410 226269503 920957497 309240591 694624173 570970458 801981917 451424487 785172943 76000751 400881047 279588024 458646132 437111164 703208825 249981114 514850166 189907571 662840199 169940061 938080218 552290861 669603412 188978621 383159310 35771981 213255916 180125761 874554615 627024343 695174565 113748053 241113901 102957867 627364855 390530255 438181022 417565331 545537607 313772620 580504420 184082444 350458479 71685502 487919021 236853382 738911188 428730986 648045840 20932680 875752616 705349105 826926655 629516631 722498864 37309792 388913779 352152300 813497884 609158884 750926005 33233822 528877209 131850462 873200257 425561479 826432236 180528460 955639372 687465202 833251618 72443672 623684015 45803527 96310190 77426474 465549159 411320541 587142889 581106475 718966074 203702974 264884511 55659028 624127836 35281801 609731245 57980094 292812789 220955541 499985251 192806994 581940180 111964305 877081695 710042855 889752285 193172553 551246471 99419913 413297781 317977459 775591667 695043626 898782815 562550474 880187323 795465890 906513546 76856576 795100046 611435553 833663843 474678387 991996944 291500204 963545064 204653364 832791070 207174478 810302318 390250850 847325230 698622320 907373841 36058769 611312095 472445993 782715103 307975349 772720067 211773855 797988687 728739582 747774517 553358106 809862851 512765148 576142394 18463680 564870104 230275824 468426414 363665575 804155596 273877451 593481119 483951908 838170350 356788246 658675601 436257369 651299159 528552732 765951342 78367040 864328627 124604652 297780939 174898405 202627191 200107610 872590993 14363222 521322946 72721875 570147992 409577461 906275551 720012400 881524409 270148063 983360401 118124744 635320242 302952736 310394279 160986782 247932404 44450565 939472857 287583360 365425209 277238666 442414771 6205050 901878819 480105025 613377178 229522586 718428347 387595577 720612818 139561382 958652423 307753292 325916782 178942912 812218079 11322196 820324597 269256240 902814294 154946577 158888211 44004843 100178463 13144898 330665934 33000934 116922169 53141771 637559084 49874670 324805012 9291787 933200423 160788867 508690648 217186246 472816117 367059057 805486795 54656442 130376084 42731915 888052025 38494741 429572487 410966610 792235295 765515127 796401315 782325340 944655433 128765233 180543389 121348834 863795073 592363945 673771037 362434932 862216708 274570946 309428031 215373513 271828554 177060592 828336764 361327684 550822800 94001269 239902344 62642336 493654029 417918332 609068294 320355000 824558212 12423207 489581813 283053585 991837629 522878992 778106424 339392753 678413858 222949389 309061212 50312136 111102958 59623556 939588813 13996039 854906559 375060104 630382062 238515015 990623943 266900156 689519206 133402816 580590409 434762303 779406824 526766485 675749109 544384744 812163193 326073541 570394280 177751383 458127724 446598859 480889205 351340167 480420225 461382224 839555903 371836484 876675026 502108898 960526210 381848267 762768453 559748179 629853448 87472953 217813411 6860580 289594635 257103276 367272360 12452052 490897085 481323185 959017050 165578557 271767021 165021135 326970118 194240605 397372280 317940815 835680247 564929356 588061000 382219475 581310841 36587980 45159640 22279903 116219217 63260105 556592065 86687087 925762580 746484981 849226444 657296225 906491160 430724991 964870066 458507083 476240668 404513960 618539461 534441325 550519647 459917466 791344181 255790263 446472930 308718526 691387732 376116234 379446590 368768294 895112067 691309675 867031774 144614312 394975112 179390196 533426595 512232580 982366497 587088530 992950762 962696840 989452154 697104849 802781864 161406982 742089473 393606030 898937411 703656603 887155965 517454650 949028646 41528817 198388612 55597229 315221281 167355377 473670785 380837354 724596286 241663747 680044533 319514538 489199414 407376525 498821641 447850623 724113813 261047593 799857987 208534795 888101491 140696048 404418142 314310989 360197704 233586228 968151926 97919089 970463446 802707937 961350201 878904064 974645941 856502548 949162681 623790371 909697841 403064500 749970527 26108007 287885141 186518442 727323438 358273285 969992352 30951359 798866915 529200802 598418176 143726372 630411849 502281006 750351490 311841005 959381431 611744970 713939477 368912506 888381168 657395087 978087598 355152403 517272884 355735350 463644200 12021006 123939211 65348332 411093291 242125873 676447253 278956166 345593963 167466806 948762895 766226381 944078080 282444870 968437107 898023534 995421402 828023333 940354149 410576979 815099260 94740947 111678642 80755558 112694114 109176372 408753691 221342771 257067109 248547866 905718744 456161758 698320466 548248237 848471789 11060787 283309358 273903600 669252925 304056556 328128644 232430615 831224164 73241925 411883586 261748295 470571010 273381604 413550554 216670835 803230847 27827233 734894275 520114421 958924322 332073769 746354316 519420032 767180029 679981096 981487652 231887210 890012013 135802954 174152232 116629682 363398888 152581953 419556653 342287233 757128745 697109900 959245118 598679617 759276798 437921237 537319222 458780744 628728926 60671891 303550076 298129786 340269921 340222852 641044122 110435813 781676999 742153579 754439160 427382016 638292629 203234851 418816233 404063024 512606536 48380417 785297482 173109868 649279717 82915482 472496988 87489146 426225574 218908728 263311906 53501758 392200210 224452570 532537610 378077522 970950317 220364518 742365455 328239155 444416676 414152492 653826577 599856334 983979549 70448701 725530057 671502331 804295122 357201694 385369819 52206420 181091242 118633910 374819800 317299183 434450847 244223550 563517066 369375804 483963293 337648686 826029237 24549900 441235524 23571818 212792278 1106580 318736369 174109961 525281666 335900121 692595044 517675584 689328370 220537232 767849799 246631718 911833703 469736441 734182008 507690845 839624369 771641940 821684556 302748153 608108032 327753792 764852000 285868241 772337779 490741954 869837288 69363241 145745095 113779098 662445754 59609255 437862603 348108838 993170438 542046054 585679803 310792226 880680244 209862673 984619735 945315223 985940965 931897740 958225951 245741769 535036852 437921445 564329424 425357166 571311568 213123478 376959298 42341841 867247953 729428500 819227227 622044144 825387091 771445851 836157600 291323906 376543903 114611689 305622653 30340932 670351039 67368751 503263032 278715923 497870138 479349829 661188473 587975850 818653125 666848856 690332737 309063994 971290505 426189271 458915880 270957559 513326674 391860783 501818642 59760085 67167549 36328178 799963084 626372346 707512894 449697119 912447182 679457507 722822317 658155611 722324227 80623350 820105728 686111252 995241264 832377999 900069753 825317865 829706855 77020279 265447058 154065048 901771846 213625686 837869448 98647446 934611092 682847863 779797572 679293098 797264546 155662770 626107723 580922507 783209701 234482148 880954671 854758561 976607403 204072268 345837168 111893404 448659987 291977494 337593268 38558897 885413729 482975637 942927095 734393865 892136836 217568402 867352016 224240461 360910171 59470751 626538376 122084626 742367173 81791284 568030307 479405335 743082393 236617236 590804615 220881715 426802187 167934860 926307001 75476323 514659513 453060672 781077442 85815777 987361593 54887888 557788275 211372603 943331600 408078629 477096925 273884171 752844253 491785016 848224984 404089665 581996355 27562935 588159244 479709835 702310013 469653571 477246181 249198162 676814486 31184232 669839442 655680164 782024231 268940410 742604830 243975220 276668700 54211689 97024382 39200995 909574256 562934626 700170075 334776947 682750996 459414955 742150229 483630662 952745547 243537585 313718216 90367780 735168155 27586768 415508580 178654581 358765973 49688439 585579607 422418200 660142462 245866812 841891043 437626901 595981001 228609500 874726472 378404285 423334936 29478427 926674898 462785549 818346057 150264564 365853110 157757417 541729027 358526220 671633610 516647931 711873459 162929809 270551340 269321670 441538236 239861980 621761482 27482647 115018505 72952007 856273658 279388113 640286120 437924666 891679811 455771333 900453573 335197724 480340794 282512931 919889021 748968627 932162516 131079885 274032154 239987826 513921102 125241133 344733975 57609345 163391486 47396964 225679298 216481363 680155337 671743184 711217570 40493779 643978841 244374202 483689448 105336665 973102192 389265915 761903803 341551964 387447783 180816322 223003858 127023156 901367063 844168935 978715796 798107646 825321803 525238143 706921651 440221994 664458072 94518545 382274481 206859890 681540142 604005787 738558399 587357935 686705560 131141077 207092297 104950911 799883565 107594526 941485217 81614003 688805373 206436030 613281011 418073919 569594226 494475304 533275142 18392958 951539717 18045068 841706838 655638921 716509498 19333894 831178479 525722307 979323475 490333458 840055998 497490377 573859055 554329277 936672472 199535908 216843045 177601872 339719442 270339023 739256536 291222333 462060878 387321313 736753522 618236185 803594287 618875203 644266645 388864410 557268824 6902245 28812260 5920975 645115290 207061169 354156565 145805336 778608126 749242693 989650280 610141843 965304367 642368467 806403182 409546053 763322671 4006677 573191507 375282176 942602944 501414944 520473103 482830353 545471440 203129285 249056796 172269330 527477121 431092031 626462350 390624499 562527558 202983869 934085180 623187835 721668486 31495798 171117960 55908601 473371204 308479893 909923293 111029540 242233085 230069117 422509170 264299966 809307382 751828063 831283922 317892943 940047380 105552499 436077524 248438729 494630400 278697301 930253601 44872724 154027080 83354465 217647205 166933391 758965415 250550939 783264567 385170913 921275203 691061970 954797669 515486141 646607617 545373983 731362263 404649326 894234095 435410725 892841092 428005927 840870458 29454622 953878157 949187254 951519748 720768604 793958565 355540426 768866157 409616901 941392394 363107362 898779734 692565215 792525832 617779798 927639124 10610215 182642143 5866825 889431148 796778542 868915528 604833896 962474648 21503586 451441436 92554809 146021170 31608694 132738612 80264563 115718827 16122819 814478705 427667536 930051904 515486376 739675263 40847517 330663462 128176709 974541496 39507416 827108219 721883612 872850838 186849102 536049033 243462753 911000700 849470277 933190328 356368605 534624279 1975218 900669620 851572804 940710585 79287300 429338983 313257536 850227149 847738856 887276347 688945434 974729420 841129212 869947879 679946819 999498877 503040351 877986029 39992570 487031582 336301473 768434229 221297201 632921116 337844412 909441005 876444152 893401728 384848664 646352912 208149557 501248151 57771396 416119915 133962718 206778028 43360092 844366281 603118881 643953714 427371346 746007872 623365049 682001940 348848567 788358822 121608709 732384787 80650702 944486820 872488882 914535232 704566234 938431305 364317728 577563982 89127575 316894973 200337760 832312209 688067535 807723559 108765229 486452944 268636799 291966339 151537359 705378185 607746569 766454789 437019333 536821726 214129089 773045691 13097886 290610665 207904346 253765786 158392379 574921975 277523699 422195061 206111424 308053994 246629374 630117484 177772655 624131367 13794948 213531099 193691551 977141235 479977420 669049674 47800118 93974078 12296779 209328203 70599055 731695745 456395397 782056649 596543585 751378187 399200778 836101861 125781818 583964953 35493702 448327881 234537176 298449068 235675178 487299068 107282414 864039023 22132587 755160217 673023154 710788317 464559179 819526376 569237209 725779374 520936765 699098201 571608147 649141266 469935534 721686469 487411045 509263071 366803469 720823301 715524321 914362616 697798844 836736188 119958583 239211818 129868134 153274114 29440786 775975359 733132074 963077019 448661372 855022381 723481963 740577067 682394486 999587508 370114953 461373328 16931886 983792519 554706215 847123850 161877613 535252634 196145013 672991946 152352275 890573564 782690128 925366181 862163721 975224910 59191643 637492471 296703546 748446330 36600367 926066242 828241133 973982017 929753557 988764580 329372849 970556612 479973428 568958660 387955125 788260595 595208547 831988013 700902343 943483976 130936006 897480094 658450255 983702503 773535391 872909741 421461546 716082702 31020885 442317402 146428006 285808528 210145620 425114898 270939171 402562953 293849511 948256510 740048261 755730592 716313684 969459561 632627003 989667981 288212732 326499331 125927759 285533161 93978471 242134175 13090889 650192149 562031157 799675590 56190605 168743048 50869137 853392523 495206905 618708005 110607138 403835797 293554370 617770078 600339962 870876732 57914784 985608097 395927520 522093064 412314201 886568286 206705901 759173221 756765085 806829618 573031074 942702979 334037314 440472491 425931432 503129006 373374819 791755302 205512642 555519587 106898012 403367348 246441917 925676422 474863852 790869261 245296447 869533479 221319691 422797726 54576212 698752607 645166851 900507466 624379429 677727601 629981924 865168335 513348952 581818207 508668736 528708572 215098848 558599829 158769967 314076613 159606314 775604910 660063110 839555718 491898838 695130388 122840822 907321728 402774284 851489215 69522690 973509604 584704512 866434675 64482764 904216014 707073805 796305732 591766655 659625914 530362062 549763976 433282234 524552632 678853 427216231 179103598 948295602 924245793 996928701 292749901 800177535 61224149 834794919 90201188 810825537 560091732 602607824 444828813 838484526 338863815 801638491 347676706 495561845 342631921 381890408 278753406 704898756 588300167 640429536 631661591 871041057 322475634 748164515 198020887 980020728 942577668 972861868 119748625 560886185 433066233 642112340 51278449 362427556 39918716 797765218 305897438 783291556 94587283 524507600 367814638 702558540 409164750 739676780 596151195 859914121 732738444 759915010 592031301 715390814 82589127 996038587 884410059 910759455 898029641 952523965 227399007 886241601 292462130 942694187 868059438 979270607 507210736 556319270 173233360 424661536 363143999 955148868 152457520 307446965 68887324 785748757 462617425 789041669 78811517 471560010 296171479 495646334 495429128 893133153 307727831 783381366 775545485 863316708 809231773 824114873 218841798 486375057 30205018 764392234 464104194 875231511 176159668 510971107 34470554 166755591 80905476 670753426 39921426 210826067 69003274 466510292 305842404 507767242 26459693 789447391 220109934 850355921 571516820 892575858 12111656 890432055 36293563 197326475 128496682 836363722 60608268 351417248 98982704 266033740 197767878 321883341 268894731 779032970 436780839 899538721 350876708 836651331 671679590 721750214 465535911 658747687 618537805 738062184 354112135 544229624 217656154 596152596 97400965 339772218 198936291 974800176 66815957 233199160 114673907 206964021 131105993 353148616 103924491 541511742 95231397 742949373 549265954 640380503 530216296 682089596 151268426 287730469 246477777 994378301 299057539 779484124 658466390 966472731 304669079 680089785 415852715 732915172 513960347 923893720 175733727 387521178 246106447 770635755 55216459 238628463 1355458 237477149 121030429 785972836 426787472 925665712 701095733 993652803 424174839 505083773 227402410 976317195 120874852 909496193 362206205 420917053 103683724 875782144 314170654 800373541 261266136 323480919 151777402 740420716 707268601 935319982 492893296 775387925 171243585 210274509 105096393 439217377 330762569 360956588 338555344 730673566 194327414 923702412 41844682 138938712 69770974 785254659 379767326 735451686 639891203 819070100 310358130 980167009 465444005 680345482 278656797 815327053 493572290 838214629 141028633 654930209 641325811 737080544 157815839 819843955 294643013 911195059 266529916 286578044 241534281 715886099 92384289 466369130 330330952 911450503 320233698 725447114 570365643 837002936 668340232 960683417 90727989 306614188 196498741 948952549 740451232 995602425 160789739 206792945 122227109 790633276 149796608 952801184 520683541 558914310 224342738 923552465 545455336 867744390 481577484 720338756 700317081 746655515 614497213 760717222 52424677 139245035 136251216 291200109 150755340 321691117 194854511 793125658 611497607 936868257 75719313 331389390 154411515 403533404 255909641 764252752 350794260 679757631 432405388 484035272 396531237 774006101 621038884 836668725 396522448 665979852 448915616 942171573 688228835 693154499 303637603 468349532 362275843 367437696 135677321 444380837 86965702 922034294 386766845 858797496 116720106 210414175 106598820 653756738 509417915 593591088 222067248 635074100 243584658 796447829 388683408 584813723 273977577 752925598 568550423 697008992 297052336 887681501 3906703 407511077 46285528 314395740 84049305 104708980 90697534 95801325 16836377 749327038 519508373 991685307 963696438 995884905 705440400 813875539 745057869 748048375 143866772 518261728 141263542 519867451 298721561 996321730 860086951 885833010 770281014 909327643 238740274 637570834 219334963 743295198 726723865 769412791 177774912 178968141 14472678 180485606 70131724 112794243 37317358 896842939 122753761 956284813 61681102 418369419 22198076 746652703 487328572 808492915 480317240 787925182 651718123 931619528 698247561 772634036 205548519 843009895 673538386 938420814 544210972 821767843 514367642 802457446 387721497 748212301 602251358 769159937 419818375 695679919 645359548 828574666 723688571 968517574 455415386 741973804 4932199 869442286 726880873 953861769 36549780 941838092 711854593 788938690 14361068 793986044 646990879 936092670 895948162 905547647 244587414 459821790 87191988 995156316 367702213 662570945 322589231 408066269 275779641 889425977 586892727 712624631 504023780 983069115 797100629 842095100 43627732 631660802 139411827 624968675 226624431 417274655 90921391 291220641 175162317 621370093 44633383 65540000 16232268 846715001 165057210 434900505 329829938 464607170 214114387 696704311 601633428 879071059 753147330 879856675 230295056 439102420 28383002 948024241 591003136 597035260 132194851 983741482 515545793 677679686 134052093 416186812 50607417 921437690 415603084 587612920 11708492 54065564 7800872 636475043 222784633 729814188 150489531 183282621 71473141 719201342 173812021 970418253 958145947 971148955 367948948 419823203 151310544 582458307 144662573 303936402 165669121 493622717 419330201 924622294 221182138 631145969 298306747 916666557 863548529 947280043 908832811 973046014 588323492 982351931 335581610 691181816 670900945 817531014 655384490 821627434 342686329 928790172 23039063 530155335 131362549 484803858 353363961 793022242 6859879 769471304 434942176 466415136 329763951 775404032 466127222 860931050 302301801 947278139 414735135 719906591 234635443 722377328 426902683 964357558 544441341 806572375 90443212 271564966 261763021 760209632 638439129 933948423 215059078 542745089 463098925 627766228 423603688 457390726 172968268 356555645 95444504 818081452 136824811 477213055 81443895 779225950 339026861 794080391 762734927 955672655 473862421 851932083 184003746 407504984 111579767 660927486 521798844 671039897 17591730 625307839 122432643 479943054 453280919 680423130 590644738 888839279 233302841 399185259 17714144 999497178 980289916 989168033 896387479 905329031 741537939 896938824 149542603 760363731 276601407 369589064 94315999 102412632 17160874 284011332 180458946 296656750 286110012 348665938 144496431 543217944 163156683 472901904 21725266 453348270 390191970 923157709 688875480 721726509 696514626 896412452 389603344 648514770 205302031 662686698 165734434 972024118 575630947 763684383 636882417 982752531 849808467 959256653 390642175 407892885 331843891 736648863 287502927 332844481 302802017 595915828 342882198 786756473 426048597 444435765 217779908 786047655 264045988 637959266 618655012 669407240 597105397 772964961 364502160 748211348 66686807 833324306 475363596 631669719 375560086 716683835 404565267 840403577 195945329 475068680 169779415 464477512 86701229 862725510 225563418 718539452 459214301 781233580 55874983 217497530 8459997 532769346 189175804 895544062 155373418 793538399 181541412 323686788 225433058 523395171 67597615 550476727 303941027 352961897 217279925 780537025 186059650 844668941 281753721 597736940 90781897 811615111 485324511 806313254 165188737 909032102 209795431 274860962 49504944 390821732 22215620 714530033 537266980 561197904 50197480 69715865 39336826 829416834 212731785 940224697 896514623 983634270 564983775 813118216 753895593 761401761 117541973 699681457 42734226 775951073 260541202 767286597 107006573 234696043 42514520 454345068 148999231 946136356 238648524 515072775 138608546 358193225 72163369 133538651 8129993 122656117 47522231 359008851 148746466 497162396 17985614 469372584 90935518 803930955 251058100 759937232 663550857 833877966 334452610 574012140 177703496 866056828 343337519 955996317 632073603 815667762 65958875 677325588 628907631 806499509 221481641 738203909 262682006 515406026 97005452 294600587 935468 130354353 31514607 714318017 16548008 759811031 421548978 525504337 459637386 642482022 314798318 604022358 435528070 941298542 467792605 854958815 353263054 973477352 626937267 965558156 137486616 847932916 387325998 696459388 650978096 774875795 476915279 648002359 336373032 648997293 90105251 300283772 123760567 894869616 23050716 392730911 86000166 425154393 64368164 921052064 546711682 765981676 691867315 851548346 189828792 530157122 366055164 798653195 602101270 827775846 671955398 834094667 22922142 335961612 83883918 224239992 107491097 964918199 436425486 894677154 552183242 799820659 391938234 500322566 19543440 850036636 279524991 327990280 247522217 957222290 488723474 875809285 478439945 954420227 530316402 956052040 373259201 520373375 471321287 705949055 481137214 553908200 76174229 202943069 73957844 245731315 192365546 668270177 57400720 256034536 205418569 483531767 412644341 694719805 33248491 589494707 21576014 955560096 738083763 810452691 734839940 782468827 119349864 946914650 790239935 849790292 664626685 964820152 459920166 684834752 580593823 603850744 575001509 990001349 325754357 697933644 130597165 837092900 190602461 825864725 612583267 948723135 225681410 324353658 321798159 468136109 310610727 652970253 136046256 964641264 725091232 870565935 579656977 985584200 438649658 751797351 75736742 896703219 163653242 886855007 467219595 855507308 509732946 660795174 429727249 737462425 556130939 652872754 55645601 797399587 703349009 825012536 131299837 547542789 523325438 969653460 158576058 545044344 459012199 544127379 392035145 898624742 583357015 585565828 343963170 912956438 128383915 779090648 1909735 631063086 134808328 947893350 487427130 752085798 285305252 394553587 32948903 734696772 101216979 553244648 269898732 339748577 294440631 386737715 59087750 361783683 104717711 443416882 372679311 580345790 496378839 977472324 690729185 781649655 69884679 112333744 22550727 983945545 740500775 849009706 307849355 905542879 694359275 845774120 123437957 185025494 112127658 693764821 351772257 491769455 98220110 819941888 721838782 974791774 761853745 805260433 390431457 744223496 131983167 560268667 499624299 968494610 573912003 890304070 609022845 610870190 335563277 693167487 652390787 937575558 416719082 696283174 112768380 644506992 206824993 681974100 30941995 763711551 177934040 715533992 483130412 888493630 880299696 916215587 231791447 390723689 205475123 935611186 878437975 933549320 818374967 908985435 779034787 958271226 239403311 618030688 378533067 494514553 311904880 780619932 583564036 609604323 189920814 520271662 79603396 966914467 707429206 985564735 651634444 696154650 301716088 762209817 186639591 409534352 222958214 660080828 148032664 154181201 77887097 704401923 336494706 998403399 579254271 901563801 749076373 849267383 740440153 952974757 41243494 832184400 735910625 980096427 599180671 605472923 351728948 404960948 240012192 424949890 14670744 977388411 589318006 668969728 12359433 840626193 97128612 281077282 105166165 746851118 665951378 687600221 206183120 638626613 250214671 623288527 467139515 483890573 364569666 612141790 340718701 659988374 583265761 837922678 480058115 482052259 388734509 700815951 413575699 511617081 211474985 646074634 103052398 951226209 346723346 520082492 81446821 424887272 100467630 792978081 128267357 760565999 617945954 830942356 165559210 687605752 639676898 941099853 62937004 631098782 134483909 673342807 670090502 970200329 230996048 242017835 181112355 932958657 407686254 952301900 435590106 615439404 521838868 908808223 396292093 936436957 201959504 232277093 102490105 199500391 175830812 450001349 410181593 973684188 116800341 947803452 101879114 504241220 367798650 432433504 159716420 541692721 531546499 613362140 588241963 972452985 961653896 969260350 698518916 855304979 165053016 686849941 419120284 933589778 728292926 761868886 262665883 539170325 145630899 455834972 420090651 729467330 495522161 786930320 649321398 756788760 77368870 157338417 12212384 425610595 174720032 181560360 124667212 296986311 192335450 604079733 98930834 412742193 227102666 868860455 686826829 938683211 936243791 959849444 23212962 706048268 304627581 981826255 292920363 820669256 474070191 999223009 636453114 774680888 493627821 837497357 317896563 830759412 279440661 743625462 74351758 440396909 261867201 598554911 571188244 871817937 418727657 682995346 201564214 847477299 3213194 312541001 219136087 769828131 55417574 148750540 118111169 526789796 274781551 861203017 690212140 719600147 438988976 609665182 499708377 969809602 836367254 847063786 442113215 820378786 588408397 803859032 695267729 912348629 100614961 707612056 284846487 401616230 258742135 989841852 790318939 867943869 342203959 669125319 491482443 776364875 313541789 708790327 177790860 405387406 21093693 296716071 226116761 951967885 698784319 816722198 337992013 369462697 267778534 505889386 19324247 124419020 69833948 260577404 99595223 359329353 337932079 506491131 112598554 818197771 277491044 924550376 51630653 293637801 143543380 594458391 401088481 688114302 676078843 759656405 405384422 948311546 402325390 460810527 314186224 996218978 892913456 983304061 931659112 946247260 702210036 901719004 803963974 944729812 55678040 678978684 570274373 681215966 680386918 720968217 455540642 773311070 228238135 988903642 451579923 523706689 202475229 471618590 43060486 986227724 81776985 746558704 634734284 842653418 573796714 756649593 95250375 932507083 432781588 809405936 722474959 832715846 818320705 864751186 200463933 732343254 222907051 408475014 154017783 865998473 819563447 901605810 581330055 822807250 716595113 965000974 608102881 755875203 353171375 836190220 179394956 187783192 71408904 310345952 286210269 996693244 698112410 899687263 826347769 989169522 678343662 963562602 308367306 479080326 312142062 733976971 500099153 651481983 342495140 711285009 500266533 890965442 69493750 603784080 479296460 759709820 656374764 905847057 149069837 819229402 426545131 860994040 799358724 853180979 9402033 415024624 107718177 579496145 343951979 519232645 235657379 914739467 515227060 712853486 118082453 228334628 91493286 242615557 73604003 292121696 156133467 262318689 137776982 916206020 396927529 422407655 253221400 705377243 521342235 790845402 401814700 595035046 321681288 908185259 884601770 888342338 76277845 471002153 162924911 610104355 151074718 233622505 107565724 774256064 710607090 719011898 390118128 631000893 158893656 335505948 210677332 216459124 215273928 579573928 188296266 782918289 373889350 548422063 107561755 891046170 859243457 878958695 356360494 407083763 394948540 871541827 616432823 626693925 353507153 359947220 86167886 818882238 767700433 845070107 65720465 974697474 351468322 674959006 44911478 565070219 519827489 542399368 373467148 404479685 50138982 255492665 162430458 870517736 600433194 863473870 653259466 983188436 965241040 981481434 585453488 909263328 459781142 797542191 252351474 827095902 298907666 647429727 637119035 799120439 250892442 800329004 288016357 931272971 355113827 616115991 136603026 282916444 83943932 250620429 21999625 649560288 516247317 762399382 198429141 300288988 150984540 997137380 52823333 664196010 2574089 433658993 116818034 341246759 252619884 318875648 120951286 860282724 418250353 702716278 246090031 987480367 838949874 993200354 751562249 969274796 878133625 964240653 344248266 529530985 185672332 860928828 587904442 837656384 576298739 705738106 221115752 245799783 60170442 406644329 139828416 518798421 16254471 138236039 77461802 954615253 764816249 893157031 416878095 837166817 370082571 549310222 502218820 713648857 603919927 705884652 652335770 958394356 180994042 428248742 97376891 554814620 94963073 263476891 249545336 402450640 239862404 804578841 609373911 908805184 551386005 967653379 808473995 830143506 474832390 736197967 408729865 458529928 178855286 335382911 284543730 524324689 502775790 958662675 370921400 667903201 445256999 899063857 842608041 843072652 42028974 585083018 559342725 994110014 801871681 970377370 454883860 842839645 268664399 717182439 498714239 827088123 786408834 802510501 304166425 687052084 456920960 459400948 446195559 907786781 1643680 882250546 834012754 853338785 548498821 959521829 538489785 643029488 180607595 910551456 595329875 627775549 284665049 460645932 102768477 696276946 651621728 937670850 167411530 797296439 601533936 663235214 366559363 653457193 587015553 701277421 370744952 515278298 321685337 719123119 583505225 792098530 477130132 976271325 489083226 763079671 280362939 517197955 414617115 783381242 628328662 804299628 723441061 734548545 346557422 478740588 37766907 550817568 331363842 886766240 648588365 898252371 115021261 741602766 534976272 880857599 117632323 163022800 122516493 911479690 477672390 809320187 370744114 867146470 294219616 753335528 523473778 860534584 806412662 957648649 834187504 959974145 846352243 863840313 449111807 688418062 688231200 917604001 472878532 695602601 143391451 245568726 199789680 978202089 344574782 655606670 617068099 802833686 518789420 975581495 285155046 651599896 360715116 680034692 271873333 476959219 337103138 780176806 435386933 889942988 94640778 167177601 25093264 215556953 117412351 918960907 729495828 852194042 536852183 926851574 408128563 676733523 347820544 615401492 43230363 108338851 53459006 414301370 333220565 839042519 751563024 902248172 583240535 899396146 373495907 868974314 612100973 863635574 82744704 798905700 611108544 879037703 845435001 909576304 835120658 856047053 351623920 366134566 28848482 348335458 97253445 467405364 68742413 361525588 123931653 690061541 466390053 510262084 192318265 355869182 212049684 926777523 85160570 811361297 483793572 680656292 200837392 515892900 313241134 572863431 280236920 323217007 83595650 832223359 579007613 856129375 706600038 888851011 188050074 865918277 745154752 962273654 155613583 836756261 53168334 347063591 62644823 261221045 259587906 806238579 596900839 906227672 510950413 665525049 350198221 476816361 164739649 749612355 370079332 400588365 286224280 794957601 538892296 833596783 356433618 727515469 395300391 995214592 298416297 666387289 425633589 628819194 449414138 833973969 234810111 958624095 772189666 898556822 144456341 998805214 663690274 981040639 857447823 883227952 146097368 953833202 725206631 859776409 124726064 757479595 474465486 733725415 90395798 691644700 322834973 587079036 164756529 653233432 499029791 516845395 287833486 365915829 42473112 84887227 30355893 235356889 188735178 383831009 190358941 919190434 489136924 852283249 607527838 932383775 20331828 459072301 263603820 953583733 311615583 888136452 462166175 850146135 297779637 692153445 610495967 687957006 679266434 801933228 3654489 64057977 34171558 372870749 132148435 578283676 515834327 693451056 187918580 786013400 352632275 523457719 500872943 824045645 496679371 610851483 325095537 952186471 39051580 243244064 63934440 513641465 36930969 128270996 23659447 654680605 251588290 277913549 132697800 354470533 99527408 697468503 585140226 972108279 151830654 339923461 116499123 700171449 237921235 474598409 46876902 841594562 254279590 982570155 354040777 481495066 447075271 904298598 790783346 810944730 163912523 924727255 769071287 934881335 864972530 903926464 326359118 869893319 518886979 752501263 737651105 866425037 653952508 931890835 871938394 958890139 121525440 407759748 87444656 739575236 555399294 736339295 611587520 714443953 536079259 923176762 453750643 662578151 446204406 719888846 194731823 414393815 344466103 472716364 323782259 471625198 38710816 599780000 406441013 864804567 616167990 775949389 618930453 846411683 594449469 939736962 697198648 736176225 233249962 862331387 159694805 689548685 674810343 822657869 22316074 494547200 226780574 439233164 155824987 963907715 332881618 669861335 526430844 658187316 285607729 292241979 42624566 174462745 101754451 227268442 13774773 774941632 382571546 638575163 269537632 769899892 334910546 753397606 199518458 205785581 25457310 179108007 128816749 393945434 275639588 706306110 237484344 321897775 173170585 656534602 26828524 156946636 139823304 663179181 505226033 547593734 103797441 279511320 262397696 939606420 189784529 671962149 609973318 613879534 425009289 731448985 86857407 798571602 472307428 504463983 181927055 495429991 410358844 746778180 397741228 669615771 518033571 627109511 368374022 797099404 449511458 976757374 870421682 990485068 925553915 990984916 982314575 991200082 775200939 822410829 567007139 870807106 719830471 785103182 752857903 777035584 469207538 713369095 526683139 667903709 619833873 778690478 93144480 635892324 496472614 967062936 351772913 921008654 477295498 821416025 470846172 863340852 216664805 732540244 72664753 383857401 57182412 758882071 669448500 730930593 48802615 764532518 543171014 696201076 608450808 962880731 461341660 476877857 411721078 838402652 406230914 487184060 355465880 799172686 692126541 882367160 843921428 868778656 536289184 576486353 26996451 293685278 121147733 496425080 45577563 244930930 152651340 848130768 193825873 935552914 637187740 682218696 205239979 247193532 115013833 386324229 197289014 627977318 606718525 673252334 320811502 761790164 522083265 524272195 412336196 810495527 249133086 928625054 879334151 940273891 649396012 973705502 611041530 981173055 920271198 932679579 187176201 612198992 196054746 864005309 529164612 640269275 130431366 614072595 552317151 760209739 369929319 395875223 165522217 857884677 69857722 431255268 112381316 303944759 61561477 865100028 52071496 526930383 286697397 750689947 424213218 550227338 576508 749621237 288189743 867332834 662872308 761191150 304702033 908922546 412650503 761292014 385665125 788747587 577509488 597276392 595656085 821305552 598275458 670785812 423485261 870789864 312060972 806170540 491498782 936575207 828587435 982885236 396303672 416986945 262030698 722449534 584554856 757866135 543194726 833818734 369174751 767933268 48516852 612316750 273450450 374545830 50995620 700369086 260579402 648844028 504841013 506358857 230547357 747814644 586753641 809175741 549014423 662051739 550015744 557734754 406559973 894940803 453353272 672678299 560326504 613684999 318385200 971735519 742372761 928475741 590974393 607677090 21613068 75260131 41100498 60871217 60483685 855914829 164411131 411612569 15280234 454038853 67580358 632402131 593297721 747297491 653665539 783535472 656144213 692743991 655775350 770577559 380061740 668648551 71129805 984422073 889658119 957579439 785985886 881213641 729322143 955609970 138686388 204222905 99892699 968879840 955604629 959916166 703164458 985518533 927668892 933201138 35342026 941633248 120551110 435264898 277760600 337258543 114991130 145079115 1183405 353124162 243416536 639905590 278940959 907544115 576476250 605674566 401573422 903309909 708258160 783582279 384154282 618962524 434784415 861234490 297323829 316617997 272931199 924428910 257375206 282364258 246570406 859830249 222852535 777749549 735138191 830380581 669151320 691268452 195614178 709118039 384562668 684376276 444042874 861994514 221510952 324403254 28465425 309732840 254660732 833993010 331053313 455989687 122048290 154738642 57010063 723317259 81089232 665111219 525625398 753443709 669753007 742508588 288650590 380545460 182589442 941758927 400228818 932611633 717170298 988747935 505482790 962195104 217305590 858468084 214336063 520893253 106857457 655714588 404326585 934567338 679785371 801299171 431366409 605311450 330874201 900296990 472779455 657380376 433972899 771284034 370676487 730779095 401152492 797938128 645134016 654150128 437985325 862754285 817292305 844606976 356525461 480209360 400551302 566995444 439176502 553993845 15411317 779194453 154373282 455643124 418075894 594100025 199647188 793134250 113927904 792791706 39466975 548303387 375162747 764329245 354020757 484359843 393922794 886298891 224154743 790109885 431172789 473132277 141150667 199810524 173507558 546915688 135085791 394741584 125713614 954027146 218428595 376200223 191462116 967714970 472149308 654019480 84206052 689405301 649382909 934787406 116759286 683544494 20274686 473607758 138738436 425505963 69129148 757947534 87597462 473228037 196257015 785510656 175879427 929150478 428362916 609253977 140132966 644564018 539962580 930495947 399646374 667772727 617492158 848532220 410559115 517040462 40625257 858792905 762013510 882491298 237749012 886578608 657932328 997366471 489572452 527515599 205540689 771487633 518641720 993100675 676143691 957512134 288236097 812437391 788359761 923525083 539228789 750373621 43813147 766943233 639817116 935973176 551318061 924713719 781893469 946517725 411090972 818861841 439988970 983219567 358164215 358334408 36653370 72519490 13408741 926977485 44460496 304026342 49059222 767205762 696768131 841805198 321047707 638733415 570802228 616502278 509869207 683082896 415625032 587436030 95854623 729409190 46679854 673591141 277567018 502970937 277780026 365510681 68671973 525594650 147607744 206466721 120525990 480199498 244623353 758064864 472061268 616444002 525320670 748744864 61837063 588347061 227451554 394626689 366376229 884039245 420230339 799621132 198318938 735590825 400240398 827454100 736256255 922391431 348834237 895903938 751638580 897391480 77006830 711391076 647808479 947010541 613001376 680123712 85413773 923342334 419595937 449489077 116210821 298080257 193633318 570791684 466356416 880791204 210872825 805166221 751938216 948969357 426777607 967845503 434286612 717390120 659398132 730857065 40228253 253472784 107585769 415880049 316252673 716449585 244339338 367802604 224351625 894247200 351816963 833694423 34204310 58563035 56100354 420666944 264818031 795952704 330544473 593664653 490836452 498233489 359298103 527288238 417152342 586899539 559155125 821778414 707204574 931535511 789619696 952314310 268366823 939746794 860990427 863685618 709227308 936574017 673584948 722521795 544136160 614004957 431567136 904391124 176296297 647233090 530121448 586413938 396299261 870302839 430281384 894236198 320131213 843750964 700381412 990709054 914229957 915709417 524333883 896574972 133801324 481222588 376449486 898745136 654605238 899012956 549131234 965573948 905930713 932527254 502205171 693787180 440465889 708360321 698176928 822241037 552469512 977964190 763618332 770513563 141522571 382851580 105952814 487529031 133750309 904978133 846868958 939518896 392266709 995905810 451173129 809292392 395467929 957325727 397422526 896202327 368477042 894924188 754674646 793630968 362216768 673148917 475220529 810389078 336568398 501326936 153137998 901107186 845990238 951315079 807920442 965856199 521632903 545472102 187340482 908619225 773181733 950721210 558761067 831881227 400568 504274646 364537695 825298131 417436699 549781743 225417638 324420758 224106489 752030119 541326848 871806833 387146261 783809856 408424183 486217962 8472096 797475544 203327918 827858717 106823483 257233150 69311643 594738898 53481955 567055264 168376993 890467005 819323824 839978308 539608131 947700833 932644044 970937436 477494831 917298137 866024218 924326285 284113743 969186482 260392971 367460510 192884855 250678594 100390965 487282434 26567195 746835424 560700334 744352952 602389345 925300985 752846055 981907228 251476529 996895240 708735118 771324302 467863289 730721968 212953578 703085948 83301374 653311282 203437876 564446723 482697160 484779563 405093155 741579121 470286356 885644636 364737693 365996841 132479995 194610496 171871931 574116312 227409909 788858897 332710907 859533394 846428321 927291249 351903135 769910016 167319207 970146533 849690759 997476749 528973307 631767930 190600009 721280711 20005428 944224371 531632684 781412562 718635002 807050272 278586152 410209080 256162825 620138693 281025831 510093603 160450988 248003671 218134660 797601403 651663739 956871145 763653264 932350945 691888719 903504036 225405410 778995035 181137710 669961441 593722587 788890145 237551349 663141528 493601780 726775178 60921303 383310824 362966213 480126862 163202443 755310285 469033202 497886576 79854647 607823937 472634600 844064966 195300456 782975295 598786946 873790690 394400117 837754223 726636570 954048364 878702486 974260014 58507422 695191026 626864408 714119861 531152307 946858901 369084996 834936345 295720313 789807010 733262549 867398996 668464041 708133545 420032846 625042863 381637383 863460293 36619135 178524698 129403747 990339692 455402336 705292685 275539938 964341595 235382148 593154315 585391881 634882922 269963429 692659266 399769980 689798897 653702177 814362428 638165880 656021664 18714290 349695355 215674773 895222206 831922997 953384552 728641536 962484763 775837530 931760589 429245243 916348574 831186082 888248610 293270587 463212091 135639314 450429900 382809034 424038564 366460721 434501843 141286037 144324569 97051190 164317691 96296144 388597660 95604232 629680257 14863203 95817314 30868999 283049172 49102159 378565165 194739533 562223512 60192824 545396870 81234340 99268568 14985730 439147005 432034832 842598625 112598147 849582395 248748727 371542225 119297582 255411312 149687464 980741726 560740 340227070 298106439 951366342 391002533 886787494 277733749 732501883 296933211 829289695 483622298 687152963 219239611 763887213 131648413 876466379 371977089 548538759 8197035 291187720 182304069 752313511 153422969 621688714 417634990 814518355 793870663 976178448 106835295 416310892 336373459 862496857 304671372 742871497 397122068 874175829 427921124 846899034 482254002 830429597 248123083 282013987 132014356 701292658 506187030 769871440 680951569 793124268 625416100 973874200 147182249 687868763 546514028 775355325 44432182 251204081 247852685 956883893 346529794 469289652 196046924 596768751 67363157 747685313 247673972 284718818 144466579 979883499 885233106 960259373 84610225 179469732 78124760 169602568 33076073 184636430 18447946 983074252 104550110 147214495 34373021 160400843 64397372 660513672 125418586 342970675 1848892 936294007 540462947 728614591 610117021 989929659 174141412 496686107 132869201 156157487 88616922 937158557 923458768 936105994 587698230 646980263 58165657 642990842 630389744 807191982 252328361 946021732 105409731 909973030 639033139 942866955 864327297 967238180 887801949 944211578 82854155 393426330 191666966 461653713 442779762 721162552 276617482 278054353 60053135 314195666 68785169 849602081 787096253 851474968 646689263 903563395 523836317 688673709 112085152 393694283 289848307 496167249 22753079 790822920 698715311 922032307 161360189 684631813 350165117 721671878 146509134 767638341 516237698 602940312 111818519 246327594 202444687 790146746 454383174 539833423 490429842 817902924 805879859 928712737 457929571 965845696 45867097 854077996 610317076 673280673 69556339 418303288 99981755 195991210 59110026 326385264 191482729 842363060 804051219 993816032 39760256 979031582 408431365 634114170 586719146 993735868 182159815 224611177 59528376 303923000 212575920 962977626 409744117 721287479 194642553 612893119 14762466 783929048 211358137 945022605 114250082 236519632 178972682 589857085 384155519 952653872 250644031 741620256 24601729 779916800 673847211 881876603 135859921 807434080 388420985 414420557 193767786 781494663 302038191 740021405 258660707 721258244 423134533 947061375 376867085 808263102 439808143 963038171 450836125 915064533 454891718 548597454 521718368 585287927 266959470 905559611 455256303 887757462 593947388 936039290 834060612 844540184 663969248 853426565 63637515 477829381 364367756 485521064 284743670 894137516 112600932 305946674 230673778 507808579 81935259 413171493 369028855 428758452 353611850 817277483 376321910 960534427 153376171 528429252 297647554 564707318 96910776 607709041 179626147 622848046 399274002 926999440 198549373 203184780 153250907 193126570 32975334 849857986 277241892 842851726 755432860 775413777 577114781 695665292 617037885 673533994 269924562 878602116 804926257 903183432 490004174 771300676 621235465 979155659 26443467 800639273 484249370 727514592 403513630 468718920 383632823 907606779 103441376 835505943 561077564 813015672 765114960 927335364 280405225 748299070 662111324 823077768 492232528 605498147 569422260 884102787 161972178 334882803 107265430 952156742 358547585 587313920 206464174 496978174 224702344 380547453 19312121 877768976 721603122 753443346 99224098 842193452 128196632 364937066 239877267 687773008 115484527 172581214 46194690 700913461 370745899 735049526 466756746 948246277 240671060 335622552 215426081 415847733 53302226 800177751 573803824 955123854 668397442 854936178 231349645 978788274 499911952 794250198 349679349 568830633 332228001 616631380 116366272 844144438 710692657 765637510 669775486 855831107 309070022 943700544 99123545 422934996 139226763 829517563 576178877 965950341 186067979 962625707 947219534 995778290 627686283 946859323 227692392 717244331 257890869 267163499 112801666 488217823 178271249 302891814 220895856 548289975 210939243 293995625 161403532 954024422 627179839 941178557 560397731 672200512 291381982 974481121 66579096 430616067 96674043 825345373 707582839 836498063 79140742 428914401 322835375 558574047 8464111 16580580 2729380 814096127 725585091 938877586 65744037 535236091 221705841 685994044 48529565 917892696 142111310 338949456 97605479 440163990 120810141 525945494 98157609 200274856 180712002 307920169 187287189 944674789 163220473 261364815 79069149 219158513 202199392 231198451 3953858 587271735 149055537 795979355 536041306 712389847 329478642 594679836 210054022 792897673 137647537 425223144 198172873 888170509 885772723 933604178 917323040 999542121 632092061 635212199 626007308 964284042 666347582 944840413 103813204 429193200 255881139 969935896 49467245 605539828 212502202 781824932 678143105 954164743 287464956 970635010 606891427 823910713 674637815 855817200 483881542 782303837 597456040 631979403 26120241 977470075 905235457 979290279 168477125 800001162 96516897 401599651 381497907 492540281 460686881 873205532 765603691 850698243 638219477 785479578 772261379 822213973 771023641 888737551 422910469 595844199 442944699 676321651 645765174 666335105 231113388 244893131 224544445 333308391 130096020 419191247 212637058 659178446 657528550 967377786 808414936 936387413 436587196 632253014 60858705 997052386 923807984 959316652 810425807 897150533 475656891 849441145 415415018 568573792 433488904 799340684 213401050 287646027 247780666 963378401 522763602 616162764 76709178 526523838 297322015 997876952 11531868 498435592 457016898 717952646 580257954 676365148 477281310 942141306 181844411 566871653 188690379 649815713 178862910 913027611 170243071 524528616 453983667 557636371 425072012 563660425 553129941 553547541 405976073 702766028 530904311 572556428 387193877 443007288 371725210 940593605 247383012 873586168 386185463 611720902 142454562 395060562 27588606 649302872 488302432 874577650 786620197 975225304 314635304 429952770 265586402 384550759 298124091 913116885 701659666 789722034 778345281 943569260 759453845 989101372 869169461 904257214 682444674 772291540 2494363 753553864 164112039 913840608 181953332 772399952 22138713 940124043 705638416 837698708 380596642 763017026 568617735 675825311 270728507 979423679 516140859 977293386 422690013 771978437 282596938 960160671 626539324 773420993 545329451 736299032 401674031 619031178 318055222 704528858 587471210 966060219 412456053 691533778 451951471 460335054 23991428 827886688 619756811 784187310 385801861 596677722 588001505 759548100 376889324 994263689 649969744 912642499 553085026 590841497 259642437 567372990 400932679 806993150 171054611 329340875 74614278 147685113 122675628 324435697 158348229 550978969 440253957 565436569 341600823 764435424 26666515 158875197 16822895 240000542 51509208 428534344 107177697 142400016 141318300 815877892 637013725 894797059 258759634 450450636 400009650 699831297 155151510 818559087 304681743 564347402 504952105 688284712 486281013 501527022 373311862 895634125 172481952 428268881 41755942 159975546 93346430 289267703 41280684 138822982 15446151 27147365 23313304 973579953 223964088 344802873 186179211 863071923 671229230 843545274 184185639 358172884 183765700 305757831 173218587 878732752 113772919 341137034 145355775 547932794 18939779 567981090 409431363 932847464 335748990 714773598 569809944 804769379 120571915 146738617 115051323 459746159 449310562 716517267 34301900 837665508 223743370 743254684 582999905 720305633 480369791 529639361 423339498 832042123 700517928 979200882 308682256 621983196 482961498 682326231 96673756 373881671 227260042 529378725 447738212 765543931 286751624 621255428 399068182 530633783 310087423 568041738 157779038 776935977 177256689 327067066 157583865 966911069 416648440 491887171 485225513 879737802 204883247 982957428 310048051 941035394 871696475 962261955 405038775 770372829 112332064 316356234 138278215 267525838 91567631 398474658 28451886 723527219 73458247 396976479 195657220 631365505 125374373 514890923 222103066 307243686 268475966 994968707 576574330 951213398 511135704 554329992 55076368 296719904 239249087 958558796 488251705 568104030 217461478 665200375 389504039 873652262 589762834 992997965 268161143 635092610 427678465 822230347 697472050 885572434 49173186 679981289 501774563 747809053 720707546 801448247 626600549 753803989 690960827 830067052 241261899 410775838 18342937 934577214 429870104 647153345 155006035 889740873 462176896 484833797 421696492 918735851 562791757 952677757 333850875 928075742 252323373 380562953 307206267 328093151 103609390 299502810 26612365 998700139 942179678 956964177 834110182 984763319 752630661 837139049 494227032 808330007 355565828 785368801 524449740 905375132 813881821 966006168 241032261 428693696 413680010 605246176 98753787 595069973 580956227 681916028 507904502 970032327 410918792 811349736 263482910 994453740 443314012 771357525 659283324 966616385 632082286 721592666 69562945 715669732 32267714 642691695 202848034 942270431 251367769 428954791 411180131 448904617 93917236 564964553 134220795 383984794 221785872 964501555 725918974 817249920 330375385 469587695 348358917 713723848 281010282 959211283 601429745 613501344 447420218 831003025 235468580 329327950 73235836 183541314 125062557 798755294 191702077 345071206 20823063 984602242 437530736 980387142 388502716 840199964 46120874 293910239 192605569 842703883 260155711 984170713 969794152 991016476 942524249 977926100 267446129 334658393 58552446 215620146 78683112 398916042 317257906 645735863 39509704 92749369 30856518 454818098 95937407 489477193 438575174 960089340 235291173 239477646 28697363 246079266 36280012 788572375 411250170 526672104 359929836 752694367 104789301 523945548 480923681 687231891 27976559 334300443 327195260 345783604 326448985 754518754 262474021 286902169 266861824 445533566 361638614 760009038 667725862 917381364 143141046 704197018 90599006 960896852 372184293 815957905 134946021 743630981 284989736 430446739 185064822 876531307 642103784 973376937 765416418 931263096 385450712 948807585 733944869 766524826 565525691 761272940 230877692 376324759 224548335 817546452 632102110 873565151 738729860 881025621 632520646 666334327 112652139 898231756 115538037 201565380 193549373 574206357 487647180 814977088 251558430 679496603 75018150 399392457 42574043 925318702 62613592 159463702 73144114 341685572 10635829 838068459 682373618 830121384 323747466 760753760 455667866 568598524 554352538 794178961 780498441 990351574 898278555 914246786 236712243 497662680 200352871 514479162 384317134 789219397 467677122 929881461 592609689 782079987 394557023 428044295 323411389 539497869 509445662 659668658 74195806 873696745 528401738 657950074 552265067 957263699 56349205 871209789 844185888 887665312 740380509 784822443 766774296 977348849 292116610 753984599 78746421 945831097 376169290 696871856 450872832 715719486 130578863 426640628 86276288 897339464 357014902 426558972 408981239 844416784 93098037 239480435 229890095 857984688 642967376 656267327 453553354 612890288 540129886 862801870 350396749 450574147 8770971 186994542 51630850 461928782 360557172 521081176 207544139 948310002 926761147 973251748 581047795 599677932 171858842 613989662 429597458 509480412 359727269 639051742 450591211 814982586 180984852 350133366 218826670 332305311 76305983 217789180 126949871 636144864 345247919 549326402 156424791 831217969 191825524 669406286 400183645 577191854 288421431 521878021 40335452 867794276 69479277 223078692 52058654 463354548 340929240 968737478 889184456 994873413 398378567 676219085 271234381 328818766 281989836 769938736 91661148 494697109 54548473 74754445 55502938 195605686 195082385 424384854 184553108 562310674 324751281 344285866 77874493 438385319 69129140 105555946 27591860 172534784 147098977 319974986 248464571 759515560 611028687 633749276 121902791 518594990 250767377 457647084 27016103 705660234 235642173 303888455 266218976 364874376 344989522 866896330 363271432 846456317 362385935 780199626 608673337 997233725 732312758 881059975 106686837 336518291 168665817 693875722 449617068 469179939 375149331 464218241 299210788 440353408 341786719 907250702 696881567 801314753 294369471 297268447 56716342 498427600 88071775 981045743 92772434 227588936 176924371 817923293 745231387 996617150 484287890 665840354 156258229 307000764 229284185 378386232 359902732 398717981 30072098 336047107 144679617 457667195 361469431 597494806 258315794 348199802 129501906 569570799 423092111 728962769 713936072 942621269 709590979 778559984 531775923 769803675 707318045 715362959 530903306 808303969 743626334 977657349 900697732 966245586 942762530 995041310 470434411 575656422 434092351 936914502 165801285 182988677 90988400 885562727 206061107 499293354 298239771 963333665 185931718 440660486 240037437 717121899 10606657 49009296 12633933 25382579 10665914 488418402 388609097 989046914 306530587 821594795 61223765 355415136 49540388 862501241 590204191 684718162 266440935 900862925 435241720 947745194 810728449 983776873 978194545 998036923 942658214 954627459 373147406 794892937 735950747 737215546 651648378 965295265 740954535 838965178 46770535 107630505 68271082 240787171 55787734 902577051 514927957 927336391 404228723 770103264 106959642 893413646 84447658 391933349 47323183 220049742 3400203 880309946 119942305 326565877 61583656 197127272 70422282 303468396 71013451 373313481 152842113 201491026 187233822 953133027 606057656 677701200 508003614 954244693 427535873 749074197 739601259 758709671 34016846 283387775 271212026 786487735 229068389 425798682 371838489 403805791 393186098 497477060 52062555 469111243 286155512 976526682 665433614 743704220 99886515 276140112 179037740 374649414 64268085 521155918 39685691 405160516 187865744 251827233 122595802 959989327 590552219 792274204 14238834 849098977 103329476 805335863 498603506 789626560 22049168 897781350 854089212 862792957 708872418 995041502 582550822 862447846 438791588 813301742 446221953 495155996 429751758 995575145 902909898 986230497 285253581 718294914 90303246 218734827 150866252 205411944 9519180 466616792 76478490 826047390 251378870 632747373 435494008 730564150 64852379 74663400 56069920 838466701 619676735 625875086 535026680 557992400 445523257 651223005 579125577 628101529 415619298 500401800 58925896 161584135 127692431 386487628 158975612 648695542 143170996 775885328 584011156 914642343 84791441 959378180 285977557 829250755 822592588 907711496 803007650 952261709 927745313 964451675 105350262 390685147 489846 180910869 145952550 352046846 287622304 532683291 68765487 969389800 474853799 599454833 260595615 475744377 203483678 464979298 404969988 734498595 160173445 750001031 479232736 779940296 652770761 977829924 507939298 830543900 689426399 944502101 257903548 835530246 258555546 276145113 86819185 176846746 86495521 302029053 114330813 153598883 105943670 228249252 177383202 565864873 535965181 804925893 700073635 958796935 826744779 979519743 790364817 996951035 93938703 983287528 574647415 594077184 359008426 674294768 359372693 536953595 205709012 212103539 166335432 274863313 196667106 691905623 223355685 842480531 473224599 495107450 214173801 519624701 117079370 245528707 238048731 440744568 375077250 603156094 21669429 965710823 246225146 794266759 375478655 875252933 342774537 829799655 275691833 688124423 438720254 729474112 193735155 273633296 19078774 551827074 130639019 319412969 72621090 912461868 178695395 452911554 377216737 889737584 20378897 50424129 12267753 272094321 246195303 851508939 332113299 875285196 343737932 905020317 245184886 982003464 750774008 820689160 315887413 637310432 258179683 464570992 408272540 497879222 268125215 899551700 336652198 644100348 591847972 772483764 657736505 973752587 464371072 476010068 222371205 433343168 74186879 139009164 28833946 376200390 229144338 827261655 120190522 332516198 254088825 348019610 304835614 386122080 53330167 327548690 99602455 486857989 159235733 737577173 234898072 906315591 120139632 221424581 49710871 767434529 722425692 924171482 414811223 636870587 136976242 515678373 188294864 192877338 50632466 527023505 160775787 692479010 481280517 784897444 38677914 866240719 720516016 893335080 172742174 816441643 49686205 764596151 367186557 819521214 342658847 876903217 484532562 802558972 670732253 889082970 171736400 781645661 565365619 770124310 641873815 876186504 804464016 866903617 582814689 820308043 313611182 726803056 463040153 549699072 96751846 379603751 117268683 673474626 405493720 647084274 457709856 919224352 479579085 569137156 513001348 820784972 744680594 998821597 163173400 807293341 387673381 923260835 727506118 749344816 188704740 754716589 644257160 721891611 420493994 457082039 313607750 386320941 299941562 806578095 772062379 842146091 153392294 742177815 402504176 565717711 203628950 857272961 670175228 767775418 84574341 198161455 104920851 461611410 378099426 930803735 707633248 981304900 269287747 906050990 204252304 810864652 315371136 582079851 206366305 563882444 535644755 735220826 383767629 476772821 417960517 614813482 13312966 598252881 33330002 622318169 71314187 103417446 45336596 67793599 59041650 791026755 771088525 772951446 224752455 788014208 113525067 115749608 108055886 540135054 231813670 296240782 200700304 666264329 462650838 921585779 215912825 229505451 107227635 835964147 488500407 854584071 804346040 871245102 628304939 805149927 622635553 927085145 97584718 346823054 200008234 951691042 707320499 988181842 650415766 672034933 579879611 883634623 242616806 729688463 258206955 376308117 77805816 536850412 5911880 463918105 137763712 779793109 146688570 682437859 560858521 595765381 472374144 517855981 449543272 652074480 640903088 686769427 232483543 570462778 500075430 636835964 109353866 943304829 163969828 712582697 271791466 277929818 276962107 365320298 358256549 422538522 348558465 544414955 310736721 686767779 199537859 293180752 153016550 689756782 661325352 856207077 189249559 927690617 87903642 119190882 72004228 258587483 18954989 395206085 204065561 295289989 212447371 541068972 157393806 550076405 41624434 195843003 105466257 482897768 162723213 485422635 387613973 410330979 285124095 679368978 275021715 371543860 68391532 922907448 642549766 681701178 345199064 403633363 234940446 683338560 615326613 813545585 692538514 948892381 648937539 926908058 326758311 347490230 95749233 319510032 133754802 250423612 71645219 625336246 213058461 863400264 212362576 937466352 150039887 173158628 169804580 345254343 328140501 973280198 711320493 794233406 190053879 209442032 168548265 399541246 67822891 588841680 386001938 826558629 442423570 824346629 259730298 522383434 156066139 985444505 594578627 684581641 505380388 798744391 790639443 827332861 403134604 555328305 453883503 507758019 386781437 658277723 311143694 506849467 43379306 513448795 107604065 370600314 83635378 336060485 293108664 361295836 263783039 944292536 492646462 645589389 158726430 930759608 568335097 907572556 657084342 741942291 443910615 814647773 472768230 961786090 490361321 885653000 314541536 977060526 450492032 615571863 133974180 271135964 50935967 816938664 189267636 667977829 610568129 879394579 769173044 795921597 615973166 816870846 528358615 779509107 553464828 581458529 194902928 236843778 161069054 711681799 239573284 997523959 90898054 379688779 91322960 207993195 187212398 878887893 613241046 819012126 469173589 600347651 55815508 164617575 58450776 611314593 186944062 679723653 159909569 465048022 268834571 848053731 531917811 559433707 420628954 968481994 438975943 702408309 123031990 797096226 414689164 622413390 352265386 730739841 96545545 164274038 87355889 301922821 276071349 951538398 853243015 992950610 450654761 526747792 259555566 286066701 105480334 901885919 429854402 497014552 310896112 943195218 699850823 834295362 702820326 837386259 249085076 521067089 226609488 327044622 282335562 697139116 360309925 706550967 398402531 740168282 562666947 661028622 580875147 934174832 16496085 353744255 145306020 534224946 378986998 385681615 81478490 650439814 173789022 868069277 243930890 873794761 111052679 499671859 321173393 759142066 64230666 698126429 595980391 817319952 454180296 877014986 380331555 582089632 398103533 904198333 641862158 680603177 448179735 782304675 413087755 844702812 353037948 786033069 138096032 544490823 81708661 624708422 486733069 725679347 57556138 173511937 144827904 595616693 190285491 924797543 812586405 886273583 102007362 309841207 241394334 728672677 562572102 853805284 242608532 704476528 607238281 711095340 666117370 752016614 424078591 514633146 459633889 827720503 226515594 339300357 92911619 882128464 549018151 867604277 476399402 652571249 124502942 298874211 83372761 266550036 172372487 613720806 420550750 619814975 362241923 644560262 234680283 778145644 182273824 564228384 66015186 132488281 131656569 344197265 328550671 807645611 33399036 443343931 443287728 481979030 103362873 884412596 206943466 570582752 185806894 886845875 716143414 927353570 819241865 851628957 27255786 998561311 355324173 987023310 401005181 422642204 30724272 152805845 125849279 868556057 515143219 739469707 378958332 678227758 630181343 812690160 585017698 631911925 231442139 333949804 292957718 971816563 634779597 998798553 692187945 741608014 589841067 907930037 615001867 862931647 797427969 887881641 539532680 817668569 643010910 656623942 310171729 646503581 350053761 865109659 528546994 797706167 659687420 885548184 804623811 905077511 182680016 646528787 423127359 573665692 110259969 145466174 121906909 202227674 160351084 306456388 21484792 718782181 154563810 667713281 355641246 924705305 541346543 658460034 168480084 329842557 323424825 402327728 253379952 987816660 470760874 478465002 199308024 847827175 127578390 743744699 231076171 835341675 736059254 850353465 103784580 426141462 228700667 968581067 604256131 686117585 607779442 860584108 191821432 257132678 91229941 513053509 249321065 813330852 638387805 729797370 499351015 755651463 562462640 979457181 485214142 522908946 99027576 362547581 195390829 449237174 73592991 399348722 340912533 990322265 476154867 533173776 293224538 346894649 168305661 316080956 34921186 778168665 257559609 396907263 223605265 558314098 23938850 861317373 511974186 892714187 424596273 828979192 277290789 278733496 138482019 288997412 257135225 931492250 839873208 955711234 824912211 861919745 768218725 809945312 724613166 987996667 456344447 772698623 235671678 647076257 3461332 798534400 171104295 866089247 173132969 760944086 58314901 831061377 250242018 637066877 147725630 804723945 254539672 999537641 663248105 939379386 363228124 876517524 91935759 863470572 740675379 861952770 674018143 763945986 728039884 744083133 162173432 458808687 301521857 891560455 680175473 712978009 645287666 780150102 579747526 746514537 459934961 581162094 190586094 661688852 12859315 623274546 378124976 826948333 708285647 733473076 623632794 859737886 672161897 876356433 500255950 996953094 346828342 647808475 239899194 829863055 223311240 253082990 7939834 850232956 659448376 820217541 728766672 999942604 722687469 752036399 44089977 105775640 57347535 791279490 498660283 670575071 601112747 835504036 170564359 540712201 478373917 491999233 221111591 954761064 822135521 842222106 677641701 836744794 726777179 858174337 102107430 627632185 370967301 984283051 235668674 940868624 173602025 543246240 405447722 928214969 631125147 780823067 15530465 728790852 700826939 755747049 639331146 996503089 708681284 829883976 333651510 474749058 259723290 788808262 312657518 515932680 412054374 990615292 361270260 382172524 10494557 521904972 51607288 784744824 510973092 888645509 858663586 936389896 880295665 882793823 831571407 982102761 782250715 962923977 562569348 683723660 581087833 733171726 326151071 626343249 363288994 715241255 676167899 726229594 671561727 789536947 703670862 729642877 430959571 889701558 197767047 743643542 641752659 970244405 561038823 915336046 341511341 616716939 214872435 807176849 109735526 869290678 420710451 785287430 320855580 618714528 522741289 933719812 569094814 952815314 612751663 984376113 81424224 757360444 85617036 545176738 257291197 623967881 589786274 652954086 504116186 823920415 513350282 783769127 407670735 582308492 7480879 450900333 65007889 347005477 266731630 398066797 154133622 216645519 115126561 369214491 3885031 273371157 50729891 392123457 84727 490305326 129118512 774014659 164852109 646785236 415317317 713632145 242809509 310061840 159531821 499563953 11665588 916661630 448235498 508170151 156502766 956920254 751492296 996219782 567089899 646213762 196318451 854338920 789436612 948051415 619136408 890501200 532419817 616267340 306701438 506551054 425672726 923413765 824247813 936384061 433478369 686829063 223371348 744341007 717730276 998002404 707660774 829628743 524833301 560093968 179790317 768685924 233853943 975667883 933070234 938301053 483700688 836484889 490210729 968051167 6379677 306696764 242568366 282613142 2482522 296409199 287146163 656650521 22256535 550295177 297690692 977461335 84202379 727714507 525456360 608873552 599148195 694027024 208314072 831947213 341972823 613156935 93760850 232520154 59635976 596437267 70622572 199640925 189100384 986480730 871091235 902881179 237648621 366349556 123640857 423045995 287347256 396214728 228535215 394879363 316172025 553880376 29360804 222281242 216019263 998886902 984052692 995604653 885507668 959776317 78410692 414668069 333390830 390956284 202643498 468464880 90245378 932046435 214350281 252172386 70249081 372646654 288674562 318883924 271021516 540617150 144443664 171760930 111903743 942320817 15036942 121533302 67226131 922198332 863671553 937172492 201707833 365784121 202005476 403592055 368408536 497372513 276483101 423583432 329800363 674561598 648440450 806474424 614777464 899955494 142656227 832615263 787414690 850263015 712088807 794114496 116011309 788569824 379341113 383262865 179165116 610716141 109534077 587007542 411292200 902984972 72824952 817717439 458415887 550095934 321517656 696368248 96839443 802762944 449745806 469335241 27316922 320004845 81447395 482456483 69859238 258798694 106659521 223232902 42435500 903149412 293744037 808319234 447387034 789515623 635539865 746055335 60870621 376530731 173822382 951234089 77092464 382946945 284328373 632808808 591531885 719545439 129594703 558488030 255945379 717789717 106271648 761052569 80703535 171117316 108846766 172290787 9824638 430756283 152484210 439912209 25457326 139176466 109856578 867703877 407417756 891614439 590583739 596333991 160076097 479730277 115237804 304289460 62651594 991495231 727884414 843840467 298283734 508182077 170248884 289800866 59545221 660140151 163175276 574281678 410805066 730347499 452886783 568506020 102417745 160051378 146786719 841882774 807313202 818269417 464001241 886391410 340279373 885837065 716196902 948377029 313031372 844634401 70137110 486882477 429626967 888682512 252828273 481672108 91696944 227545436 157383973 457886340 198910485 510223079 320797974 685949109 381936070 435636367 337509869 655463183 90484516 667213898 437051909 672159228 625661070 759548053 39040861 571544299 301775574 804153110 298866182 449162383 110807463 548628136 437499524 706432389 319845858 415152202 298115065 516837015 397509463 632669204 201064020 371751039 308207872 913224794 314859369 824430470 220848464 598281231 145385735 880810971 758110089 869312196 217898394 480399163 150665484 419537122 70476805 735565724 365079535 996882969 27149138 401539298 127290067 155418289 26025001 769687968 246069705 510989700 94340805 261434120 7607164 724814874 564917760 612243345 438156998 833092388 606487344 851436370 617238509 812945883 619157737 643769402 327644993 904617427 850814460 919747046 717114622 773395174 407702428 851104195 671923770 901259945 200835655 296968615 263559364 460222983 419949552 974955321 928862429 964851499 266599448 853948962 230297036 662666432 567979534 763591345 382949614 919402522 137100383 422619742 170443960 319979802 199364307 397473042 210969104 748691255 1387942 804249388 272262455 328636743 142202786 837639481 369307712 701277155 544018145 989368419 748265810 826310069 24491541 808751135 474964458 906373261 153754162 166608469 34234563 216022457 81018015 403525473 140271789 489769587 112927241 509279266 91548349 287574113 22047628 649970856 110298703 411424345 268280951 877337946 593279218 666810379 293462865 679952373 332543739 672791509 524585798 722161716 685051179 726957806 715859595 778491226 502777474 904805694 235884532 944613670 15823566 379186783 36065572 580718570 141049188 993119084 702914090 797454005 63707413 118785287 38152041 631661797 239732345 844533047 226208703 519794274 414956834 481278179 467041023 539219547 401563901 873560222 595261722 898672716 136495847 554326544 419218393 830077065 556993165 844701167 736768690 767553448 487133146 873891498 49046527 663591958 218411764 220104007 159222683 714574887 708951615 843883161 210408219 666304214 662409468 945635717 426557739 612050544 417316424 915837458 421593023 423498823 164313151 800592838 305557806 585434277 379882551 995969054 900150125 949707261 931114684 963381002 901438114 987138957 208679688 867106082 824144356 996341343 479367634 787046239 572536329 824011548 801490682 992240154 764854553 991216977 741112925 874252126 713456105 787928817 316495305 601445232 356574446 548701898 293446934 938203671 324496475 633253414 261560250 875785647 748906276 849408708 438963023 655307749 101326304 860253316 627103756 930312349 605746755 682538555 553264379 897738277 475186591 884437606 806693006 813714496 513345858 859173742 289593425 936730019 865662604 903527952 67965209 431438840 268650276 817697889 235652066 363513205 300539238 388159317 94402920 647256565 98002311 397082987 269529587 548221172 535505509 660763695 418193222 648109271 220708183 519859023 138329446 676086547 268048264 749632563 222949853 821328821 12074221 470038469 403845365 822464148 315172828 412200210 372694838 514918733 140042697 693590059 100681482 655539041 446953541 578078504 233879750 442293901 114751113 215079713 78922925 785060653 455305532 509487726 47480116 703184425 194557660 486166536 197545681 664729534 119894936 321496963 275172434 651082292 554159122 661291522 320933165 656487113 446984820 596899921 456675800 580877455 198326888 224561515 55368729 829354790 240846845 321330063 20609613 862964232 187301817 414525691 57740722 688080764 193287803 300955747 262923828 267535420 110700539 674898988 41461784 547636160 119967786 231870389 180183258 790499350 459720543 526004918 340100649 508730484 463438097 739264789 434030559 855288797 242390797 243510564 88862061 834502115 582788865 868978631 103636146 731289038 243006249 977473009 785849854 868700685 611258319 991122198 874925911 903646093 804922375 859896757 793163579 873203356 836387418 844154933 200336681 906065665 287472721 593790182 267478234 654593923 362498336 884512983 743900713 900982224 4395476 925143560 201671086 961077411 540320315 668977624 601336614 849061773 348143040 663798664 348664782 717727092 326240655 605683775 572781654 686453584 535219726 712393444 297054136 774024474 271076720 934031648 706954331 834625487 202541557 528275311 86630667 305856934 47727697 602261226 588759121 846242043 634284381 641477724 328899379 478999448 314910972 483171750 26060739 49420056 27031187 115296648 106723773 780910650 683438224 923942643 899309651 944650448 420912263 635020465 600891185 990122044 322363375 462734267 246289271 415780898 154481112 463408603 158134378 892082666 200342457 832323046 646005981 666807277 591872113 748907055 65811624 322265009 254707818 558966874 217333494 243077702 35014279 425872731 15102478 89676849 86982325 278895589 105890959 519293965 36315044 953965515 633479033 681843069 592042338 995742177 99825782 187221522 168851301 478836935 351560955 710739746 401333697 693361540 178025866 629808881 480538132 573187046 118964 957478448 900764407 900846341 552336521 666869299 174577331 910049050 151937930 662938330 209801414 837006808 249615123 988748512 254979816 922464211 778757662 849036845 671912639 831754706 62947695 87691844 86973611 536725345 25147386 263442048 55060321 914628347 98312826 322469744 140544191 951837484 196480481 783858255 29852276 33800539 5742880 784632552 701029538 731781643 422630067 675788116 423122856 855619564 779743723 928741633 558436105 720438682 369011676 564184842 37343475 752829168 563384177 667585701 569033858 778740282 369946175 678200641 645897124 757404876 427250473 905827151 355391039 627270259 413275212 847308216 366130104 430100124 232179842 326815966 149447398 635381917 315172523 640228521 56254683 104114576 98807955 253528547 51516075 162059728 36109867 935433826 456650851 691932282 565763654 619258620 135395757 899848477 496159688 807481632 384253724 771269604 627116045 943362171 638666592 990492475 766317501 849118785 344996319 923914493 917127393 990868799 735993346 916454677 76280678 364395961 186240812 293751413 234201964 267765146 110748513 600349338 573264578 777402224 450160871 680085714 214800597 552653157 542038731 596723781 56809419 682908105 418209969 899451247 635338360 847660169 161783732 311734926 11712968 899774181 292162805 990635712 752341857 843552553 720956166 825760294 117326426 845632931 825930501 880062473 609024183 855046565 463180609 465271804 89530349 230356647 129855944 832806743 133984462 734333956 349622582 500221699 383972160 456591239 119586685 123237612 23503847 550541134 220458520 524181820 359502709 885521302 164006467 961815646 183848626 299515186 83249999 675432563 463491389 859067610 529904241 923148531 120690495 188832117 63740380 832849812 178408694 642078829 69541271 880974050 789748996 951163050 789578012 910891420 76982511 744632579 174787360 701381337 336509498 510832450 67956031 506181602 379605005 536930338 300690131 547054910 242035126 885565697 334503286 854103857 5738915 423905978 74872819 194132946 8734923 781609591 289358538 998329146 834059050 986875806 428705598 467154836 453393497 933843869 89067938 687668263 74063827 886137341 823677672 980216799 469605281 580033785 107208734 949353060 316730939 902755205 849373448 885513510 144227432 284789031 226086990 270497254 55080596 339715170 328880962 799518532 473927192 605683716 84883031 234754022 54335336 193863222 193162867 509525409 354428350 815941494 534408508 536858580 491659477 504138482 391981938 686623858 588789113 832876582 683646019 829259864 94305086 920001635 272863517 452800113 103679199 293278352 65210522 352510212 60091659 376850386 21094785 129523075 114092733 765998123 124214664 341755874 66704990 497590566 420567373 959252754 160128792 915234646 690137199 719033921 532436823 806733342 161829495 284626052 277807077 364498233 33421450 370437721 225056575 991189212 459815736 752713032 681410817 797391302 476950291 970115723 663281094 817476527 769880874 970075521 49926926 797162218 313159943 921565776 458402943 624867626 329105558 567585671 220205625 743246473 465571182 835117236 510802072 859915110 56678265 162456564 142764407 365904211 17162184 385058052 119679541 276314833 975269 524232398 418027879 548437025 204583334 793774815 344404555 545401520 509084280 828339810 301254936 757223487 365107228 647144707 292650278 454270384 212610122 403949206 129579627 556505287 331149053 709755890 508864355 684286572 241795244 461506956 321520392 696382082 452530152 897715969 223832995 755879213 116628216 135935345 32876043 911798827 462562564 563568015 120479515 828405854 397183402 774079530 733002896 775401929 189174573 264004214 118355331 847900274 386316278 412753710 284543058 846157903 414668629 732807023 179913330 690297575 686722389 951087073 918534034 959542846 508176071 674017409 202145386 922949449 566985752 924437290 755444840 980395396 679048585 811875150 468018484 575278429 530932464 755476184 163536605 744600577 596498276 758956844 707262470 768615420 302011929 371036431 125141486 738025852 270660472 883677842 286735228 973106804 146804195 461846674 378201328 919098024 524669652 662431977 59290053 597581187 500313166 889522850 365092239 723473554 431741573 666686082 105299958 562288387 471351098 864370943 28659101 303060094 16888228 536900120 88701881 549368255 10564895 917387521 25863801 810662864 69916052 283342104 221600210 239433722 96958549 199640846 55734474 113644380 55980884 440766090 316663927 413296487 221915710 641309532 162263118 344697093 264796177 621283039 132056586 293268020 150396905 658421110 98237998 201325305 87642319 649754627 225720219 786345281 542441249 882978878 282972372 984677114 172525771 899517359 808559607 874546760 640084248 947795486 60178260 873982691 791208373 962556700 393951833 790771195 216228881 925449236 7813714 811138149 286344450 856479754 764204299 784968895 503244357 645194545 394484579 703463139 471813791 788928976 460285652 992511274 526278033 874216790 318319028 682066202 181406128 321155553 316817701 739614865 569192009 859949312 779207291 968279965 812430118 835250604 574901641 717939619 270168962 794032916 695012059 954521438 651057297 708590903 407404960 601910741 177891714 574925798 103437822 415216647 288421350 830496473 340764322 456160853 200688364 987221355 46758660 438548247 237692608 348857232 344003320 936977869 582550076 872360691 49004831 355006093 286783025 971817244 190751983 512756137 91246480 247857613 168311570 341946245 128776502 458990483 58391148 931964064 516197467 549904919 298349430 917015594 322905298 439610048 287542095 595744925 497770555 554862844 147960968 705245288 257115048 313813916 242891747 645635813 180380396 754140886 273057057 412383274 38615394 724468892 251220720 978498660 742817575 966447360 267513449 294731870 8609852 774347780 450654805 675606912 283787876 689450183 140297676 954144429 381811461 941521486 632614710 917384378 708977899 715777674 231353361 335894940 212095001 793115342 146381806 345793210 224461630 370474145 141616513 720861856 631262335 919874293 639632549 908166242 694637953 768949067 192612861 725210270 710353998 740899466 42303241 478447084 186095154 493626166 351872125 400844778 112430654 327197454 11447680 694841387 178669322 470931970 457824216 960105371 872637825 986756089 408791851 768556942 562880045 867224817 777058161 977318696 680144958 851448640 126947726 903354018 189146391 676092292 23481845 46598052 43394910 637472045 382563821 482315387 46017176 248507487 14587175 565974052 306575609 465438358 167063617 657136344 18955995 134672945 89402579 591403926 449315166 619808995 525185401 949798836 65350869 653007837 594516581 789298215 6972493 828314288 409227446 803500320 3738758 762942651 509818580 834324732 775702666 798087735 27625150 897684296 300205898 787848236 345055366 886411325 457733536 752136271 594521060 911791819 781340181 916939424 324388877 380848387 120046907 864780122 753992268 841795151 223335318 975352018 415433160 547328339 478370690 709789004 92700664 316115038 287657244 990983666 931875141 970987132 456270449 554974329 325632538 360329465 192234896 490388517 365297590 989311491 579265696 636722552 610320258 837413110 664454779 704209000 311366299 320162676 234118139 462215129 325519700 422208560 124792198 333415432 199118906 349532472 115828054 916696406 680955740 738111756 345013432 466568664 403114186 455868528 422247503 603001497 404924121 826552915 226442039 998157773 328146570 836103010 664882260 844581003 318096045 647735066 145527213 794130005 606344662 629328171 4368222 844018845 274129552 936435339 869754276 914546644 573794204 790985188 429874057 882668559 837191480 857009429 121135119 880076396 306753041 974344754 763602155 921130794 374744710 931761281 292576941 376032255 306555862 442720060 408909953 577157784 137087535 559133396 558634955 599371251 320209201 554472837 301676324 895809086 756092678 924511548 385055866 861749816 430084876 457788850 419835090 977249821 418984421 439152968 321765991 768032589 132834158 492501408 430942606 992616929 281107036 925649257 470278955 922390117 794712247 968088643 87986375 464614074 86488521 433410919 29232388 671335185 142999025 376596070 13437423 39767028 15406519 792396103 602912232 677372946 242778822 512678186 357747210 474219375 316238810 528946770 516006960 597108640 184153378 719795601 516674518 819961547 179213753 820700791 786172517 931197030 686421998 731346648 171719460 754859098 670084498 953792325 456486168 897857835 44634004 255201213 46697234 387115390 291651912 565953881 200905959 974961914 495520867 850466280 755407006 887766127 179672416 529015657 524931924 725586007 280542903 877769286 341371373 373719178 178934221 679331537 588473951 886911678 205160705 552530656 336568903 529147767 313556412 995335332 510881587 579264477 115719515 585601396 544985989 855862180 774654553 859267956 55713099 359289227 73603863 116479222 111595957 953884794 173385858 973499632 47909632 603686613 514418884 868946195 751992894 937887042 285662170 538443858 220515762 973574403 891894950 914672214 869279810 933303579 196984568 320583632 62667854 906008187 597304713 684618184 632030089 969106863 804238628 943729248 641512273 993446321 134486782 859529517 487579608 823474871 789664479 960552525 765585394 823303183 816003045 927509955 317973833 810321937 88582687 540448155 342534495 932265361 334317247 442483267 180391375 629239187 297174565 946780432 394506744 619393257 6421720 43404497 15139397 841954652 622686219 683566973 137097095 983511442 77885572 105825222 65880401 541261855 366240809 706274526 470851823 921030605 590934114 842339499 503172804 952519514 126682385 830261296 63930877 865023668 81508437 384191201 214246981 415487228 14479497 309094716 246478546 310328917 266623933 436375901 234156857 608098533 233452741 739893488 233704016 317657748 287810574 640028584 379593989 791197654 213947227 433543437 87949597 328412386 317638725 514989558 294081597 867454950 372661078 452066888 155564069 226537600 25070636 138752761 94486510 701763441 459760776 714763680 265550320 997592551 951666546 997501931 304991685 448447041 66040304 118314387 61376398 225934763 148000638 490078602 476104862 544161519 239864883 325922952 312024905 886751372 6534087 581485286 460233715 912999620 241179695 423535795 105729015 569500089 22210487 932995562 613910878 907892189 624370231 673904217 99456164 279480259 151094340 314009883 14572062 154046683 77638610 981584185 581058720 628496141 197486742 253997941 150354236 244472935 208301901 984063575 484324343 557426611 234956510 718753578 219291406 637353326 552078447 754321485 584195488 682869137 304224482 628421745 303122423 590429119 136370934 136903579 69893111 352602070 261675054 393355935 363174365 657639612 651089280 930302555 895662194 921426810 637612036 936527011 624395710 954980181 214411597 224650591 46851852 926832009 209875993 736462573 696253883 901802383 659088128 659359640 123546895 836963253 129087460 615530984 542649960 725902087 707446667 927750836 828718607 876923207 706943326 910487976 94658215 471299128 224395599 567750514 365555389 805301931 141242153 997003779 319438208 601020885 296150569 625192080 451355417 571274182 253661648 867765450 272190983 871093809 817860610 839852458 691105384 720838984 539080863 955530577 649691000 720536099 658320746 889290441 449077062 659646884 76331156 164016677 117365490 999580216 109302941 931067223 445908180 772310143 287319508 451215065 413927652 983984701 501156584 636393542 583311222 797124631 301452653 402295792 132593911 696999961 151493191 726842769 495996628 644542247 553046430 741119869 81193109 732300518 67196212 268370898 154731864 363054028 321553594 506804954 4094521 407566780 191205247 264558539 137596060 348100470 250623769 388317111 354407063 567761183 103775664 720054337 25578309 719481386 365559306 381296444 26955140 952425716 840055413 971716148 199530585 250369219 59820791 722233532 161313243 413422399 84240939 412124932 254373795 525265512 255458239 986362371 262350287 824684214 555249730 910635059 59671830 732743080 517129680 771810905 406052691 765944657 514462568 818827824 728612845 974736723 217998389 787451586 28022285 860771471 359247195 526305188 244951227 828881125 586018712 957941748 158805935 262094361 37476347 92291686 12268615 130604762 8046518 890324393 361665161 376851610 200233415 952012831 939740343 944957553 509370586 531114633 385350871 586705943 104295770 686894331 295031603 858170413 138721018 416878047 406086734 522334197 197709478 445850703 153402170 896221982 355060941 592773190 154017860 326967752 70700844 474649639 414508615 560922951 462702514 851552299 80193275 430754630 379570169 486547013 183204108 321173969 91974762 702285360 1570168 75554670 21386308 857406595 260200136 762045436 322900294 703882167 591495340 721075678 125154900 547563883 7362597 917712312 77670645 222644464 137244446 665160452 321638643 619181397 72079400 831643947 378023081 532846532 386899709 547386414 397899323 571627463 485340469 988022912 942907901 967360422 132481744 794737043 654808954 832224806 4050419 286967069 65082898 444065266 385882132 868816666 582726383 926508872 276125325 390042469 267113782 855732381 294338227 614103294 565360147 576691933 331802855 502404276 340872299 914398955 234055952 873033635 505270626 718573455 605778438 777227056 244523835 247756354 222979818 309365361 228032938 884109221 125943661 650867355 582364387 751394419 168866821 831349812 38984146 504403518 320142780 345086766 89667946 196284639 62517529 865631256 259145269 395478277 363254583 380341637 251547834 830271423 691528260 925551667 538718594 652230531 200892076 742385832 690033020 903506479 328965250 967780267 712154056 909920883 239373154 351545715 322861185 415034271 76094168 273628711 262820145 657105015 443895896 530814689 81440491 544860199 260862643 570761943 141454752 913768909 438445318 648059127 73005834 95093962 17199397 901199352 750668951 765335645 131707049 396496117 230595066 420788772 24176867 608571532 311138309 555883618 212210088 614773161 255690823 434807882 425369754 964893393 210756814 243496545 149469675 590050985 576526179 816204052 603972717 822020774 327408859 738747862 704668789 776088828 672959932 810694117 591756652 669862115 439088992 570650021 180947778 190235187 122405115 659189549 547875080 961894796 636554174 881911294 794413484 881991883 436789541 659336574 291243873 453134940 42194571 820516276 356598432 895412336 428666580 816442307 563434921 706691192 38415513 908754482 517470696 924706600 115360125 711145986 198007596 707481396 226147937 818315530 661209417 804614885 270538408 962176089 917426514 917819742 308055454 768567427 258478196 758935202 81312024 398088989 187097493 497078591 216817518 493505499 235414097 601142449 500256868 847412177 461488319 960138568 103367647 997463738 649244774 809039549 121196546 819433930 51733776 704854053 220873136 933378396 68031936 423523160 265604061 684612020 387904615 916070257 511450546 829112375 530390468 977043384 493369077 780453525 261907230 363528949 346048950 884481896 68560989 873006320 104367066 712213560 494573938 921336094 686584335 986655313 502472261 769308769 336272563 572564253 57440079 439772513 170934170 480081128 468215099 670951953 232403592 274110253 235102407 917807583 317194910 857371141 373065099 877698307 423740784 437895873 23187603 55682486 30350425 977837041 150384245 549918754 94972108 618500947 227883845 355002093 62892330 361492934 216987046 587275875 548829569 847057285 296004265 926460540 214864105 900870605 759762253 944651250 578423640 605073340 267476483 474631531 11692389 780793310 520332246 752324730 64004721 225819842 108493918 206568688 50311025 325262945 1322575 237414867 158662028 225613540 74216043 304809925 51453124 739271783 210132921 608300000 281289601 845713028 55939046 351638575 173809059 988751998 21012812 296822229 231322123 370502123 24296718 838614462 706766475 914133218 765310579 813668275 242583971 770316419 645418394 683539987 399973833 486892862 36834620 941673270 347870415 989264320 308167036 333745972 121881940 743016779 47283436 897028302 40549639 969735521 661979678 877972955 11271440 810274706 160006933 804172957 565732652 697532857 94220598 434717827 273701978 383071677 183655848 668422536 283657183 600889770 458087678 624024116 552207965 802097154 439026657 758635461 43128650 889949017 241200127 264330485 97790091 172859902 130743735 314901023 24356682 61212384 58759476 618029680 428758074 728036674 615843110 852114696 333474709 618369173 278407208 633501956 579449603 642014093 206413406 973224587 852361725 976625450 182454093 273502648 52076031 318131591 281221449 887288408 290041283 493606910 371229478 818726952 462696039 508063568 335903215 784973759 731598509 856767624 238358303 473096179 4178993 362784324 228248636 870468879 301834403 625990230 11284909 740589224 287791934 887524716 389533070 664295627 58455249 341092303 107480482 843325091 73505831 725698552 540694391 656443066 171534345 275436572 103813186 654925418 459166933 986410980 966663130 997604469 844432230 895368224 543155320 624339272 519093250 945450812 220719525 679793690 516285067 970668141 166444169 172813277 155945986 952086515 392060868 453058082 442868501 610079815 543125012 999888256 742088044 938257723 483069479 676051980 635733291 913140974 774065047 842617383 453459712 724383807 177870811 516534719 301896660 362861581 359919500 530948894 503353058 835183121 48248189 165515344 138678314 304831186 226031792 333802841 1962295 595828989 578529247 894575155 480060324 911232071 48315432 646023566 155261193 634294419 69435186 299876883 82163091 272392374 136226179 228022083 39330407 975306622 890172779 893544879 826729082 920936400 412625373 949033013 95528801 847043010 16266209 86124922 56396130 928993006 528891274 690271721 625712524 754096857 476213234 607006657 424119724 692385771 256951246 358761529 309090646 559367925 477627182 830176874 172960749 606874857 62622347 683036308 14147168 727694294 30129821 109777949 105755086 733483205 732905852 852441793 57307385 905112448 541267492 658193792 309730713 542725541 202339659 533808518 64841351 122789268 26456906 333783229 178842427 487107478 230068123 498571568 406546677 563493945 74397462 220018440 24210568 841765343 712716206 906777862 861246169 865290713 280416144 586220182 166574488 606107856 161832997 484205128 462530962 760338907 733537196 937505309 78477184 982179229 615659834 765083600 497995333 927647416 748382261 809143404 626125996 912728375 370613911 863006925 713435185 905613746 505000674 598547963 197958837 687252167 412477977 962300839 459196168 658402981 424419999 791361766 509748989 527241102 444369824 842528388 564958024 672661384 119309791 177900782 108700713 337934765 228121394 722125465 49503945 916287236 632323854 808119567 13906046 525862524 42139769 786909189 559179456 589236392 578540964 947459600 450484867 861518887 211260692 423949354 270889802 963441805 333927268 661159353 139316249 893992203 355059491 942496128 444299414 661856093 15938407 118672324 17995919 186393812 14401498 303451041 113850527 798765913 450632174 868391948 511824280 545198131 159590378 623026525 49371036 950847592 724539656 903979116 619667677 845726133 267673197 613077291 186634461 756146149 588794460 937069135 481183762 852113005 565278062 995641429 65561056 239138636 234035820 567901630 208868082 760734569 428920769 797232796 337545562 523734269 203780693 453628928 256273743 658316001 449857218 474815480 358598631 447032176 230782911 560752313 61063719 900301056 63320182 855743605 706959301 961448175 421546426 604353286 403390249 756922444 129177775 628340599 186441821 827470809 661709477 744642460 460044849 580319536 548165706 659459635 233858666 725715251 404253336 457353867 395229506 738137929 484623947 637947550 233132201 514156928 139070218 200206367 96228668 858986705 443038334 695372111 24268318 842943004 681337505 980735785 822251822 866979466 388326825 621231008 491424490 832809131 632790528 878539063 544982472 828037131 759323652 764704704 151207092 873059556 331583901 452399188 269411444 680053492 424635065 458104596 139974199 312685788 264616489 323368833 293016047 397667982 254907403 474424153 284241668 993291945 450927243 848530939 182022400 327550624 201844225 808408097 77480599 640635337 107119198 601851240 115405728 372410081 109442027 539675335 459993707 485428643 207854580 410647667 314160223 693005513 282726471 897655186 852277868 958486349 68768356 938880285 358490287 397206699 6623476 245594472 176090812 563456130 273937980 882166742 156713279 268348280 139426327 767471171 341568809 874264864 42458897 322591895 65614103 389341206 208008572 965689996 142601323 949594390 12710611 665816287 334800084 530387109 446890870 757251367 600240037 664069654 145790244 930283053 155330334 721450874 678497749 894607297 824586270 872106507 735852070 986149940 319047871 725826447 102241824 564262066 116733762 861053492 419477732 692786511 131279497 404729655 63881006 219458737 40480182 932454595 782212188 807876840 66381111 105898560 97716608 694962732 342124531 868202817 232576718 293099734 172306806 432585134 52383859 986069180 56938612 931298648 497502884 651186283 74029118 297228258 75948705 497413572 476191936 922172191 43809702 862916220 755948043 875384624 284878203 497044489 473346062 958075142 158413192 827959389 623383260 941246561 85275880 828149922 639794136 872350025 286242528 739021948 384328568 998898039 365875827 997488293 182178584 453183871 401658947 681010786 262965047 942859993 846377007 924754768 297008924 716840902 212669931 767079026 420667587 755240853 410233992 481589366 119698102 366814675 356552786 976450690 697740322 936888167 873746444 958129916 912580960 949973753 739131103 773589849 711250564 762208266 18414006 632653872 526015936 939923731 676129859 952426777 114880914 326118474 241397823 437685338 159709255 352549410 235281279 827345155 655123148 847729093 329975570 910883543 302186401 742273934 200012544 800006810 525041446 717363240 409677624 612601511 371230466 711056749 276902448 369333926 45100145 271877131 165081484 924223770 175748544 461408339 242233781 922249078 674194876 864092885 492008664 758722598 574510361 702643176 51144236 125126742 70670460 814196872 60958556 445347995 82328997 301112563 171647043 812317614 631783389 720588886 433462653 438002592 13918023 498970397 33332265 434766912 155786814 268438453 266037373 346137386 203781654 673599781 272604687 859665902 746526614 900150095 606155770 915391968 393097147 973565633 670864810 925220562 322366778 969754522 926723464 966845367 849594346 967730395 636762542 772893156 105538264 756848730 105046443 448150654 138585293 623693876 421439984 489813464 45497808 190032946 32107618 313675969 84365259 821974687 663494789 860792724 266331867 629670328 422235238 790029696 366226366 516331956 350885862 898002562 805979522 891208861 356005795 766922705 563928779 640482932 312112960 346070870 24232213 604355585 361710346 897687234 545461110 575303823 532090228 721859914 56079998 972668980 949044116 985904567 906768828 944547242 162072363 765117396 578270997 972226845 197925054 480798170 211066249 560286278 17541101 689332818 201126520 718979938 697287970 759166235 212472138 268251098 91570917 810958382 195563741 635834112 142428488 386429119 357838950 463874922 232434752 581275776 442154682 501492271 420427228 608336519 579818900 593764497 60785195 475001818 223050701 912498357 767266636 821286761 42365131 66900531 23127537 32740590 20770403 552472289 421511822 801292398 679423921 950864518 345168568 502704451 188840206 321570591 306483515 854297823 343604379 707204593 420604538 513342495 223350907 724185584 108464959 132623772 36432316 841930597 438995308 637720836 139573228 664111054 364550042 887759507 330790017 930866423 307805875 459593936 178280192 705547801 143113103 493158642 44389736 160420719 78700466 772014185 625871357 852447749 524542106 619539094 614221893 936236314 371747867 613921791 50664148 497298840 330552623 338357656 96553930 411280819 140023437 497280010 296399237 502276146 58104822 341159534 291438661 498244808 4208830 114460267 38357520 968755989 746592009 808177985 413109397 694744255 530220519 806096498 350696393 668651008 45302701 227081691 161882583 781129431 366307508 933315474 315056259 589529510 208308797 502203958 302393708 771164986 231736699 721666509 358167569 588601336 471417784 888057952 50336443 392581968 158487424 406807066 142560605 807499398 599643540 950228220 468039865 936999691 402923482 758825977 153393276 671352179 343549146 586994077 353842588 411424077 330588867 907881061 236423534 601635278 255833266 555495557 373966334 378675587 195230769 368444467 132864515 786246242 576863189 759971916 14258850 717396177 444009885 851629722 560661099 694446897 296964048 883498364 775875811 975589209 633315211 872388886 843485867 936464911 756484284 919695128 862868120 967111602 791939976 820272414 64205072 927994402 662157902 807152943 598809133 733653964 670335067 753171125 266239964 311752620 45338578 710822133 200391009 409335565 350690832 816609280 792093849 888830798 560066416 808122337 538966742 696155928 11973211 498802366 354304574 582770145 442485617 924605092 834543319 973028098 320214021 858216206 8627158 196292221 41185707 399348910 113415247 450516975 357479340 488343418 314492233 335574796 335540630 918467555 250323058 421027769 174060381 652193217 123536118 793638760 622164926 676097960 402676204 821360638 605362661 631995173 205790344 218020227 28840892 320255101 302205625 447268431 110295469 631163731 586065157 665766025 528223342 743844309 617479565 931506104 866433701 883556566 607448364 693397658 665333469 776849260 147380699 830964111 622705007 994611857 643399196 814171728 510082591 771531938 131983538 850012457 185249912 606789488 52307098 53774335 20795934 477081222 444804755 547678188 45867447 300621413 50754532 434750069 309456074 965440052 722140689 944403635 643100479 845693329 133375019 330853306 123947980 281134219 84773427 397989716 220131086 932885024 524264467 710102358 516482548 846271322 707537244 938988196 169802667 377364972 209973275 367183054 113321308 602667725 234322604 397633419 239449541 642348165 299355749 684259389 6769210 986510812 119933688 354757748 266121750 432116902 228240799 826069570 398473071 805750130 195083769 827020818 287945279 387993742 321655045 473134089 130848309 988869371 776591655 796550993 332736915 711805853 444261917 986043353 483019721 741431770 229386642 403181193 205091601 472627748 106389034 280466795 169413232 512364556 229098179 561915766 282013259 679000222 419839195 436913653 281830379 488658115 112580573 173036963 147415486 584545906 381883678 882407768 28275025 208772417 173981672 341338948 65729194 980903695 827853346 945239169 626459574 825208647 362268018 467063881 283651509 728009406 162891003 925103934 879592257 912159928 432945718 675488406 281341318 416252500 345970556 410563785 271479622 378010287 15594724 731410666 686501918 705378968 692286736 955087867 864213549 923689195 482198267 994421588 453199295 956290389 794625313 874506558 367126169 554816536 397993984 941304767 863791646 974092905 325211313 870974611 396928478 745839585 711705734 939123447 864814281 932355350 280350719 424905328 406915645 888569894 534546950 825046437 414837050 795039384 635097886 729574800 247379718 594100568 516294538 576485386 198822400 817323539 791380563 811537392 149295890 666743766 574881402 752770951 34972066 788634159 627767105 749133277 154735028 752850045 232522814 643235193 373976116 823422618 350276475 736461184 180839972 673222845 367459337 957640937 890160600 922911202 760821583 986611240 747354014 997398577 699142733 951924661 858428202 930289784 202266372 442940106 417937596 737455159 44345144 832782934 790788382 811252938 434276655 710034377 560005348 835118961 647268270 686085921 338854047 609189220 490427239 721040997 658967265 904002195 810427433 870628734 751611190 907395228 643680295 940336483 891605489 964612045 293426975 683078967 665903729 867421544 364261093 760162641 406926051 865219008 190286812 572277666 47897467 535499577 415414476 866462712 754361756 842270558 489806298 757067047 528526743 879470763 334198737 506590178 436698375 668197537 461796219 999387363 110712806 998070149 324768610 943613620 465949235 508402999 121880991 735075235 148423839 666974225 197236428 301834842 16334868 976290262 892616881 968433717 730023496 996570994 707307396 981629957 632268954 886129636 238007736 846577040 342505306 877687134 791426268 865327872 366803187 786452714 453088436 984209017 486909913 974784707 212545637 464511841 222104097 892252074 797504900 824481272 621741492 776035812 498657089 953230692 698541113 813266090 345944390 373726503 48974555 533362644 495888066 653675858 638027570 732079821 440773434 922695948 605961451 700221765 6182836 131111329 69026229 218132175 84514417 532635104 216522190 813335479 355837749 910689435 189923827 559713261 469986875 833004300 811644683 876174066 553760299 576256149 11347463 904900981 516301569 606965427 190029664 824405387 609932832 893797888 129355673 809255085 191834324 249697232 128592780 434291530 377821238 862137418 245355011 583726519 420702075 936485159 797939536 969427799 727649989 928455317 856335475 871660342 549107452 647812841 420688379 878554236 846704306 849835216 695340414 849524995 509613266 661383809 179995108 944193461 329702202 840435734 349949400 446699907 178603479 494363693 469648501 568331136 127358848 264176289 146411839 292494651 153785989 595503110 197504181 943376856 415769642 899169575 755510953 789159311 596196608 667097696 195775351 875232930 872677165 900532024 412693487 544655623 241327487 299491413 186106680 763910288 15682895 92877564 24156386 119514837 25006757 209929306 108335884 512256602 226291488 439152537 10155142 471886092 243489474 825769146 158473938 261344407 236403685 279408759 226601435 341590763 231129551 387338442 335106483 610687790 413904362 730793267 695384893 948133709 87820173 214361893 109425997 806919886 375159658 378663609 184464187 439639388 300133377 578366042 253851862 326902406 248799861 835268382 128157769 978409352 243352138 263928440 234314009 417486191 128713660 151266132 137585547 477739240 186719258 421191308 362942697 784057838 697779671 870801358 265519914 720011065 139433588 856245295 184369828 445135450 231803749 627706048 515030774 876713420 12711696 989575362 613934736 915207186 42817979 390185864 310133621 711907976 220414547 343203938 208815185 590341717 515491272 767001755 618213782 752721959 177268944 392139400 243512324 462615832 179238732 935539999 453331354 617901636 554130360 624703933 433882684 956426159 109812100 995631916 382945076 546979311 111375306 489486091 248212619 773795704 605214882 932467182 106520364 835955303 124179202 536871735 216786979 431231524 79888113 162146107 124851541 228990714 91724290 217078048 9420131 831012192 244069241 409605791 235052822 903335454 341269308 547155397 504210370 864098951 543609649 693307001 112000345 164708367 138389471 916163824 882576600 974090758 326852722 566651452 463162070 674669316 584383947 958476824 885771105 921446738 699371355 951816349 807344585 998819282 947441324 960531447 568309646 846687602 506821679 730391828 705898660 868101805 257055919 714093563 478514986 527633401 405149230 645288018 23056912 661329536 565514763 946348847 22543845 652740023 135112885 925795263 156867422 237301147 192449253 466121725 218715800 368630439 347892340 366807018 201148449 912359826 390994669 936762314 846779450 854820671 597691377 904621795 871317528 882608422 368383318 767809532 218532143 988954208 674481083 869438676 507287312 964935517 921400518 964319292 385477834 565518357 13000224 913709060 900521701 974023641 597122484 885743558 364783481 396296081 231586074 968576242 94578194 468343052 340983422 618295866 349382201 437884126 13599516 355909550 1664790 985721953 7618261 606519080 276108974 822400381 509662359 835778707 167646425 622583562 581657712 810593447 693872589 802305746 755806963 859743640 491676704 545989358 148679007 162865190 149079079 860557290 133465060 711514053 552875562 609504845 544819033 972594481 557199181 688954484 532371363 554001059 218023706 459780380 219207993 774236278 742463521 905891786 436214754 980916914 472000799 778134026 410028379 438392985 338788786 797130073 404394502 693231674 127875205 490170804 273017815 714432547 419834973 694027031 428156465 672101944 85533720 659217175 239701421 438788884 146157615 344907823 334678081 971656052 419975814 951527808 356207255 922901206 75419339 99239469 25648598 118981820 73480508 995287298 241456989 829151448 561167085 810125604 443323063 509928953 332026599 908658002 520171896 579641025 129680808 733597541 617367406 717464818 1678577 199181337 144859499 602860339 586269590 958515994 808108493 861674054 796965932 989763190 695798263 736311973 342284980 548226036 372735399 954866735 502805726 697711933 658173704 970559581 115751063 650103650 415931960 605132802 272320858 333760663 260305486 547482055 529477904 600586764 434192936 776151265 634287284 999615734 521620587 909515249 697905907 742478308 561100740 999161086 896412857 924425434 433615763 501476288 433212121 902612895 646296037 949850924 836539113 989529916 471505964 614719874 191046775 649869401 554641314 586864121 270916073 487122998 162413924 244878383 121173989 720490959 428322010 578758320 352563634 520019264 50373464 516150661 79239698 633347573 495605781 793197547 740689336 983856377 551275541 558807450 503076640 572694456 130739592 373456631 145504068 597675456 133703239 220900071 152114927 644387494 269956476 867818772 690972404 963179971 853823386 860780928 427102682 646988677 628856609 899447084 204019207 211340163 200208535 347831295 240266078 393069861 240217505 672672791 636156886 711931023 702970780 957169096 434924164 718022988 75492883 711070379 14363443 344303494 24602759 320155068 240678809 398300558 52280564 346502910 168703338 826519823 470642334 859096065 639857152 949849357 485975148 788100019 607934946 688648877 535820817 638531811 38557374 201551201 35343567 736749771 276674284 521215016 402416451 526587142 440959709 566664153 227779502 558902496 128484232 833676818 468271304 722094967 632014622 713378882 300895011 485755889 178663432 862705927 195493723 998428595 664900237 926309303 492856002 603982670 559898023 803867024 38248030 736263374 94390607 697079952 63199183 526369776 55767907 427008655 318689022 342449891 237335682 993018876 102184361 206064038 43150822 136484064 138228 464646327 439317747 543269891 33575137 572041940 352987401 749100052 733998574 868179421 533357161 607219555 192643527 896939105 142553852 595121610 394200114 950767045 753977122 915250264 774887491 792020299 254818303 987784655 7890833 932136390 226850789 798431539 88910457 346577863 105666615 321991361 169179752 293830978 247440635 932860533 95078230 242002920 2183406 346223924 5540030 429861081 405103284 736906206 10468520 510227097 324400868 958687474 40830135 66769247 55475848 457232658 349558882 921648019 29247929 819908788 682219523 831084211 400627843 828501106 589272811 918252593 282194018 563892857 355920181 763154103 388209949 903257118 55895733 674887546 265443179 571269538 10846929 727801860 150237483 591980221 558018645 643925181 408381998 468273422 239874063 693220266 140225160 923774647 659644290 985163483 771685881 959570052 570518808 770671979 23263416 873504306 433170293 536272086 390861458 923011711 650651178 666478593 49486848 187280340 69150325 639691441 630779412 704946305 57930319 765023089 736428145 999488275 947457939 963620240 415189429 668212644 97609230 477890724 102292753 361741848 281354020 782169747 658187687 886497255 599800254 623087427 126839179 496180215 228231843 776117365 434546438 897658976 154641873 855028727 270491605 588075888 74953118 604755860 590600257 932630447 755777958 819151930 785671479 813023499 776390065 865869036 187082091 384548317 287461451 839966687 817812963 925806944 421270740 835427353 607643557 727718744 348342712 946828398 627098376 913412313 904840096 987229435 887916423 912531746 809000997 908515157 538121456 812675533 289187475 720202841 6828224 625769234 273959021 945407222 248456620 446848818 185808511 309236557 33783257 824623248 303189802 791887648 19647514 501959267 404201666 930952442 485036790 644330002 249425144 847288514 740589957 966877742 451166976 738839783 142833117 367923593 99316720 131347451 21020303 867558171 810248979 855112522 267297226 390899701 33881188 983375648 806100993 949567385 518620188 531096162 518815480 710852676 375108168 534730490 477441426 483981778 115591907 880059604 619652168 985824366 116563128 395661145 107963550 476470540 417578697 761487938 81835247 750499156 61942840 983973197 524090650 693600673 166766294 814732261 33383874 538796105 287466378 750859840 132062492 444780096 802030 524966524 120767525 708917518 619019274 946435565 646790559 709518052 201259928 690033257 184133570 362495642 136677997 946973123 784448176 836556460 181420742 228776985 142233043 463457307 42643776 813560075 107492218 595365252 261901026 918463936 780040387 905006409 365640601 911203696 884049112 979011207 45313908 429207800 347360361 360746574 175678582 588607450 285221829 788005292 210267992 425034449 271319805 882077610 512501839 705211615 376639483 945406754 128089149 504196153 328837390 366696314 10081125 509687462 384377235 679992914 280096055 699133763 288736136 969157249 580875907 978333314 92478411 207537634 4982376 125152278 97167806 189520445 18077780 788132395 547310352 660846433 595383453 800606027 211808147 573251034 258327636 632160273 429081507 952700933 699056394 964280628 194440705 984796051 291990289 555217422 248220580 627146192 106556445 944559900 449414401 586249223 174602170 369313441 34885435 57335557 51266140 389249141 118918373 170289617 141693080 847103944 691570952 795655045 482469978 958813072 920708731 971298640 271220123 702504827 272459542 661790714 129579485 749546382 715215121 821372131 239393214 602849418 341985268 951468967 33960090 800513093 459949624 927196619 881336623 919942332 733644369 925439320 473106635 880501136 393548732 643427576 534979273 727437845 112518273 402399469 296899712 774673809 731447424 826929503 218364670 303243252 262511388 703866569 626843910 852850558 667266941 675176673 535578228 746010014 209125921 219474525 138270433 708425881 608974211 655066909 620390479 690473501 295664709 764346939 502688342 660670321 398748863 597313514 409051161 850489329 541786195 556275966 316316876 381037237 46380359 538414862 479156126 894354300 343538317 816114750 265016507 846938856 189036658 779995289 248329635 989536196 24215808 145204382 122427243 749195449 104947142 913182494 213464230 825298675 407434205 912742809 752392421 763647373 448978745 800073469 636596830 752463191 320207609 509064549 324643006 441042087 174388061 274914686 110348 520912657 173245304 630384723 288223470 792009538 381262930 693983465 92573570 773327997 122623638 938533149 40821408 642552276 115953791 874204275 455560003 471762285 448913398 993095021 123967229 740233680 639874954 841374112 324806898 740341585 323368149 418231908 283132644 790319907 200469793 553564237 104412623 369752267 19290444 648979991 563600732 598298631 40131579 263139144 15082744 276195388 240480393 979190638 815326498 932193623 876818292 896292370 415265439 895392961 107684586 237849548 19378164 779699827 738907917 905121511 255635966 422999135 286196516 365774470 357095475 658659717 390316617 879912727 69927317 255132545 231674685 727453582 708784667 792818246 45491428 473049770 219972358 530485399 43638783 79893781 38698990 288393834 69381605 388499731 158750958 315380435 78982321 367878237 33118489 221730645 59285726 595618268 161015725 656514710 157800075 987565786 671442268 733234953 198415974 578187406 527760583 826651208 516937511 642987629 6775233 797218272 531004754 841147095 287232121 533251982 432641630 799631083 722167947 826531102 68815714 842222449 615273755 627136232 7474872 930510585 714750342 783842535 781214328 856518836 309703677 651019922 370417786 865750250 366875837 527962271 26453721 721583333 641411615 829486574 544193840 594064480 529901806 816954742 668427964 714778996 557415908 775384659 581141350 698327299 635058956 996380300 239643788 542076361 847860 797195704 115876837 162782405 62207279 532647445 384038490 857042402 436216009 542159650 1578613 544480467 84320715 794310424 69323740 952840063 680625936 761152978 432948613 990701346 539276270 920530354 890968042 983410098 878001338 894529674 867301077 904875655 167730554 252607056 34920524 314425630 142165882 310324759 230744333 298578912 171448300 562288818 479625933 536977965 155192678 875717468 622919671 916431771 797839306 825855222 408302377 671523748 232105405 967682580 578120969 997992538 716933711 819613895 781967078 829404535 185102975 826181262 176424337 634339881 117803389 937445036 769251761 799304103 324014110 692677063 41940368 569016486 207741937 403538351 228059043 619418538 553289688 757462431 445351070 599180612 444311735 697741145 414686930 460994338 386204592 731146751 606082353 810330265 89051023 757735862 147740399 651044489 149507759 872077807 243977823 563886199 350580901 622514608 370784530 741513566 242033187 598471186 320287248 768026717 734468259 891305813 560691623 642665148 232068120 420862255 184982964 779996785 430571954 868465825 734600394 932905820 315385286 865628088 586634087 680149293 197315492 369329739 92642237 586071994 571773196 596935609 33846858 402472649 138483757 276486851 208336994 588170101 258345860 398614256 221299047 640686906 153588997 266442114 212904338 826688627 702839920 899190024 93767434 607335715 39005691 533485930 171727996 266519135 204090055 435651497 223560639 394747646 359541767 819822915 245678097 309773859 20650254 272558825 193129421 964202377 802621409 828483122 114384418 529107988 426658036 884220671 878611692 968764854 783119123 810322988 304764753 826839134 331356417 748674603 244687664 356956821 231462401 372018351 143162486 432204376 326914655 994577133 948152165 997292200 225521222 637991931 233475779 238382370 202598871 663701197 510343908 664533645 428859135 439904318 226741326 507600080 404788159 610715918 106494387 548703601 440604990 490779135 273060769 326136467 283960690 616381760 333326878 637393363 28196710 580558919 171311196 710150724 546332261 596969226 83130118 977650799 137728922 502796063 455349353 964630233 829139361 948988154 143043582 608752019 60735421 114268562 32013847 343088995 256095020 900399807 356977294 374812432 91373368 726756136 302622373 680360161 664676363 777614554 529319660 851155262 79400005 587433986 303076247 860376679 226508982 632740422 497515238 775552719 53796958 562825829 480870155 966465442 35449817 595685216 187789563 566078758 64943426 825438805 432759243 638163506 179967280 817209961 814015421 954002782 832329252 985748021 639220751 900501208 98884175 716066621 83404093 551916821 97544082 984703008 975340032 994187139 578227112 696812409 242461430 247709661 178553602 379201064 202898239 581916542 280674194 588290465 137859018 893361372 168727786 285370396 157477495 803100074 451500236 551448607 292442508 423880830 205647755 726144116 215926422 262457653 147847941 400069927 63246378 187534763 133852522 224597909 122825486 854303715 793345490 900711843 391665521 784923236 81277508 119937005 98949288 554859310 285486934 918927320 608076690 905262493 321673778 454212632 390988010 632014291 59208376 435019574 300591052 911211160 406827553 874771120 747494381 855410062 666828661 707606311 91241825 842724665 563789608 764375885 622302068 884615534 763638843 909101294 247839454 576055814 86013817 481291192 402460036 757853492 450030224 962865899 153559242 696385964 239330167 511590298 60484687 608545451 17819467 931002926 304429575 678940402 480973602 878812756 358423357 702900883 370390957 489511656 320535710 446229139 86362202 899437879 530541148 895189939 214947512 926067740 139171861 242167889 118665849 780770602 652077886 862081620 352497039 921956647 509864939 729239982 442453445 468951124 93413026 745677034 206555769 356624048 89510803 782244386 520469672 574302791 88873331 961955789 226655398 469940431 86032126 802881447 110041687 378984838 248231798 328476725 293206688 715805159 452756421 764057625 462252136 827254473 737546721 987250442 462583740 692974580 137720667 678679251 502868791 959601580 416096169 680028672 133036710 190003416 56668343 576175728 79696024 280903441 164248912 699260499 163484728 458984546 172238638 858609021 300849396 354950521 312881209 403751928 26944517 499511668 371175723 752513843 651800731 664694392 105189289 851504305 583573168 683178316 54612652 243401001 50386925 675539068 478051388 934202249 72721010 500244660 169431303 769985540 731057610 913328408 535256901 753438696 684652300 898651484 150613560 974602163 525359161 657557431 413893224 491886894 8852209 583512178 310477842 457991382 285908006 833659545 299519655 423510208 270734367 847967749 80571123 824690170 240627769 645523765 260935560 983622256 128063463 173199895 123482791 269940385 27969685 433497150 293904161 365662173 166616175 860014663 441044006 667947371 566270907 691455419 401018910 893306705 410774968 898886013 364566777 594389762 87650478 903828219 412372240 946545184 217372820 595498175 547879435 811391231 84390776 335243947 133936943 407171469 181353477 598125191 297635832 438872467 77374739 975605384 384023506 544456846 525477067 946527291 813623476 987567670 124061124 622158516 195395147 418727655 213086789 560591364 223944030 863746465 792420714 819878636 261124496 894429831 109905076 211933813 127568907 868632598 782219634 821181731 767968534 831436375 250133214 519010639 18179713 31206630 11117479 848657397 74352796 936900119 279625282 732864729 600368384 879653618 529960162 714635064 261092634 538944792 149788494 280582655 57026253 960153985 160632216 276377070 10195429 968038048 114761073 285975924 228021297 503807284 335415127 833394724 573767899 907089889 653708871 694237732 163175653 778552527 65314749 766852340 241711971 745742020 492739970 819618454 118281218 420407554 409764058 945504128 324683145 325279542 195100946 856956855 534240429 633038470 140778058 664164341 168244206 917219208 851362822 900962490 751813934 782823569 345953070 949204327 141840483 162618265 109510162 377156854 358699891 462053721 292008806 300656343 156046368 974412945 883570480 943116897 427816385 456680771 395606762 988878239 314853900 618196207 284649545 374680996 327039037 596038062 351387348 973957302 973758593 982034767 613787832 671804885 600526980 876556329 675406923 780858957 340046805 532080333 185481444 777009568 615727182 797634350 460233132 599028079 288315300 492687561 14216407 682047774 572914118 990090159 529892248 726830608 231118867 803445315 699923576 838654436 801225975 882898155 649271320 875917253 33287667 509366240 488261486 627051446 270647765 936205213 712069746 930549759 487692791 855332960 351117410 470810373 407159929 476963987 172761082 478335563 142498053 788126604 603112113 921515548 222447957 986669997 185833390 480476823 62758259 122141979 20317246 293138407 156740220 504754746 276057655 390904481 345699955 676689508 120820820 261131359 130721158 554365440 451239916 726470425 16786057 745968917 109370321 547799200 218613957 836388225 633079727 718395098 329569093 992789721 351486546 402921784 95919528 357080902 122592554 477085276 132827016 264344306 167445420 580522786 21279087 529832614 285948279 611975402 364003120 717564459 590671851 624167155 452379248 626164816 442654885 967516703 902790054 948101374 399473657 603479721 112980956 312545966 298671734 770965483 322374388 509385970 233156561 967456240 262935482 276439522 181141596 742560344 148030029 474979615 120621141 615097180 79086133 832624216 498917441 962706026 239140659 954005134 143482780 494751218 244761559 761691940 591122700 642135152 344539223 454817210 47622819 501039103 9690099 622170929 532541637 663874227 392375931 610067063 221911975 270876376 191651676 793765889 325500621 827940330 764258068 990386021 494368243 858254424 35348916 183376474 72402295 518627418 15547011 707718159 527938397 844298912 701858829 868582953 491940983 547266510 164837174 250080135 96678842 231277066 203939264 846607880 363727827 987074090 606064036 889180370 744653621 758403125 555861605 723287974 646981240 969699040 956031876 957434194 401386362 643867288 625821434 990011584 959966909 987000164 492438749 939425468 345574727 661356801 253053020 810268994 298660832 601168273 557544967 711349293 274879599 501787800 97379357 138293538 64271476 559670524 394935980 627507567 236464523 809152931 710503320 776416953 580328854 864872219 512633909 912496304 214884901 631429869 410576113 521937273 137480935 170782673 11074277 477667014 375380769 627865440 170155817 239623408 222914502 852075936 509973756 622589479 228600733 279625551 27240021 928091714 688519589 783992256 380706467 647853458 595975244 947102762 162171185 489878634 18976016 592102232 532430019 768665250 368088647 703462223 517654215 594465220 362541577 874437211 99461337 850048832 93586871 330070423 162423260 700938159 548109120 569986615 426601465 516773161 513430928 519954065 137809517 823190515 124028345 674811576 349748012 961471071 890244467 965538923 91443412 309460885 62133664 752394011 404677526 453144687 149849687 491399144 211369729 320592835 22809403 406417269 175510353 190283559 141743516 573763379 159059137 766794918 380340744 676515643 406359983 765261089 648201759 813498397 16224332 585483464 327108017 505611975 485781288 951291647 594703567 954144134 926492413 940404188 698880363 794172587 74355740 740997160 193899324 566621418 381867674 911014341 740593788 930254798 105968556 481086383 129311669 868186540 118753958 406363344 259379969 517039092 210189401 643322244 55833943 874601633 691704481 772988744 271965438 622949409 614988201 825855821 385972251 784191387 102517509 715922718 539856967 590698952 96073053 513098232 416627805 695156097 429127641 870594116 411854969 505598513 278971338 303736292 170596041 708283997 531557064 531932995 247487406 526857973 365669393 944051892 300946717 908879231 217689797 653395386 459985407 747730968 496006759 821322279 609299701 696434111 648224255 693918543 563550404 939949649 179617196 539414401 22954939 402552893 304884714 351816478 160852555 658336452 651342792 669214430 431273104 660536238 325864691 435826139 85574937 303655158 270395913 429722106 32876698 430216346 261194134 563609835 415079142 498282111 476450571 998237119 126451985 329892151 313950170 447148517 280577009 417652591 68793919 813501374 688940300 882352775 552123102 878915806 699068861 879162210 208446697 520268294 353604694 509613984 439726648 842795287 405510622 648912525 66649429 880955616 220853784 311286981 199339270 604430799 154223881 532735021 531939208 716011302 645676531 674940904 2491066 230694584 144249256 798899261 645287839 939230892 523425005 850862546 107927585 175926119 16636955 762147960 47653107 369357494 301586915 349809754 325661834 434995914 103253882 722806138 312702646 706968301 1349631 803849654 667949775 715815428 174756251 932194536 236535015 345841924 283613072 966932054 598794943 919168473 84916147 917891677 205737920 969017846 211686492 308114686 211995555 288850668 181583235 475659095 97941150 147044173 33366545 889158442 104047972 903710603 680564451 937241193 740509019 882650493 590887582 815313497 586553564 945707303 83968483 171543671 10909702 834035392 529970656 657960248 490730749 953999132 232838423 843179726 830566006 956188145 198835116 234567130 201877772 286616500 231749851 777169815 262107115 577914375 477216284 522391842 206899132 967328525 570955259 719353692 493944457 830674820 536507993 682764648 120489581 472892930 1263227 624522617 230396804 754339377 244700562 247836228 194943239 943106972 503835856 525256651 404617514 836068515 419300315 568713689 385381271 770392398 507975436 540149190 74112415 785649072 77833549 864669693 361279688 431000432 307584844 601020574 167481574 423037870 231078691 938529462 121201786 869887981 517009024 743215770 174545468 926864725 555186388 714523255 429008677 507785813 103310418 729577813 65260239 228423346 128810639 366196025 136879052 714138293 684199700 879159175 718209114 852110132 486899703 707338922 658349100 768681376 82804200 481600259 172411069 739117117 120912530 714951963 387035570 833462248 730031181 750483411 619856222 890924609 18142846 350919230 73121587 395225148 263498101 464682874 259916572 564066873 94328722 183375290 88309602 673291111 559073726 608964964 239956610 359118708 135583094 777400690 772703048 842779561 321114651 639358919 2646095 86287979 57168133 338914059 100650105 882042793 583372981 936634520 646606531 830746852 127629451 265394651 258118594 817809634 423717105 908803064 453594454 579434985 348076181 564096511 363850887 668631328 390403441 538801696 220538629 284103157 203872044 680741913 386386177 998981351 128825901 545794427 365862307 402839376 180537526 211184205 151436538 899523172 775743790 809742370 532994391 802566345 32148709 605321493 427080917 754554737 79085279 767568554 375269983 685111725 194606417 758805933 361933139 714038793 211435979 499478446 412220621 658731170 506908872 907386124 571993961 902303824 141340325 346913760 17815186 978762933 770979963 783205951 86722800 663709109 421295382 738049685 595610853 978055117 245851963 948100880 429451001 998835206 385025822 649612731 292602353 680309168 228624095 872067453 372155113 602910626 183709125 793199211 345183301 755800447 384595964 697792569 267655370 455415125 137948193 427138000 294129312 375272380 177093895 684367630 307254411 988241033 572394226 638296987 62427832 685652650 543674006 762101373 618450188 769642756 741577336 760887113 281435632 336807644 320938422 769835000 258758377 977513531 17843722 716468348 208613927 271548456 8818791 18446569 7451025 515751484 416435756 587156439 444719082 950448454 345865560 814179367 449877460 899727231 625102170 727154440 165390754 442429796 384443087 981099971 707487030 827018958 687567926 998874544 88853698 904750835 695562205 930420196 162852493 944383961 383497618 941615080 440811744 742548488 217933233 422923216 167127623 407268168 244571046 359128794 210933002 532597071 70471300 486170969 68807349 84053725 15379415 885235158 470147422 693596167 46004662 277805417 47425014 826204351 304409039 736965105 332424265 871085100 639301345 837318464 86039648 922126166 331444538 445266028 156775384 742317519 11830303 307744237 3946108 135726138 47068585 832657739 784830285 850830063 299858774 551387950 155296524 730534652 617521043 864531883 788309688 802662163 227873955 645097068 236345837 985544357 525102050 562022559 108139584 762607707 664491417 674951267 295752314 422820049 202555468 782561348 546644369 685836821 674961279 910800761 771584230 814917994 792277950 860569121 579565393 708120237 285832687 609685667 270628217 582185032 34481412 826324460 52182722 588307289 457765974 617445426 616540522 790568986 228174669 291666319 182657135 221572565 59262527 787642053 133864719 614533473 521261468 937769995 900275111 980549049 844068333 854434631 817595407 898434939 894902016 978363120 392859091 925553810 739008028 984438929 287833629 615241583 340871201 480168084 274747608 496946568 236531698 682456373 382932451 510346869 228415880 923225166 139379592 559782909 235365571 840221321 463180337 944647728 652427134 862795892 163930036 306721069 104738545 199522434 90284617 875106372 851566967 931631297 115285038 242890202 17839294 774660473 309728203 773651873 541020113 591692872 375850525 624568401 136382722 914948928 129294221 268648352 138932040 201120936 31693387 187242487 50925447 940887443 546136040 916255962 100050179 509109781 166244175 890831346 32008496 55862463 27228831 919776177 468050936 919583690 218333046 437298503 331369395 596071429 393215135 980721940 885597385 894222741 731085756 884343384 135147251 176406402 83664743 957391952 782914961 884036864 349109260 556678233 388468567 976764208 709263500 716040545 409005702 554870593 184889442 729374011 275407802 764664704 722993552 810281797 767835934 771526298 253170207 952802033 652211094 798015292 500581167 944169874 816185200 841169653 294566505 902931424 7333133 772334658 680562172 799434737 91081694 815472340 262287604 902091127 217450980 406602777 388055319 703836145 96213163 708577632 110318456 132134501 93932595 309195772 205140863 643439415 484091097 631794838 273839237 587109923 338957758 690112740 270034736 839368425 672591788 816840790 92197043 862606092 733496190 816220080 233739331 956234954 882616946 899748391 757838838 899045767 123299190 971727678 200217110 750012703 416329278 994747103 547421631 953482036 644394386 751269464 669008556 831536322 167419647 933430481 37550621 494026517 76005587 928376468 293801639 948830978 627654860 704917378 205863330 844101748 804224780 902568220 616064275 956566332 373187406 687755656 393518112 738721811 459506837 658335399 408791793 967409077 707109798 955705780 440359732 464843269 56233637 85824272 691965 310750306 7644973 755937872 254908404 968293168 214754722 646360238 614027723 617403845 266843693 874349024 407775158 602565136 194167196 960146729 343713741 889532662 866382956 984646353 740457656 845603061 134163600 615835522 615080993 954226546 77021260 328327994 313715759 840699421 365509765 762207386 432985391 557505035 481418626 643742798 590566134 747209107 550964288 895098035 638025779 929473542 169008576 761767671 578347683 918888406 223259661 451977360 340838504 514324901 469345004 510704024 33149759 83151775 64801279 868129307 364607882 395693954 15281316 448595262 266807812 616972578 261694796 805760211 304469701 707503398 433149176 809732114 233815475 971858077 798314273 805515974 182357406 232900596 91957766 468890144 287040593 714862861 360455392 911221499 377958594 720230155 428910996 715185011 375653372 786039801 582381665 585831848 143643298 336295524 310966711 750327609 154805486 902749839 415118346 998422560 715991692 963741392 251026526 830626988 627176125 801800743 214125491 253926008 169194888 812267040 730845957 832749347 588359607 738078310 88969194 726323545 466045305 821134636 453541588 742739146 676177653 714961634 681176166 929356360 113863086 492808442 387205112 567297919 518132100 941630964 775568076 980339835 452010168 699509462 266308707 454535892 373009941 600278401 308831105 978621993 648988556 737413463 424565225 629750228 374227944 758427488 154787530 691465793 620035 325453906 6146619 530108992 400536152 707412274 658266581 662072090 657154823 958915937 791623823 997083294 761022765 851982203 34865104 725876077 705623920 878170083 815356057 925701856 195329301 647058510 576276711 809478558 624709513 898436734 73155523 633056767 441070455 695997981 250506608 561432147 188261876 803972626 600699885 656441410 231634863 449111762 353118435 367904981 238105954 293200415 16236966 799185384 375222289 505947325 369423560 655284795 374407190 890611169 256379455 347735690 159534059 923660283 532034874 619521655 348877919 998980294 131441451 935707185 686698948 953404357 273898405 774741999 270641028 655552169 34216514 50549055 39856744 944344354 623048405 741049865 66386613 852921239 626753047 631827250 474600076 960723367 290918023 915938429 588248978 711867746 155510585 823062080 537876713 661835366 652181690 828647371 790120811 933519223 191197664 235875542 136290246 598521905 345242913 876649264 841369065 960500014 172405282 926140442 601734369 776432981 510085932 990863056 190282767 961163329 874011460 888231539 633950751 784556850 666136137 742242948 185551223 945058264 398295516 459123862 185639744 577844598 536641799 657162143 520220239 649755333 636694151 681727699 116959077 236730421 17985962 580959004 205468634 721981293 47490025 200614108 191425559 700979272 537921887 577009176 422982254 765735748 346395932 608267616 200221969 262136555 77985530 93980977 69876612 973400255 863125761 995881834 108545996 359184402 307622982 608535450 105941393 993827349 281781992 886192628 28543623 191814418 5227303 978307200 469382822 876373385 627814124 892146326 158175438 257144935 205021043 931730134 366032382 468109501 361038396 425844981 347247564 427229154 66595722 675219062 217881587 350484599 63935782 248129697 142315574 224813732 129925964 451188935 69293297 348225087 103110405 939272635 684134643 880380402 782504056 920479974 122022580 503135017 37359242 544537721 351735221 774105005 731548251 826649043 119680252 981202173 127231632 703640034 414971996 819710746 76304906 709736717 8162144 61003135 47338910 894264243 711462834 829332628 191820870 202800161 145687820 797656644 376010680 662584962 539006185 989813540 165815205 414849500 283556263 431494325 147948268 319937318 21818510 873949471 831964130 947984326 84994121 731704295 610262119 843840612 103433646 494566603 109503254 553386550 333303839 661743965 144218323 447194570 187392645 238588908 204332805 515825066 243324798 434500582 348981053 553138002 272403742 857434435 354983791 533470345 48675575 909570979 60561507 369457662 119484300 780033350 723653402 855932955 49854829 997892516 254219639 589031572 90427191 673062666 568763391 678455676 500181374 606264613 378564332 928923376 527959768 620398655 316660047 367468204 76088807 663873426 357541885 568614737 134270410 182294136 168144663 567461738 235734789 639192262 8276500 817107558 535109615 633047563 53793575 60735055 39466742 570956581 8304528 630217295 333061131 877095820 70195008 759784620 238779470 986187702 793306731 938619688 174728490 219244914 147189705 983339147 142366408 973614018 473884654 855770079 397030757 617494484 78875325 896045023 352963533 999173194 554738239 746096413 298636580 754840413 324764841 377351757 369689759 400988422 76015035 894246922 823772552 884185819 403882301 947864049 596482199 680033408 56260450 627377408 131088455 829024748 130329389 333697161 264780990 480417991 145179142 758291330 505901635 560071825 100303774 603291727 402867577 751535234 137154326 371005960 26644060 520369460 196226754 227410817 215772515 878187388 180701876 489451585 330914345 649785872 154951775 630078796 367691056 819009377 721068505 893494929 662467575 796665877 175719550 961402677 474621998 704623483 161892779 205205222 195136182 660348792 623830459 941822554 756671381 787383920 678003479 794783906 596193842 844083895 724355348 846220351 704812670 913412037 533442327 728296105 553346333 594985809 500402542 873235749 32215058 883381603 308201888 573241364 250258595 968848228 908499031 978839647 699240660 773186226 390851987 910977097 183895608 304282716 302905589 345886151 220332520 933207187 489455923 592149399 234371250 644100510 437999401 648770042 324787887 555331319 118740818 866704699 401568434 990658300 736503120 756261818 720478141 966724747 508556360 657689812 228439950 998661253 56502484 552749250 376329781 846525739 669981757 969213174 383373852 753319739 280830563 534413265 243649393 331465038 233295922 671331828 442126048 627304367 44378505 57228652 47785638 372826783 299485403 918841022 179621075 357381538 153072759 207320570 929344 233894558 56596570 351213872 266574349 553896464 535498050 920772083 891441038 943300545 612916234 693884374 326450536 353690681 189428827 467743962 198596211 526897339 447198548 466177412 329517588 572833710 389255593 457854906 117622690 628164640 473447353 855654138 187255248 981099557 15610159 348741365 85882504 246230005 146518802 790952703 574125781 676721702 96790102 161376405 132139686 160322900 84869813 596523585 89336060 253539374 199305867 296179631 177162112 893581043 420780394 717094558 71792086 526746084 514336504 644041570 600888374 927252141 560627938 623397026 199613478 847860516 104642949 569587323 189044099 776979182 231320979 853370539 300282937 328643081 312072167 341615820 147537818 793593791 53684046 272244317 13724469 784454355 483790041 915992074 555939242 954381325 395100580 586686540 510378536 950900087 264162439 657177380 420402621 527338483 51320225 271541208 68556059 121726870 14108277 929889697 838179622 983355488 514803670 530493645 259877484 782742201 245949951 680428569 639688537 977385066 828094508 965746913 161009449 222034919 157901632 296688646 155900943 523358190 406381691 922214635 101636998 468668253 259500572 535153056 132767470 978490178 169094075 669806650 299666777 309610925 79376958 678584536 286815984 443694554 168879683 731061631 562426430 920082930 575499080 788771509 43167165 946458575 147578453 512543218 104915872 672386094 308490270 861834722 683702546 744740962 340997441 960628986 336106774 994849053 774300597 782795021 276079890 601070103 126619284 405082552 372244482 374627421 340146605 395577312 86290483 492492716 182819452 815024122 5703109 423375363 342149637 478765670 109541889 246564308 52829861 652418173 403980207 846200618 26991328 334629291 165110342 799818664 404169273 671910145 53843022 409971174 76555261 506528513 335932371 369629042 56180130 118793475 70961916 693533700 558983746 802349278 610742930 702617370 253164796 629175409 471452829 586143767 253976324 985307202 235422088 890490275 584162833 619329793 29705409 696462695 506730050 690472522 208617778 753280927 314532663 780359219 654102407 687847702 334580523 470116190 47206064 133803676 116999115 318107128 40124990 355373277 103227894 668163067 240914643 248991462 86790264 253940044 3050547 506691404 352153684 653057121 526689848 539216086 463989418 599521529 141008533 666651143 572919978 773140964 322586859 997828708 938600882 951969625 631635874 995789514 917749844 949655539 391792968 497304179 301915899 792450627 64492032 481370272 262028027 837909578 735516642 900014978 489736957 755942909 389510587 640631050 613266399 656592998 519934414 923699700 25259334 570174347 423286159 894739222 323186814 980802392 311987739 587003099 456631726 826974423 44354479 521632674 282795261 560756174 388599405 686311552 337251833 367360974 178411096 973422978 183347780 552989019 173305757 192360925 107771586 290825355 165245049 700856885 524637685 865096332 770852228 981850988 460476726 905389667 685252776 922358116 791524799 899469846 499286424 994075813 746541473 796420680 360421778 971613737 201814225 433892335 209657813 355687746 240538973 672982036 512622056 642034283 63541655 442538582 189245940 897451305 216474910 521672538 396641082 730714493 352468544 922221812 783353522 936197754 35995033 421986589 316621837 791919444 497093923 719449779 21949238 724412823 643960043 725654924 102510404 576713073 148149472 305106179 238654803 687737932 241966559 701666988 306355552 335848729 318866159 855006506 803614761 981324539 401122408 906333891 740902149 817158396 127139517 316957190 28050655 824944338 449369807 461873347 266723983 376796480 303413503 879078016 116462638 323289546 44291700 168171174 159191083 501458325 395463070 547758639 66065116 248103533 73239731 159164566 38786510 819033422 16659073 619782298 157711969 607622124 266923030 563966030 548232798 876144266 60293564 201182220 8441038 843061744 602827935 700491656 120866651 492429009 257656007 425967920 327579128 798474173 534144855 962794056 786921492 915413859 405365853 864274993 126103078 317148559 277409590 696725927 344934877 355433235 216090144 307682780 6183774 412822258 227389533 939778108 407180147 799255714 220378117 954447723 451160379 718699958 315067288 861778755 224529015 491307607 159589834 964788835 813712174 845375087 95136557 576583933 129111572 147307561 90601970 760012002 133733134 726103305 512118301 876926507 324878448 738947064 696472861 756631071 406916111 554282605 338496448 698179386 172102749 528238866 408150338 468517515 5029609 555931160 200457063 224465361 105131009 953210208 204030425 966601186 665183767 882251398 404113730 762372696 203989583 548911210 57014097 406700009 19144462 906241048 411354392 853411290 782307418 871150447 662533550 935230171 393938391 626370474 9687845 712522701 615575275 665957731 243398802 688906530 71458336 240888042 166449588 534297507 207205652 953052752 277950652 837828730 279740663 761431804 400200197 878306734 95250619 308263622 106191256 242555859 170011644 633282009 623994062 921426912 854115191 872136665 270862114 985126331 241514604 358953727 46242477 546840896 73967655 476390204 156567193 198045571 191314807 809329942 635415691 698729785 230926506 437476640 80611284 832160359 386088072 460091130 264266153 696300369 346216178 651677468 265457622 528246322 455518835 654982416 632913252 839750192 178644363 737859582 725220818 921876191 215138554 218329702 192067827 866831317 108821289 963969574 468687147 617177790 581780557 861261577 810649675 988573857 691211290 923476035 152497436 693694046 437580230 752421131 83742676 768841748 397647546 860906777 406021011 715084232 487779915 683877297 506249450 677051104 234762670 646215901 182552288 939268701 517582460 737412992 639710136 739516092 54268569 878521415 109996662 349979779 344669807 746550231 51401688 611323964 159341799 933190663 406950020 733264763 219247876 571013610 5952660 321506078 13292540 469940478 416359658 888277897 632813592 895249021 71856693 173354361 74034471 641719287 426157354 959053677 574715407 823717880 423475605 550172187 475360715 543900285 490740014 534335930 378348645 562040636 49084735 482179571 350728016 673540421 44872057 530145613 52905723 628429944 294499860 732703008 540717661 778746383 762422501 874563249 680024188 874527243 725167738 910998428 58265448 925237144 502601101 609681217 170944980 990319431 682565192 965254453 813023219 850387952 796865273 968282704 560213632 717902618 324786203 636789600 510524086 799199536 584384317 697491932 108162299 309682496 167027155 828443650 727368327 839789102 757477142 770230740 117648467 389832567 349331439 720887952 188422678 635276408 283405159 616921013 616435015 881735634 423740476 540715414 388567658 949093396 563137274 647963182 427057076 959597658 845157491 958273635 198505179 432690269 328368158 764265044 329810439 980273571 327931087 699286078 673287587 734247645 599431501 637525202 234406617 746022560 594380111 984684018 677096304 722027824 91983629 932167967 355377480 803053560 107840046 760656653 758589107 965501448 156490286 547087027 60664783 755398397 29730391 903119221 709805155 710534975 190941145 326604544 300925251 959229618 825113400 991330432 752643543 873857071 147251409 737765000 472996370 677522695 621523925 852741531 276359699 422279814 252927550 778519854 526572028 719412166 33733640 988685290 695091257 826735502 675178689 773897472 126713675 152159357 9419614 168125388 94215157 553014106 523206050 526479046 479493751 902309803 230823450 632095188 143450590 581266469 267605876 501307873 453098697 533483477 117058417 577670725 531058246 915818488 622477176 797910564 420805268 997765467 235080653 672910474 575448177 852798394 221296040 850770787 716871806 812537368 49115072 798777310 689855461 993482467 650537975 969931984 797309900 911059909 285960001 884861430 592337685 924164318 132371284 880155024 388363871 874323559 234087442 600333274 87576064 995192852 892047685 986994402 604901682 613852926 247845215 440447219 339527332 373119905 353586497 457770949 451427963 700258474 392448229 773386805 149755722 502471057 414850119 708778971 514944327 890542360 219863478 587334842 91977061 614267090 381021296 730080107 540134359 669537128 239856374 800933033 452198370 711968033 238532031 811157277 541605575 551008494 231671692 327485519 201753773 934841837 397387051 810716943 596326585 972465743 959707288 989938283 657392249 894884419 427280560 675271999 217943104 539361762 240528151 277788421 168951022 233927404 123264355 169111978 106061067 364244009 57019447 689348717 148245139 224490165 43725839 583187336 204447782 920193633 488114300 651713351 294764182 846664733 491261750 794438731 401869129 484393259 71721002 972431300 218844587 947934369 530885900 894771761 560337171 834600604 2184522 269994945 242169893 897647191 748935328 753394252 389950406 955580544 620302476 873319267 675193214 939476322 57945124 352554857 49045228 911805198 35207826 642764722 468224118 837405074 508151111 759955065 565428962 855536526 529747408 723398641 586487216 647501202 403359265 933396905 301069448 489958098 439941061 952890336 798738252 950651138 694511409 970637636 479094962 994551378 433064339 884888378 148450037 926223539 293742423 932089891 193970874 750013107 514131608 639954328 420959347 700651275 69762837 835773530 467952794 655821436 329516742 940554577 81468062 385272567 4544259 442326170 243345194 964002265 409833351 879753840 636706673 980119559 463841017 506154524 345578791 407302454 328003848 776811667 311484518 911679492 583179306 943284918 124575561 272588322 150657501 259317605 161210979 403367607 235606768 411460466 93463546 591923417 153360689 276184982 149616420 307938814 80572346 602178290 271286669 357580239 338066976 989111211 908218484 927626943 397860265 965401104 179206478 619727475 84418727 979382735 654771010 874566426 246815747 777761625 724379660 937827491 207824133 684491137 35353843 873683022 103066294 915439000 351928884 361519904 52130378 471146529 323101356 643946347 320877645 965659284 797856185 947132966 70671570 397839997 96079734 337866635 308495777 941890255 349330587 671229452 135518144 369839379 170682993 605228146 220703186 714135360 554192354 639173916 457699470 947006609 334779576 537360010 150346089 630352843 88470563 480186921 140796426 743934539 48294393 397997872 188886051 364200588 175069784 175761788 101876625 418667287 123210086 205636167 22129321 838886509 48742251 779984694 107654417 259771970 200014016 366084710 113875360 779885243 204199559 736380469 173174832 814326571 597980173 970258273 183080019 956456096 107142234 531103149 412208093 535856355 38446862 809635581 171673190 734409283 232534311 772272826 507371696 626906247 243022823 249056504 12041711 546888215 232046727 265318768 78517078 614651465 175178639 916907667 437383191 998645924 856349949 923499790 467742637 915612158 560550870 864862420 96341577 442841598 228547252 922648518 610486967 895493398 116753730 550051711 192864594 749557640 100774073 234370880 161504767 848820250 252561818 255566645 126661090 561289325 111306101 874958908 864045253 948760949 416311021 769643297 428348925 903263227 460694586 497231056 164917114 523371152 475271891 901155913 722861493 920407390 390603778 901177484 195463281 828803178 396760007 991565308 496937163 982160668 75596903 697299089 681264756 989614178 537984033 841112650 166852343 709679497 64048126 204189265 182617015 276218743 207887764 268136660 177454542 694343720 456231618 566616735 242861921 832383440 6523298 525966676 158347988 990651763 914779099 947177959 92784969 808713396 55038698 279835705 241841978 789761332 134825752 602492264 119639423 868969983 478939469 730659501 159157956 220404748 151369171 815023661 473205370 779565163 7990936 544542787 57222159 352091806 252177743 732359584 27877903 594360923 42577343 768509380 517801989 911308564 763223992 868851544 172990230 264823860 211836921 328653363 118767538 557801377 104704317 537662291 193557072 335468655 124810697 311953649 165224304 821941909 197707473 684429127 115204863 578200752 143346276 978620254 471035225 844178304 50135202 443346328 141345524 524425357 118844520 580345049 387699745 746453723 257379513 999859319 459789022 927205121 339042648 665064834 646236677 710384180 97876261 453455217 117922793 158370007 54382425 898028168 574557715 623269358 202920426 821834742 186268978 736262847 720687802 743483605 740111777 914155434 22031504 79933563 18005079 53223707 8335701 695937677 97544887 554259099 420104090 704311913 384183143 850314593 545262003 955589110 36310716 172148281 137449898 986529966 930373495 986689080 927625815 964610346 600255229 646304993 394035183 924671823 703001668 935133063 34552697 563265978 332668686 608594781 346696568 460641759 261597811 886571527 745803353 881725326 65110815 184637432 62470191 566572556 416642674 418874527 397545377 641430377 167387488 502569079 474756470 775304110 419006315 930454244 731655442 886540994 883664861 906787508 499116421 954929390 330168391 444783068 101355437 884759380 861671474 935521427 179194864 617883988 286570203 405330621 73031191 656158003 493511676 728722977 417326096 800043124 664456089 812973371 647033846 704768629 604649137 890619188 568676822 944942702 40862995 167247336 57410716 672734911 69963044 986484521 256707846 632238713 130601634 688545663 251708191 553097098 287448983 496509162 316777978 877576028 631391975 896933152 262182830 479180969 199972333 416357861 207551555 953530767 123292462 529487206 69345422 116111904 17815062 965564181 602433181 895324803 312213400 511542608 487878747 811487728 225857654 573786712 161010977 938071327 405870887 424796123 250460791 439486243 261298965 915568172 146238590 647712950 337665240 352436734 201981806 377498592 277979285 391243467 115193980 844821009 72476856 859019685 759012220 932378315 812419025 936705151 641683605 776525400 23048376 340491242 93829193 214931366 88680525 886975742 662750486 984234836 340013462 843386889 676728089 760319801 447194686 970541830 38629304 538520695 128711273 234617433 20991384 614716028 197020319 551597771 544432931 646234867 589240434 962746520 885156867 998135520 686737233 889680249 101237958 179975624 88871309 927447311 677101520 982678731 848268494 919425406 8691187 738764713 60005445 264978271 170591434 209391833 34808290 964943736 792062505 938629185 591864283 672489372 248487819 809277516 529716439 886851866 46812560 161514190 27434048 775691513 279327959 695608857 436409784 987105026 381695263 745892400 152535659 297643879 150952266 764503938 375703579 498517629 463544608 851286253 513818331 810063547 365770315 669202847 470883120 837526206 583012055 794082486 404818544 519071299 56318965 594956653 51691105 647951406 84530835 214546449 82946623 360220007 49863543 447340132 222472522 437091802 386830357 662278607 431036620 642930845 626421302 627970589 3666992 124587434 13250313 582296794 289574683 519166520 437998194 617244802 423679538 862840994 254379093 731868601 61564759 902552290 362530965 403052270 36733501 726603520 449359307 694556749 172867506 424669581 84331963 263454460 132739614 550952061 154095774 500099160 15896582 409497530 94573973 203617577 30412685 595320886 115301984 873623083 24200991 188756221 159221341 603269066 221750046 922657241 836630507 868341891 344851989 852921874 775684214 874627228 388162316 585103009 278620401 379296480 166759155 748736986 537951126 601480779 334815091 736989605 317484549 892037912 809469597 931754720 546785503 928610886 547177892 881865508 846453792 869101910 585856285 780631565 200755192 337301509 327331102 530890269 66040990 466624713 6885813 603106789 115352080 597765527 231103375 590252689 148631619 474246545 9074618 569172399 420245559 727720478 698817395 948654461 599761161 742795001 604453893 675476596 355923434 981134431 189229708 456702491 229469089 349193869 179160533 767056348 158031898 515859423 378919861 816371162 583751407 855469343 814251336 853171695 333029898 574216642 292750234 691058313 588639643 742927721 603796802 966001152 506752009 705881496 658664243 675452322 322025727 989102745 721825519 942214037 886972554 887835244 740739783 761573092 652400529 971481947 153378091 336632998 252216799 597179841 262656392 640600310 290707073 399298681 183993512 552426461 52389926 367087897 103651114 183481613 97240924 960156640 939011086 982468724 62441847 719646436 301390984 833638947 152327412 564705229 270386826 546461606 161688943 541916275 496387191 530839861 511083349 974554194 116021094 117499455 45769825 399976259 180483377 628695144 617491478 982173327 936922769 968329731 245775127 615022164 506257268 817739664 550713384 994866144 796677261 801618259 145864911 493981536 110309124 310731075 116484139 599924308 489375741 555503708 262151864 719682384 712417757 957090443 212307699 363808405 184296172 375539439 251982586 470318719 140333464 811357323 604982169 910284439 529592646 593501313 429241278 931800365 313110121 910671963 77691995 767844247 742679266 914900423 244950548 249391238 70601558 354209750 298796771 706032373 631955460 715801583 702310889 925154374 440453754 718046614 173374923 494769965 486362225 580735678 33805872 54479313 42657977 344749714 220150855 973962179 297935842 330340663 195116026 319945625 261978230 299003937 212600756 452847591 201808249 863929267 862713381 887228998 360373806 595679814 294994663 309368832 117780278 250613737 45111021 342651842 144426418 555278698 448963520 860494627 320039980 817701460 544501328 688585533 688472862 988418459 203725310 484884559 158573838 745149770 524074179 801988492 529878021 799939930 76605699 639139569 260799162 637816696 219264963 555224164 484299063 888998546 213510395 947262591 864618193 878248821 738077246 744459865 2811598 611232539 361394136 837593850 357844542 638587941 442324653 458454509 57562947 286188942 233379298 962642198 855143774 915238393 472954240 859841532 352201045 462873747 80872497 83826440 13479463 39936749 3835518 454803964 37883144 288346397 226992233 244226111 221453342 970587699 619148310 630916197 365799787 607116104 97510131 620780054 578371635 735585580 239188362 760858672 86008340 606927450 183024062 324287673 137133025 641044151 113183810 185108506 137644610 918297188 701882652 852201179 408038275 547062897 361007911 674675394 126555953 570568666 115367291 728189384 384289224 539802870 413807853 476273397 403231885 404045619 379273525 883740751 449132277 798769898 374505760 664169169 653510990 696285557 130461595 382721134 62688813 168318639 75140859 633631466 535573077 802239091 382253783 979556001 113085768 743622124 654484406 896235454 439399363 585947282 26996744 855712756 209679814 708651552 444733609 509026248 169689165 224489053 76856258 545671825 31920319 507243297 255046686 928371904 448885802 454210894 273348085 771608480 749500823 973688516 834916838 858843817 256139766 826207081 554466904 937783477 226571573 542684966 149288672 679434579 639075255 874541048 733963109 997720717 846857551 897422489 80843607 647750735 465479403 789224594 363954605 769402070 418697307 635747468 88233132 176362677 84281172 726017436 117224649 142494661 28679658 616403629 473919982 853456908 290425125 992461594 848744435 862886774 700378221 908563698 873900544 979458637 887333730 968609811 727928748 789229287 756775565 793499309 711683929 960102235 702863672 916451043 168507548 690536646 427144608 470707955 457218523 896646474 780120928 833136741 675444834 677215521 657504972 705277432 123253304 780406826 401959149 787904851 487856025 737077312 631030132 777394639 10895349 106523444 76987676 367884143 328793334 484690111 419353920 956475299 22662269 156468510 95792762 201469492 64070955 943378507 378698788 716103993 433171925 794232777 586124769 648797168 261169736 763237373 338379303 362973124 248448603 282383083 136338323 744208424 592859809 793752366 162501401 383991909 71751494 659666259 141492512 624393951 362396632 905179052 343724273 737176809 462740661 782700963 215666457 790097152 433662480 448539686 247628085 570858369 499882857 751737436 51932838 188697470 29099281 914510839 900111945 965229743 465763895 725394039 512469399 835557790 290402671 316345932 306706820 612106053 465640667 801088561 707233205 932877644 859868871 866752703 593706448 978556829 782721834 917356145 903468790 925914050 44770499 277191309 13681021 904416953 343355664 727543808 176250862 413614024 197973491 870726366 104643869 134500008 111606392 254817121 189275905 311640836 236093183 434706878 131965831 927658309 88548244 605142375 46245609 976864673 534519542 781520532 224565992 704114704 636065285 939630432 52741495 723220693 219342105 697052428 262306909 664551293 350920997 537453897 344430216 697418959 87336553 959151272 411375102 506952310 15394563 918696560 562252561 715798221 509876025 765908518 752120034 859006332 845224773 991343612 957670088 974272296 307252389 388471542 9482098 269140285 263787465 952492394 890778360 922675880 448958965 647937839 400475411 733446719 624941677 773263689 621016239 884746257 481754840 917569533 190660375 381288566 329362808 471362994 130233928 152141569 22787836 838509635 829682903 979925587 227293814 550289731 458624565 856943131 642606965 943156463 839327342 851519077 52960212 210723733 178564730 554565680 350161572 793679981 124206162 643296998 405429029 563828577 496052930 742825488 688491988 742332846 476523404 691307790 51623625 989436489 711166093 930630838 406947726 870924301 766519024 883677101 667601450 941391607 213287638 493290206 331025507 869366540 677831472 692172009 86876892 620722874 543564109 843285653 250061989 321669142 136907164 772626166 326667190 412190099 81648703 82256952 65159597 940282785 348574020 749066486 556576753 615819055 581950377 794605276 593524497 750217619 712208371 826860922 271588925 396414404 74964872 857946056 144413266 488463483 330044670 777909566 76684855 106907041 15774716 729086755 384016547 632534874 182909564 965116461 505331902 601434427 226074112 754042090 639560543 644072031 349803491 896964255 386467496 659157715 619536687 828697690 737249689 851922199 151938538 280641827 206677309 691275211 477710167 672625929 632444983 833520339 691380486 891269161 782355292 864467495 420730560 797961591 508310397 960516941 215451023 798571096 759313377 811471120 459240684 767286965 417001467 681969106 445040558 932831250 7317693 759659929 160288135 912235949 572931722 992456147 770048739 977833996 32033893 821625083 504984734 990035798 499579312 839515027 826004420 957789079 670837642 781581108 594090422 936667417 658319874 952484672 518340815 766157071 199094789 912120961 121898611 822790071 597173915 749705407 404332096 968491401 441355023 646754373 595353141 635949307 257478799 328576697 245918844 886220415 113100376 333689661 278578424 967744781 694365976 874198209 777056417 909484681 625873144 947265864 588048075 702205487 20170405 809923951 764357739 807237340 804034744 875273488 793424527 797484312 257803627 916335101 626470925 780673890 30699350 394402168 129810003 837125948 587631331 822163477 351482897 666854102 371332400 578130843 564110381 910771532 585739855 695011714 502069963 858303483 43469371 383212527 186630834 244135927 218505920 927436605 650439193 764994421 613999236 677633878 74933318 913070062 528734354 895731366 226355543 554842638 89211328 716743863 512866731 639490114 588447465 807657765 191496356 622236241 584806597 590405415 100044750 335765810 151199975 374041085 120175888 552332052 439421196 958193710 551799250 637678561 531759553 741710247 355867957 520854005 421030476 703602039 291412066 428248289 297935380 993317161 821058059 895640299 349928226 432840345 288461143 298147598 14849091 137047022 110487627 927088495 400803904 516518096 231388348 265584320 199428273 820774605 64899577 512181310 504469769 970357287 848126422 923077016 919293548 936191694 685559186 925202313 613187068 905961093 498575141 882931239 498340982 605678186 147548938 894983530 349134978 960782534 452372220 607894237 103446093 657699148 481918032 715147023 432138154 633264401 263744847 822651892 668732119 941205888 536324404 956657731 227469854 390030249 342467125 640727743 236323957 980744015 220842622 526562915 481934904 708401115 296170622 675207377 86652492 255911622 190247180 932599049 145227565 961525702 543501958 794853559 513917850 885227799 179097839 277647832 5139848 864671031 77620596 391060430 20401380 795946722 47209626 521535895 322508982 843332824 567511057 910274469 141679227 911791518 898784338 912791305 770313421 974687957 398418375 623761160 561377735 794058825 668343535 937901582 834395906 956410858 492762525 994915009 209057016 543501798 68001701 845536486 749744614 916225035 416390945 799925946 132548190 654533114 307118220 874669123 594995282 623194102 514015670 553117943 242419440 487169260 442573728 975119889 239851281 825468521 215092188 281474476 48489047 698790644 332351628 679376748 666307429 970471362 166834130 169396469 24330347 501247244 311449326 346959180 89471969 498488357 239958701 787225730 444112661 468246054 366525238 882876999 568087412 945077096 208923683 374999169 300737723 568508753 278019636 536079040 219229464 784961771 122084938 633928623 558607093 742275325 599308690 802047732 383229332 867732089 338001447 665224761 66611622 125490307 10048427 705665649 53635917 695102655 680616218 977163662 654291900 899811200 787342900 830579370 809934019 825431702 709443425 822660473 266645306 272662290 245002321 500965173 256872102 888358420 581503776 944000962 522326518 629522223 273851321 400347675 117943283 139922096 136512910 393981799 138585661 877857463 705043494 886982952 363671488 995322698 864428670 904296824 232543576 872360823 368916912 903026443 500780626 960227141 22753939 79158724 1628160 620208600 289176227 836403493 383605020 580025225 8496378 789835312 92713974 334519193 323201581 770125077 181370668 479972625 337316424 910666486 421482182 629193205 184445664 447860165 152742482 682432864 78877261 832312002 820917549 900640384 121789438 703488669 272269236 473048257 440330958 539285854 519465094 969687517 249168771 779950193 556799980 694867746 679017413 816018498 276533972 775120318 575763592 835894842 762711879 872917334 684010490 745990178 558105212 793534912 384382782 786505732 688787254 808581316 569517721 721362610 17775261 864937548 667834907 846055068 294532551 939104487 740615369 865688916 838729187 951648441 598518227 678430744 248631212 277610452 95738473 479864592 257977562 711136360 504151055 879664316 644157488 704997819 5437095 6374224 4407186 120810694 95335606 564732614 440746860 584373797 319722854 336350825 271206336 816825434 273955916 765292437 525696163 682063431 364460255 599120740 147116826 511238164 430157062 792335089 731767280 903405367 60337396 794593633 125959375 460927391 250543895 867816111 307060604 536639481 427341535 584108118 317332050 683374846 304865275 949278875 83476873 844068427 729216499 784769040 599856309 623029821 63111624 813939091 92123407 575677266 510739717 864677806 408370817 920079046 559187546 675267749 413333424 871319660 258241558 853551804 103849447 334698329 207657112 619607005 309634565 734221224 61405381 105481041 59713784 602763591 307920519 910680616 797009294 813110304 767019136 835576641 444797994 962346604 257933013 902776810 64648797 602180402 53583450 111277226 87787631 467734411 146404141 539086095 413721709 481496586 406131116 436061620 372364659 985149817 881737433 920651204 139372455 506870146 265524908 550198225 169275273 462792605 226681367 240339059 143051191 710311592 152210204 794363419 525140714 546664998 343218756 778560762 233547646 344550518 177386043 544225446 203568820 640904247 412526175 751783495 285082723 480547611 57925796 110052360 90055858 764596196 303240068 346751349 10725720 682712368 625850578 737376688 494238993 846172968 603140834 836088353 696674230 723868073 250611552 796824825 221253441 722176489 215578657 915752607 485006191 814480834 417180887 429305500 393255630 680303434 246361640 372774441 108016150 868765931 617929252 951698224 839849154 956427061 275180402 905542336 738377688 781749085 315378617 899049446 751304687 853617940 641425036 915559777 579833823 722914302 123278054 288216482 16602148 688200749 507299727 897581926 692547276 884217202 16506564 829754779 563681223 918205254 875310747 892565653 20643747 51195340 35960509 547430595 336381607 435699486 14169635 857690151 277911557 570653209 331215112 350772104 20957577 510872908 452010745 756986004 446217147 983051757 823194350 997107488 753494501 800916355 203764358 823251492 609586997 973190127 924817 698492130 104111646 860113058 379915044 621687018 368129281 410759195 24438621 177226234 148375815 637080087 103818417 610642877 437154000 911667472 200940446 818180579 149143792 665666167 456449856 535938730 373017402 809407368 693233764 941772766 870748619 914889371 236633695 453402494 285793395 524794939 473560190 898004682 699011449 901640053 317150353 364345585 241734185 934303557 552157055 650681379 616749897 727483229 70465056 565265225 288405451 642173399 298186191 300401604 215454162 858519423 245932939 779284308 427440781 571542520 220263674 836251565 338131406 517906430 301334957 432250408 414080883 457165608 408167747 896516068 352869117 652553352 65148575 742684309 127021663 950035292 1992044 330297541 297554327 694580515 45359150 103341860 20766295 451473842 237634683 272847987 47442468 505719182 92610744 229972574 117590791 848365975 70748551 973993045 108321329 717110034 441222316 508774067 343305539 464133585 341672555 756353439 713023078 796265026 783768135 941426231 933356071 995251602 744413917 952088198 75994141 207478401 141319726 160206479 69958732 335875472 243525817 731925792 230449704 249707219 97168167 872231758 235931000 361505209 45483539 85760918 78729852 376781304 45118272 425989209 143105421 594294409 453537301 909493927 621927437 950704606 728676554 977168490 76702687 989799080 273880419 463164691 261880103 640818991 411921146 710562504 106205967 742171619 505656399 810840886 448052706 768824318 575585744 645878906 89006413 556480817 293192428 680095233 342779487 458598297 179083913 300314292 269499009 324183619 264235768 548226624 365081212 709997000 89182367 296640748 140468868 225684318 154693077 162792172 116848611 708261351 617545236 824917147 118668826 182819412 98357133 858123049 771253506 988119980 563568436 861512501 839706980 990299381 123536988 539089223 516116145 930665337 528496759 702393653 650956695 712111152 648925962 827663720 391932489 898632058 124190054 170426071 105406020 119829307 43932351 522168481 265549343 621386084 205735245 513923664 4693015 231242324 55266103 624880113 505716415 537181659 247159829 651263450 62821140 904216545 232001455 941551086 754507675 999562470 690933888 734863234 721784852 775782216 443466336 654471627 491964939 779514353 403364958 521584472 262124512 547883396 79252425 756280326 439936012 697488523 547859992 630319167 158942990 825431424 460917872 756374271 90949242 230345393 3833966 557155429 187047220 442553931 111936726 121009888 108047164 543839780 184465730 463140737 231795596 499076487 350987394 857109771 828062097 916985587 481248288 483056490 410445190 518649756 457887786 496632017 92138080 696268036 451634866 463609238 427975168 431132695 16810201 625121131 18134119 916439223 430706698 495942830 50566953 636697750 66618372 472582295 111735675 935249253 533534430 921188912 316293363 419553473 76014467 654657426 312647033 763889698 316602574 520012461 414432953 737185047 474456223 718355900 456489873 811224850 793622877 855165509 59199850 978073559 439488735 610040165 247196760 708422954 260360155 842558286 417611432 631329353 151843611 367278425 208353473 932692611 763723359 811543687 256628853 789593074 148491623 398615549 207320915 367948318 239378985 910999606 421903507 834384429 524602267 903237467 607380204 790945307 94893652 893137853 877645782 909675333 823597117 987784321 488975825 558999426 44284155 380064100 130540013 833343277 811549026 936243527 169957477 551838572 307937396 481786344 73288685 130679285 58310182 497480172 22800570 274129165 31095281 270072679 36080426 689104552 153317869 902496633 11607956 502727866 25476825 452990451 449815610 839575859 482735758 994952917 536486129 758804032 410394700 556160406 276652502 784722299 240199638 721814663 649672556 692173175 627313666 804071736 723091436 723331141 563637211 873960832 429542985 959692054 64577407 482370571 34991805 87005136 20184096 111568480 106539477 211068513 7160641 734292221 585809950 963595887 157943750 332046899 89270728 590961964 190495435 929829345 25663144 851355213 672524265 942892525 334224362 726300156 420923250 519748325 135239419 289056799 194775035 669472493 654031908 769504883 175592624 221873923 94390380 489525340 138405255 212136558 70326721 556519471 78499932 279182097 157259769 459256346 177954458 290005929 25778491 101345050 29013971 970478245 619298483 755539343 168327480 397566305 3564488 929922461 570368921 696871601 531017971 739519365 102202780 282421620 226940868 525954630 373395853 397740365 247162184 895045283 495393875 749262500 232868118 247503148 28502283 307700792 142408278 792212557 83327980 827386358 517259811 560490679 292429641 944173649 908406120 915617732 149231654 224714880 223745970 486455121 166659338 469221666 467320372 559403611 425494850 736672449 585901582 728081938 203072625 960389227 166796223 808819204 410872823 937780619 870108336 892427754 453309256 687819468 549963870 897483035 461730408 717872450 277215079 280759349 189994593 957410135 514092403 735982325 15987952 817640129 817175593 947518768 271914852 618402539 515047999 682447159 459410705 914485736 306463639 799233078 58413475 970595467 356755375 639689137 195513860 548839273 27563547 780124631 452343198 481901577 216988700 939188311 487785345 492495795 17428007 387723154 309811857 450110431 271129862 303707352 134642094 467575159 184379431 886672430 286688490 909603126 169410921 781690728 689367351 819735677 647634944 661927670 538842607 676591693 591643819 932468505 160940345 496122431 415882638 999495765 737257730 954524971 756759072 995939199 449417556 784085189 378432771 629508884 38356328 478916609 11356156 476950242 421144973 807274991 623646672 705378655 112075117 444833078 155186829 959942447 363916842 603247798 361239801 601566670 195370456 423032380 45857201 201238843 86540733 187914354 89053568 565421370 108787838 432378767 13890949 315770385 232808756 255854965 249243831 719252187 56657482 547012478 232919550 716750625 502826062 792308563 681375869 880868535 259680638 816831795 682599448 719999276 610037330 661025827 566254756 985829226 616027173 802340967 364499046 763788639 660427293 858066241 727240773 790152330 526561193 841554337 657480457 826776846 394159974 472829336 231488723 807226626 332773927 896777742 413752194 762924335 22398746 365628844 5220775 594279445 465196542 672177647 336080012 875648614 322174614 781849588 42883185 570806296 231315008 798874001 768536442 872600332 773841722 921281530 413080932 860595493 385442885 897762398 518279266 921753303 430362620 542094008 507260678 857699390 798518752 968375694 5698280 515439939 466594922 815127707 471387161 594594829 462458312 702456704 38774744 174153556 53590646 796525130 614327269 970186663 274360003 487226226 78868879 655608126 563981324 796978247 794780944 972897970 219000759 419903395 498544 640731235 262716863 582623366 186739247 543654100 166855025 611601751 163337961 490079651 363033180 874674241 171771110 405379917 330135783 768861763 724864994 743535643 138973888 770920521 353503068 545974691 44853196 567440285 76803896 405386075 350783067 859104635 80459031 783753297 295018096 775421543 95089035 380330118 337006393 879757943 121700519 496322175 187722617 783437988 524218831 589002905 17094034 261310089 150114142 619552854 182027304 380285129 94097332 688533270 244465761 284370787 238743033 309719445 89966175 270458628 176954235 177480901 55132599 337963846 65495818 240863846 232864437 259345320 98973711 782118973 669749129 819851096 229476486 270918265 83593959 278083065 227437364 362567133 179802368 212089117 188816876 514452874 435403387 578498881 72329138 534957633 23340698 272602697 73140122 399901258 69146784 662838154 656813221 808688283 755226272 969430616 45599625 112428811 56180363 843993385 645625774 712799028 431918691 516220372 144759758 711591439 370956455 375078704 151298178 390101305 358014206 790581654 118287368 381725300 266126309 847749486 434509958 465751085 163009145 734562872 139215634 799134029 220908879 734761782 655187083 699175593 4871108 125855213 53139524 734441269 622688821 936534449 455916840 990546429 836588232 925899145 820245028 822152687 335360964 412747876 155863813 463623725 252711642 310239886 187322391 412195450 248190185 386221268 167302451 779677059 687315065 849680189 55932770 756875112 207264502 360876977 175372067 417358395 9317132 768510985 396678828 423286146 156422137 175611751 23081274 809639761 123951550 640563351 530112952 993861766 665266425 937020695 427540114 944969453 335284196 859815529 348697451 527184871 80589215 473305026 284499607 671033261 469733070 634916947 155358821 356106581 16133290 678682011 228016211 570243028 66121197 322828773 247841470 554048532 221304968 749363774 520228644 985557292 496856258 589534047 207824795 228385207 124344537 437947649 383896638 777077691 740129893 866796920 198405413 617646965 160773448 292418657 237486982 833231619 678765023 749976644 347750994 798827348 66703682 491287770 356354361 918037847 419419804 461609092 177685 255553330 143822709 500425996 285066668 376207399 36137671 531955952 48940495 270634801 86861356 103928252 38781574 449105133 105027484 244054658 86353102 956836134 672728172 790978466 788845159 974762608 440392134 550554076 347790450 584705612 144286502 345280436 208471856 433108509 428838230 713785848 385545266 447670133 347913843 491008782 306519727 418862592 52588902 988487560 687319176 826779359 619622188 900498671 617510378 969888567 827663980 901184353 581863434 635984184 493414109 838696996 216516881 223229174 156781636 975854824 196832797 733040512 588124413 775175948 8177567 966971767 768230078 937729588 102183303 419308536 79161313 695968886 255095002 707470497 705402547 860411372 242483975 365584557 338365045 849116306 346426892 592458061 50474036 829058698 96553719 812950170 783499424 950397915 398677987 415934258 289000833 723971494 356931032 727075318 619731162 848682793 639441382 913545973 516328463 663894708 34867344 849262988 269822315 435140144 403891914 890508292 81094136 402182352 199590237 443050228 203591132 388943680 133461647 752103379 131660512 465189283 215104437 716433727 230812394 693069940 224620748 677129059 80517909 683748943 647254068 951012516 812823564 827264259 358100253 924470507 166549219 566392721 297916186 529101827 514386811 990506926 689963985 803463372 102753493 587354788 495247910 749066884 585082325 590100679 397045810 570185602 349528051 445837584 134515890 358198554 265651269 376985373 371533296 957570515 18754960 661069914 316084866 829505805 545670980 943881519 125552149 406572303 153781952 167211884 70387520 99486087 22767340 433944657 222314861 304722456 187876756 383661449 13361356 179523603 33591441 247838531 29092075 835597734 494285586 859146201 221980347 244501212 76309200 347262496 69070620 378255092 341900876 398165347 124324286 912210204 891812632 949084424 382443818 607739895 151110111 231714752 192429912 460010357 22041600 867934808 795142592 864164097 586446226 842319529 230241168 419615239 404077583 501394390 318068579 690348147 302790986 713548617 15063234 479274679 4023543 913229427 246221454 340013014 202800466 573034905 525557990 768238229 338523391 944211669 196287647 298361538 24903611 675979974 235191087 320796214 194339092 693733114 165219888 166231243 24641897 414652613 325408528 757578415 596958778 853426632 842924150 990210848 868615592 888348331 301022088 608253417 150532316 708875056 188832742 935886284 697639349 795179202 742808856 929257703 315731593 960125327 95512201 874858441 578223542 989304540 861397276 943375787 493453768 763478776 662639149 764244163 467562863 947362151 404531407 497810155 372427541 978673942 914634512 992138020 776445264 920621967 559802415 615008336 518056092 967499064 317363739 618350432 615561926 815001294 575494274 761174141 537885567 619081878 368758739 915497308 61628830 300320086 13879224 491391538 313652061 420916380 98965137 627053960 495855908 664331913 167015190 618663607 483397631 942392585 166335610 506772956 472696035 491359658 318999092 320244570 61672796 84341207 16559708 113961459 67042677 79404347 51491706 776734513 118072039 792811180 679724752 921763875 134985981 857713940 618553876 979274774 71433843 72800195 67021773 549855509 496897330 924545090 406027806 832321123 123758666 504510572 118022729 952772950 229336108 633016178 269641951 868756106 298851458 817264814 338854954 725399569 656946945 748602772 563962048 669846913 632777165 683352505 501808949 745644186 324582063 899696957 583162881 689902484 353267899 826995007 603140246 766553026 324249418 637907634 362709850 671982252 220308807 472462827 102672950 479736702 298340809 593685118 216939882 571034431 33137617 131119998 64827467 403808374 159314600 399284354 203680653 260037421 37036407 341578444 317867860 617777091 167649428 177939470 49937587 177344710 55126818 858968077 699220094 924147023 47733493 145627811 42580380 874031012 837879168 874425266 47513624 58971217 31237783 934095839 780867002 899654101 595176991 866878227 436357631 625474541 1433305 108630954 46482940 358981185 162862352 992279308 793523280 887922790 457016590 865274201 360828820 707647322 587552265 909465164 185018474 732464208 426376578 702135310 696157812 728915516 560752301 671869411 512162642 907022592 251427004 862296473 185475970 743515939 576658306 616674841 119135669 752142223 3725404 825763706 315106120 864946503 243697976 786979822 68091041 822515659 579555433 662677313 608961320 636226968 482178529 689895812 621338929 968683642 745268449 976021022 540251122 688635275 6393523 495914557 222552398 373318782 182423259 825990516 192868254 853553027 647541273 666624546 275032105 479903936 418690871 520123465 137352826 485748146 97353219 280093781 134763684 956923646 442786308 875528507 263803488 761550636 98382589 626281872 418051147 677776830 540639556 962891071 145901028 781613970 658766926 893665833 644542304 825125679 705263594 887437968 611666437 840900399 743476563 958107252 320074110 421395202 190231214 808927224 22077945 81549472 66703237 820070345 736957066 932969572 21683808 603703922 253128837 701680042 415152287 776938832 515098794 550707287 34313475 211834140 165768082 513255655 127640674 441372855 302131298 832281148 486678297 833778514 767731988 976160034 117468501 562797601 139575092 238145864 33147878 434039723 390665028 807496983 772964261 904073468 257433808 870619358 269583420 345886296 56418376 782374492 412465434 831800811 83933262 438949935 418647599 431967438 308393155 977962439 135474246 426305394 274945686 630503355 316867822 558455680 266030080 846129003 431694577 736305851 13600313 369059228 81512536 969767727 230606891 360203075 304023745 562139046 11282272 700015206 148462860 657493701 466105562 722420123 127815564 417421633 82224274 108326747 107274875 747459688 130633121 821454911 431381781 763795829 157326541 902529315 697331672 782547133 747670286 999686255 644084797 758166606 677735596 723238954 268819930 277179501 212346364 361791310 97868940 496630768 305530352 760720283 231711455 579030628 3456039 685415927 172241984 811517589 397224650 952884025 537521462 963981339 385269817 689314925 169369248 534708900 481492964 524526708 515532893 774376421 590600488 657027241 172187688 737568348 356148393 895141737 35223262 266573279 123751735 707066659 109918770 125889483 62226282 418010532 292734738 722646960 210672740 541378822 351309949 541228645 411322692 698843628 80693430 237612715 15099512 146717631 129849934 385498878 100176168 339315112 136135413 714855984 573020681 718501856 622535971 747431060 452854191 766687926 748736799 996559965 104529552 370506228 14245442 783452928 654575624 786432063 294248568 563644814 215098256 305151587 84356012 363626354 104934862 646167972 301467786 654098347 381562212 405171432 295654241 599659216 81240308 981835688 128900634 973144103 870077756 906524644 483735868 678721399 612451822 975746213 885579925 950130211 875558480 940667836 223794532 530152015 244769742 377737587 200263423 965974951 456410037 641961610 459786260 904644724 793958918 860189412 842502336 958916985 298672053 921965558 306198008 936162697 382226580 568211294 288721479 747115678 297128774 623786237 376161503 894403671 423346624 640399839 164438655 210224101 56803141 344436439 124911415 204268465 110532763 669436320 122836917 556736817 35643809 96788644 81183054 786897228 422097914 918199232 293112228 333903354 326698349 634183634 345378164 610232416 583213565 838568112 449618039 994351038 277700582 695344556 654921085 961026749 77234562 188914972 133411863 185354008 27975528 854183805 741705756 759589478 597367169 982782754 449347994 829168958 739322009 980259563 746576276 748595497 363624016 904359323 48084585 566075472 265628600 280197624 245122562 742817156 97023822 907583765 722947139 823667374 52501882 704681361 32974080 529924097 103876218 993572742 499526130 610484877 528388920 999209703 332360348 656416545 643914018 684881814 404884031 543709481 397249916 563558980 47299320 585647620 458430459 513686428 495732811 734562632 507767817 924912670 419094544 833425852 88351359 920797319 450009444 494223960 86834478 516448282 292107321 888846992 535140515 950507950 433680824 508798911 18416759 473352949 54133682 270516163 182713831 791056473 405187481 554476941 453105527 926815680 825553167 909103513 584986687 746693582 197752864 777455135 722307310 894519051 186946396 790359638 254522881 558939801 157409274 370174305 193877872 515492447 408319999 789502181 86489363 707687339 25579655 762585546 201633289 746105420 514425304 861131641 655577910 906867908 12987654 583596671 387199975 419625861 339723721 349355672 7879065 174325685 100033837 243446048 128507191 579428960 294708701 693314575 42346785 69523581 38714617 886161823 151361943 454016315 269911390 350770841 348590002 519342838 329704983 378683709 117376241 652611178 236784183 351540333 299006580 446559851 17462561 938420948 516729089 895341804 378949187 920307087 792439258 823533527 445000380 778573291 347542203 587536664 461193017 697873278 658317095 966252249 564796152 688035779 118705956 327305445 205975616 831019310 551536045 775104405 215211563 732777550 126631859 909331560 849116699 862379995 446823390 568016367 395784897 993688277 952514354 959125645 825777716 928763502 456930234 565362689 448484821 587948033 37643166 347756828 95631258 661004629 301607601 463657332 161116637 901796548 420894268 424235958 48116952 54466865 29875312 794390852 32809941 161380463 115214503 825409141 751221628 837225482 307877740 393424210 202276556 957183146 907975533 990973028 15598600 80836009 4386589 89984657 85285657 718812188 100867774 842434645 106174758 484153386 125967570 488947721 218142905 238294002 234206121 980642673 895047076 957867267 198760053 637328475 156805536 365731366 333258220 908726084 676510672 898174247 635861911 739532128 27336096 434603040 270822785 510529863 62141576 299592398 233668729 888374082 382137524 808198160 470382664 933324159 459954295 761501491 538136689 995668279 902508917 959423185 69761006 815728118 573266184 674973029 528225998 728337584 142729633 147092047 65429223 821095475 789173747 891662934 712169277 846248989 262750330 579873984 162610372 886678839 568323905 598802011 250249068 890697387 400755335 890627823 578398800 663976109 132466239 428895856 133245290 240851013 40125526 169075762 24566154 563127838 518877397 591891430 307483683 681016705 394882991 422827909 301180935 703250582 269190494 505012318 203789758 459820915 361818863 718875866 262808591 923142172 13683470 61356439 57727441 487467929 130753567 934541832 841302948 933674215 181279436 530174772 456725030 849905579 444277569 848850693 724966695 729954267 553132136 868674172 327289885 595978147 353769791 583595974 311660442 645172461 477699028 781803332 98758130 628043162 66443380 175002691 7866139 68805098 2102070 467193186 149095514 166423880 120730032 641603330 393267401 484173109 128245916 247291572 39674621 93551715 49618206 486265637 15257887 936493465 353684336 735159681 279695699 889077600 444138377 687273960 266620379 351078584 53396787 793532439 414215881 726686982 360551822 515205233 194507005 804592982 772521913 800799152 566755098 853430007 468811644 843225481 587798861 858633714 228617068 947409715 296662964 507382824 362856451 554369442 130841298 343765344 341223098 499338682 99772940 808078842 424993473 577638638 172917208 757341642 694089324 843960601 306542239 663954017 564811095 805867548 783866998 902681394 401599649 736007963 119518884 945986432 199291214 303283683 78990650 993018889 146251644 976910219 8874696 77639167 19491158 348866349 307439143 862665849 320283270 705902315 101394015 949285769 829893207 848060945 736865505 748429791 258576396 867328916 352218596 780352276 38123559 722546396 400821233 450722505 180915908 587856047 580345036 808066089 122469774 973821346 226573097 837921809 611581924 852807324 173542097 509308794 174458716 615264429 217926760 755662223 591850600 794348551 764792327 914832001 290720819 558792287 197488429 748011229 567563290 625454758 348857637 987451546 487490898 674175228 252380670 462828502 437114169 473444655 279901813 757437421 718469360 974516350 610771986 723420073 407501300 461761457 444255914 854298216 337736534 851698931 600893967 943880349 637604489 826998637 818840372 876536916 86720875 317587576 301750770 716735912 372677395 809202502 465089921 875566425 597537314 862831505 511347562 569209814 491441572 741364375 203219682 968367756 243614098 895145481 322401482 614956914 571356171 708636158 382648417 574868906 132003762 413791869 309041363 908461403 345718196 588524806 90696536 461639187 423070264 657539089 528609681 912851229 741905881 869600259 90287409 758711846 520048829 523872900 429612593 850907657 353936035 395387580 360011127 976227695 226064032 351230711 222675201 767477806 611423001 881359089 726224428 740683469 624574109 937393399 293777149 348158746 313525487 644104234 512815082 800180386 148814417 321105849 221940130 940269337 495008711 569437873 553545085 779869353 467296138 959904191 491552132 495317217 434969426 978554696 484699588 781976600 578640643 759405878 112956726 599548048 26707714 625786011 114489134 757739530 296757363 619125694 50217011 969199623 801016414 844459989 70657182 159824347 31564162 156062709 86603644 308777336 98564092 106822118 14994698 759049661 544233080 553327175 161733619 884581929 822525350 981511932 363000999 767802522 167312660 471699343 40064400 874143285 85447319 541066677 397203139 551602153 128398320 554652189 381870843 743646515 80516960 735945901 396928873 806163145 301405865 971968930 231059777 419121634 287674550 514184152 196682529 582542107 123733765 365100538 338394154 748294190 234576292 578673915 282477837 620992762 402046334 453339593 263898006 378287639 19096753 743543317 165539495 199319297 89922681 215755856 52795750 664341719 619081557 812605878 351911428 588371334 437670607 834674895 808314913 814006906 590708952 627938572 96415857 375684865 343658842 496674156 44531054 507089987 156924016 499835143 164806699 312017866 164589870 608125711 589685804 716681239 59345157 405942226 49324530 411881405 293737630 509257861 487282009 908336494 272206092 546738816 316093708 562710106 306883676 607938295 567499348 635201961 467123805 690064699 109937027 948448046 281350644 730407705 490194293 754976380 221479695 478452614 101656869 457630258 397575255 970450001 53060630 845490352 340805404 911328815 272403848 481811193 367938255 570802656 486161039 993114228 205993061 886216942 560530792 562410302 133295970 906695203 736797228 762660645 469929000 569551068 270456487 541898136 418650880 935627371 109886018 112093103 99558713 154663135 10557705 59582798 16394542 892621903 269601752 624959377 530901833 806270732 454399655 461917236 118623124 274879733 51113204 318537020 299210749 650984371 22616563 229000635 19135212 108538934 28914743 944169554 250600428 549790615 541661923 899145233 509427527 772980852 593376937 913617674 125883658 558512371 283722188 910255961 705131143 926452720 781200380 982200006 57543848 997950381 508214829 830525945 458868215 910841944 160275676 940758022 938859863 959806662 259390342 613663412 283743267 388511932 72376943 560269946 251486672 722645755 643495641 724899202 352203223 408819702 188420856 336074882 30900603 287578495 11007861 728061007 163972428 263880207 259376207 604023412 201210795 455346263 53349121 335096475 148028202 514551495 107015104 299810400 169757332 870779922 290986723 764661956 223970065 427836803 313849747 424374022 277388033 364107858 46597776 725242585 694139345 858329000 60371606 628614061 558823507 846027947 159348733 332852713 244358871 696948053 451687113 569397771 29333981 691460009 54009310 763926974 521355719 944153997 242577761 933422039 264310854 524313878 461538815 866921674 703327215 896845390 631647533 990000671 230016487 501450882 334290582 369802774 194001051 387342016 238688194 406432685 89023102 185470082 107969101 220259033 136365090 251030056 198725338 307130155 225992444 583785684 342992984 350949781 236188266 353095546 43397024 383061853 48898387 951535501 552953817 769605950 27088918 884262760 8494612 680339892 252832939 690463051 534134384 594034683 540297472 578530867 483431365 857638634 630040978 705874253 73745514 252815793 135128180 969415911 262348404 269835205 200459923 381025536 277667302 977398092 209935956 889551484 804145656 943222387 455828645 663107962 55000876 490538434 189439349 948713772 330302677 779934693 744645232 764902840 656059803 731897347 342185830 520609313 59188687 696818956 23266768 243295039 23812203 600093595 468360829 548761835 28729975 706978813 352937815 858466968 213842258 566926927 254172125 837616198 185950894 744957525 100417468 723923215 87094328 369343027 158540460 338033970 110716093 812731913 775962235 875645676 517877541 700171782 244427970 328038352 268412808 936759108 245122493 546576787 522517691 777863711 444635951 924965775 249489102 577672723 117946742 347904500 319728111 862141501 736488267 927018644 516695653 833362645 693135966 969755835 902123173 946398926 311526815 986288391 191095773 753681041 483656534 516769932 194358042 386360753 325120746 340396806 279823929 806972650 539932746 591467219 334851205 829295395 36191608 424867819 346424604 433088207 377203537 702847817 13912580 428703940 126918722 530350388 311884307 967386943 480970015 682060818 328778245 538496935 191137214 765712579 696555154 758732342 359637550 821637458 423718008 922075511 400222146 667907382 87997005 183606564 100655506 907939000 314720997 719300249 589445046 966529814 249039133 857289660 675400441 979983774 864360001 892864345 144078847 922028228 348965363 515349950 432799347 440641173 318302620 667504508 180401654 607938516 386789174 659813642 424143976 427486038 229361501 826870220 701561844 885467986 177996631 403995175 109977004 648198399 460690428 884254988 644000106 826317544 787404602 803433368 672161251 858159262 701933061 981727259 368754622 866572628 161352239 912751937 912410208 985911053 276808107 339959093 328662462 627398345 519497296 745079861 646557976 921233651 155523569 418036021 257143336 274869568 19091190 618712836 548106179 644854667 261465700 568935434 262670996 355966888 81779383 289142136 259934990 965258937 364718507 772611031 273690687 578947561 249977573 943063042 696477481 802284633 720530474 763465600 487393021 634591772 582134058 993116838 661710039 712629334 593936624 665693288 554481077 876963224 324882229 467232371 380773714 562309561 86509832 356310255 86652900 909879852 532104110 782680815 253853998 559136603 264874830 738402352 390315285 904135848 114267720 722478133 211314651 271415761 258674968 336849903 118538975 355503448 240042039 790174760 748374945 908206639 175096380 519885102 75154681 209601812 63429133 746616604 657410810 886765115 757542501 891317281 889867427 973522316 893629861 915980471 353878363 751548957 218747295 503559909 90272913 617365648 348908907 720536192 490170549 762620452 349826812 896150326 135473685 836546485 565304873 715858929 583504981 752004163 369603361 423181969 265763282 612054315 6894298 597522569 178598861 190978060 34769423 559605303 244274678 956459740 424097031 828607525 54745053 214998173 213182415 224793288 84278325 127775938 7538623 506024635 257671172 834288967 508872304 570655109 540547041 978725876 525123837 930624070 661966261 692337610 4286660 243590879 234141017 952176708 697394017 788933887 661684580 720058001 59763009 574763950 233287998 391314616 60792491 978985123 29989426 839197056 677043076 908338016 695376552 781352330 664336926 849159881 252687475 737812714 66073847 982033918 443157655 883662849 380924722 427494465 334528925 535182259 101590858 491704167 428176033 527386824 295149344 832762929 779221384 935080161 693768472 963546657 918379096 966715743 601989893 998494353 892522827 954308059 338813068 905255851 219315007 806593902 210890832 581621009 105051570 127721468 46029969 111827245 43738199 287903107 283172288 744152266 377474778 765355928 631151265 967377782 290759326 409210324 373199718 523854931 37831491 822165260 404530507 937905734 224717417 586267349 467582546 591080277 414129220 869082573 237681875 785692841 60670422 762414090 500341364 761733206 431251486 873252785 427977167 732834308 83483665 731771668 651265426 756186768 615676759 713242213 65166660 408367497 286435838 524346021 467350786 490398560 169256412 231418493 92576644 285802686 190250445 530472079 124635395 964553452 524742896 671192607 636419169 729505974 650043329 667387400 71851632 801241619 430625020 869141466 314588264 919054922 236470333 580603907 238235175 568333430 8480947 200762981 10007927 786276789 716243704 922601954 836167888 962352102 22360471 60577567 43331227 502053667 287874132 957972888 613332004 907959606 644802519 677590389 373096376 390944294 282539132 798283800 402689792 488206186 249748555 327417997 194742661 492541631 62225055 753355509 295286118 414861316 92062984 780170766 722143877 950712611 909886089 993387215 805747517 909654744 103534018 761867319 338088922 935085334 433176092 964553763 712156050 958901460 793193746 900497249 404987421 720868369 430514406 688812392 463640640 898788642 865440610 887705673 312292504 539813428 326110268 668350917 321622545 957089560 497100906 700965045 401559312 438342494 251910016 416803464 223487134 564665338 95640118 319310775 209628792 461749901 220931459 254038939 202882010 344318634 303914478 742245025 524072130 759129815 319269338 539479652 214112186 255041331 74017143 981861698 677989268 912858450 301159055 512297641 343086997 400056500 129388417 581708447 234116226 379624885 253038747 360305681 316387450 488493919 285776440 606690972 463799354 757611934 343270451 577324028 215965950 325059981 16311693 565927673 271302853 468109954 78778518 256279809 167643333 615417356 70492741 96069279 72984534 234357382 182333496 584490388 146391370 222718702 31117274 265166302 144867308 171089382 99718836 384012309 20168303 529002805 313202247 554198457 207878708 756964576 32735351 338970374 20722116 478364528 123510871 832055506 242565953 790827757 227969409 930040762 331615456 395115252 20722340 384974342 380804261 672214658 223333034 839646285 767537882 782489291 137542380 607526443 101907198 781749961 84256734 665776266 506877891 526971166 515025827 588783734 33627910 265344609 263542159 343570978 14496629 930030977 761261313 987857341 64686466 111544283 44558973 629363032 260552176 633431477 210177510 440148810 17685625 985102167 574819760 933888274 720739650 947452513 211820635 590770415 127298326 551012339 257668737 323558327 219179471 850382824 600005065 624781727 177028431 684689652 346965064 652234752 258136461 480181993 293316380 498072487 457058905 963353246 893769172 964833146 2155536 641855667 57831372 847535291 846890024 927280004 37655597 195116488 35737915 436235315 270031391 972960858 25350237 118558433 24856418 324289353 236948950 319848177 174083419 452234075 322055945 864460218 30353180 445246224 245672095 940037500 253772648 644169250 19832509 456474216 81728741 110709291 75210200 787270811 340075067 823872276 599305821 611604164 512401648 908216752 167499400 994263162 51977729 659393927 602013959 685909915 154493542 984574589 708595868 723786806 306212337 342378016 71902701 422953884 222339571 710770496 326425588 407569706 372309745 590109642 327390245 358155077 197144023 568126067 512278172 678532056 91310188 302874398 54138822 913472338 292400194 544037525 143498660 416563534 151685076 213175035 189871523 425779103 190614264 351593744 110176385 981611479 382043196 821985292 768614470 861612526 487073744 565098767 384693211 947213338 14486055 670662308 105815976 992524187 136335513 367820699 336219334 929614478 225525643 531294518 396588505 927410569 188750834 363558564 252621384 391746078 293090507 832810643 651720453 876474905 705738687 989353367 87650052 235174794 105772717 195748588 161612636 781642914 202045526 744269089 602420773 937701668 209561517 907273577 345911555 525830739 504961154 626869456 206653335 463272863 235469514 461624835 312832946 871756621 531889009 724925026 287494590 739128663 443268938 756893434 715338925 801843938 278649541 376496341 62068187 662689707 158342636 256372427 100590490 580856272 236553922 468353644 48862279 228215312 77387166 981842196 297487439 874051539 15460892 53481813 41727035 224307056 155131434 714098705 636526140 957238385 193739319 292616873 108743565 331861921 128189045 604019494 565931334 655836252 125312561 525060156 305246776 469811629 219204228 749185526 467864912 789378259 527939527 648635122 566885517 712050454 27924472 706471157 679087767 999932116 898379236 928943875 375037755 386769859 233363441 325131269 33670070 216867146 185051065 414444128 23269968 107443102 3244790 375989866 308018825 804039650 508037701 655297028 122834653 648822932 372532642 941385384 15241906 874896793 471103580 732903269 290994643 915882095 136306587 469587742 208781458 590085608 58458824 79398929 57965913 514563411 154491081 591510179 337830048 950697097 88090137 547749340 455383308 533110915 318374960 680905449 331029115 949856394 224327359 277458946 61910568 389938534 205896280 559952975 299406278 830917969 30962619 876657971 36319932 998565154 272072661 319030190 294641299 951996888 36747229 818751875 475882925 902078602 473508311 830509268 104976718 352666107 232951213 797030514 125581606 633232585 1699175 863708491 522765849 715639231 439092055 540657091 352603771 448663209 72714823 780456206 181880116 189595448 164271592 736647428 464292945 711536429 258669871 730626934 341247498 527491683 28098555 801139747 142257517 746567349 248203930 631302369 51804582 779832376 677504765 884126598 214741364 742725263 212895866 652497731 79848899 456353249 442447884 735720879 652599592 801759431 284407184 660573210 368505058 939444886 92967522 475048076 69220179 437289314 244739806 527459502 172330258 538145283 175213219 674601210 164952582 400370002 224023453 742351245 582364271 763879912 391955846 793854912 48019458 467315991 134793279 687387308 119309498 618580568 303663226 928693809 280068208 953923608 388659180 558849653 165968474 609612097 162776777 503614194 140379437 189053838 159865894 441762832 339679232 386507709 139639021 634514636 209735891 276063063 154670664 824691130 352765945 902631205 209801128 326003528 65319136 967869418 553099389 618841905 527914613 697128226 294412440 302142129 260598976 932756027 732542882 867646110 401275423 706396894 85335157 115242192 79050271 79926902 16392042 191000392 113865930 421510129 255778630 530934924 343400139 533747521 145681005 227743879 125584445 293781650 237308210 368756936 287683328 741125038 100523352 322269202 171160027 839746685 122681707 309071468 142792126 706120873 303870680 707532149 48883536 158614133 1740003 97509145 75525329 613159881 147753205 626253273 151337408 701420172 319972804 408352945 157197072 255839478 167156961 977076785 598770776 935764246 317314323 506347186 373287649 505173970 189917158 210624820 153106224 760303904 382203150 696754275 670081940 885696584 660987495 778506028 648488113 818060677 774093527 780774644 741049619 921317480 760437866 999330841 327591478 976033879 717860799 817246523 739062102 893503082 178177113 949522298 639884235 730068626 332042457 707751557 104044101 202655862 128182489 846454169 726533910 904925485 604809196 953075268 433215417 540523748 255338068 609696925 23584490 98192335 35230083 296426972 2640123 832389100 511572428 579334617 330428135 632571514 277567694 632128441 411906880 610186188 8915423 374859396 144115408 338529646 265451350 937395980 718834724 765809699 69991740 327315064 190828995 422796701 6769952 248307902 90381872 382312975 299989830 443299468 61726477 171162817 102774819 259988574 218238448 961732434 731711856 886444499 279004660 901506398 364045569 461897129 197871182 409263497 357998305 656742638 323658744 611862870 51567874 326478627 106477086 455503433 231631950 667613567 38841517 969060606 473653881 913033822 643502797 898398320 587589793 969034898 803575493 883790146 870370963 911248036 215023612 776501139 471789947 546608782 529199207 889351166 105036282 793319743 518461784 673112206 43349347 208920633 69887353 531171765 284675862 717970563 496862673 722060976 500381970 645962860 287216407 644427851 569383732 810577779 779377843 882210626 396849198 586975258 550112380 595194541 356221799 517588541 494276680 663960523 340232925 513359511 373430663 516514605 502403077 789527208 643064272 684627769 501799467 850349710 34394098 164720292 119684524 805199526 316493960 418807032 4474653 764951972 309901871 666996538 431568472 723864784 334625937 517627869 168890419 908103422 353383980 991556585 696112833 799595918 176169557 231420953 210440063 716856194 371431428 927150421 751927811 974539938 765242513 996682731 360730034 490835640 222668246 425691269 331491408 365018956 113896064 468584540 65751508 784830503 552655059 808712609 563352464 701024388 115240072 253869878 126052093 910265023 256807778 694739783 477653391 881382386 319656213 423740164 318060375 393313415 13632397 527966221 199132761 218260928 72701133 557304582 397929161 866704568 600172459 620212275 554678765 709345629 454685307 592893284 195488786 226393108 133147691 691117330 468604549 777832288 332531537 817154193 583522473 979280295 245968448 278032896 164168100 409752707 388504359 865255604 583822964 965011478 643089321 834844831 661412273 913761891 692560412 898020034 297191689 911497843 374790800 721495605 38858544 889305237 89623057 727791750 451222587 780530508 501016771 746997940 37685394 775734885 651744919 845835256 573636032 982550628 520627592 798116773 145293058 755400969 663610372 981609483 245314649 531155770 120417836 905889596 50138830 740128129 233788568 302806186 70628030 451320141 31654179 302880931 197621890 544540056 325593530 828283001 649745436 931097173 712937229 778170702 77566908 734541653 478550632 764647432 630040288 897873076 749970902 795360080 734014555 917526295 844243161 979935761 763210854 809947312 708666788 767442708 134548270 231937322 103418836 674237315 508451443 649371660 464889767 936392570 810785434 814941718 120599875 710826710 680488261 969789913 633420706 973765807 158517054 688848251 127766222 975781796 160101973 247212928 55034462 400991209 4571783 708265277 219919474 449977597 254596191 539348442 399085292 828628952 787582571 978752632 367512565 652465796 635824942 668359685 248108357 994092278 943565077 951207833 104681942 529965902 28270469 868062913 831951149 905808452 2288282 499809090 449437559 812825406 199969857 669064108 365105843 396210462 230576363 976402723 227495473 845889345 641513968 854638687 581866221 809950001 435169737 636493088 256063468 741043904 502898540 642022973 348704382 904186779 312318316 398375512 96784371 841159265 105236581 608013615 181974155 985530922 981171913 993043253 93053087 742414871 287572927 443268733 238090336 359936438 204725917 645493698 322541333 879100875 656555892 812787200 651697436 794324970 447408336 741635705 196229240 831489895 3294317 456185655 60798370 466270093 14709480 782907102 262631935 351555414 256022845 834528001 535180837 646981406 250652961 851599412 162993682 216919881 132737765 886352050 565143300 735441194 37785287 452983935 352207844 685959585 507492744 614501454 179228257 739968221 501694331 633304604 29130641 290972365 46966086 923605807 739953827 960091298 156696245 508560548 179393749 346419321 129451339 333387838 130536039 421824909 139671951 710020444 32562806 402132569 298389797 854900955 834388263 883658776 59876901 995411139 70257315 749336895 200648692 388894701 260496380 272449957 47691058 513665436 487603801 564378887 521203042 883063247 101260693 769279808 421748962 648504274 363236050 532258431 120955164 882645693 835028216 999580184 997070730 997938265 211347544 894228216 439270381 977422047 49392319 676360510 120873607 616460590 233993681 688585562 15060377 582280377 579453277 728619966 437611901 896232179 477240565 875342523 792018429 855808341 133924592 611227852 164312606 507804753 449084627 547135771 229614572 420545852 364295191 700868493 49517482 103892473 79674900 809158394 122990223 370349643 74807726 527440694 244852753 250685338 194823364 721243009 139874720 261432608 71677998 621468078 518170380 627775557 83361457 563769015 216529286 618755001 510763356 683388667 620587301 998318841 246400277 887038129 479594322 664771749 245309211 882248513 640067544 930408772 184879619 403699270 332442280 700213499 394088422 960838840 146611937 198321157 6319621 558314058 340377474 574506583 43504470 183717899 156149408 679589602 584004319 903265031 269843721 360467133 181968376 615882405 296832664 971250177 233119625 564735651 199700397 359769511 348000799 414958128 16599797 576203586 403800742 494068554 459639483 972810919 96567286 737555330 21787025 331510928 107557341 931107250 556774207 750351241 563713927 917869103 225649140 676859238 33560723 138792799 12200324 228054074 177644654 183018543 84221530 141727061 21693879 59752585 51809756 377689959 242560273 541220117 354800652 444898781 312414683 912432248 858510567 933504350 588604482 780932347 234244292 585122247 302746218 791991598 486950141 504947865 346613732 878551862 752116927 979535052 245639088 412756243 87828561 199230441 102611781 474210978 147815221 870026734 88757383 312948004 25376301 895941803 512555753 527363473 197639455 526928338 154841076 992651122 410460024 729616558 291954662 477740922 103598107 817442166 651352040 682348976 141062245 630122687 50929208 271388807 158117477 716229226 580151571 664173039 137517920 418634888 333498308 883576833 73854524 411918822 360162161 754805445 304310448 415541613 87908297 978473419 232335451 333975579 294252411 993327263 950742408 987495204 177500084 358584990 296963562 466139598 165639675 418837277 342100079 873892827 210660015 382197984 204257647 319746554 172955209 262306763 213925412 967244739 543681861 608040214 377293130 675858499 562684058 883951316 872705155 994072454 314826696 758611570 354104453 599601907 75353746 566985005 256560279 552160238 475261023 942317242 283051051 708337097 342576271 349847320 237844515 547773847 397198051 417397599 285523232 768537444 172984151 783896907 780091287 936792866 400561064 927697456 314812967 811144619 382604127 561388105 294598589 487763044 138563771 877742826 877561539 993322679 795288919 863555616 303891023 644878934 325088137 801669408 597590308 675466681 642378599 711367420 546643816 551988466 489953519 942625412 723128149 799248588 615878846 970916211 877238952 882137781 12129150 240924232 75546184 862306669 182928761 968629775 245497470 658087803 261344825 969719272 233394981 910631417 503387925 805770250 129651987 136762298 108972636 176081951 47178288 84633976 62943051 587629428 195635791 949312870 306048221 689366086 428471852 931855344 113585535 183914555 162579732 657326865 19021471 325230154 251206485 605363019 402220082 492762705 118952040 603196748 476078653 747749173 674481475 695204293 617182333 793162421 593420435 725600457 534944848 906325653 424255684 755052035 655184247 776582487 147647318 983492271 121485012 880958418 193153396 235286189 151781771 981757618 957875156 968741835 324991237 530129413 287600396 416541509 308983430 384127277 314317912 677345687 439006920 977435575 698981427 763418041 683130209 828611580 812461569 944228983 521465968 694094022 24071113 940364914 328617530 607405320 552168350 855980031 75949730 989040651 668364698 793327667 379702424 967908274 222333469 555839337 513738224 607690198 246841548 661988895 312609840 880229712 832882615 885839174 716102277 965531942 782814777 984968239 639437200 898289498 307281860 991345989 190007167 610036724 493410450 738577020 426204311 920064071 395275191 968344469 563374082 885015537 582080103 921053448 612828595 702491005 98768649 561334578 482520192 911005947 581555981 908435428 720898801 743379434 2480001 847073866 593539294 830069835 241110893 465592113 9780475 506066444 146634406 306185417 272590360 535911287 309657292 595221776 205026831 621610277 10057888 544502984 410276507 978942668 866293556 937477969 608907008 863698896 706796008 757694014 647670804 969735824 643846386 722027371 152148072 273631840 28231985 374851959 299085029 533444060 114277868 800380493 734103370 766324805 619619480 779030292 247959465 997944481 553407486 873648728 420898881 531554201 237607071 635936963 486594292 768609451 457593300 899923067 373623977 529362680 498623456 681301617 586797091 821175476 241789866 441754408 250553507 923457990 101477177 178299530 45538725 699711377 524631220 906494911 644538527 733125636 288319641 866697658 152154177 240533692 153431313 279588753 188942820 478667985 263816921 949968165 244809697 403993080 228332271 900369447 568907064 676324256 492610696 724015129 528432288 657655762 330396653 961069097 38610305 54317237 19544374 434140937 330343041 965042002 417794499 874670862 612420451 657165659 333114993 842600605 28055861 898950291 62829997 823844406 301680272 326076973 40044378 828272377 6012816 537353379 90839155 634196716 373894360 439373793 87109586 652297018 604669676 712402086 338190304 911859408 681337425 835154530 104140545 412328944 181928130 661189997 582454105 949840034 544862632 562560756 66580733 676736467 441666590 881741910 130263659 510664453 469575417 795112149 152779590 231003598 134618437 190791552 151418748 157554425 66012778 564099919 71990740 985070249 458237439 784763695 148868811 950566011 418003865 706608963 125639100 646632319 243629019 286330540 84300299 292886580 129812250 920898264 555485930 580771761 98873426 100651328 7927132 954426424 374488646 703675435 27707959 105895313 35706306 908207971 602150587 968578008 348666805 366317801 265633183 934010978 448599762 740434331 253961482 681792608 43953360 908762723 316128174 940484699 682188354 774288860 668795528 836311367 515509441 527645090 269684902 467500185 204137283 316261876 240320053 847197223 172572941 964936140 743820573 828266229 650413042 880254077 872984135 882426091 311795893 948039155 909220541 932010809 45865684 912380934 722857253 910539564 460068095 797882271 724821316 749699891 477179281 889737823 648389560 933900416 468273864 498163587 285870170 364368699 271248172 504153499 165314630 279694398 179362982 649717837 604586287 789142990 368414849 445119289 36571106 773778224 218148339 555356967 225910503 530068918 232576252 691431442 410760509 614126131 522362286 824304509 508770577 543455519 512507543 590421080 232040064 638985935 394104151 552816432 434565310 567778673 194813640 684819971 29680214 244543660 33291717 460533439 123135690 734169064 684274523 755558761 110090937 477025356 72271431 752318350 267009012 623288650 29497511 339409724 81265005 416760439 42834907 578075874 86681911 96772010 79808657 303199090 175909144 266698564 216882111 999446782 467449494 931528018 44124595 654512461 281918659 692797417 621874996 833457940 135543041 292919704 83907745 944141986 43754381 784352088 737775955 933898810 197229383 461481012 49030767 365831352 45801236 598574664 579244121 775444933 559479235 755363497 728481220 810334691 806512318 939313360 47059548 797109614 89517052 604201166 449159252 572946676 180164790 444103546 255309763 865120578 323763352 334973338 144175141 584123036 72056266 553351982 146011926 375466590 173643046 902723314 323953135 400791368 229528959 959222828 775373049 969451241 836989087 908282739 451423555 611402435 336874176 521025175 6710015 708342041 633489447 689296164 539947477 617983387 61957489 500674537 82266132 298727195 260582148 786485187 305451332 369082241 44185969 198928818 49334615 462310349 30465270 952204133 483956801 510425475 31267190 452459735 169112093 317145588 94919171 108951567 24812854 363378839 176501148 479707101 262823452 825665555 677453506 930759922 212985741 444763539 56583901 649140456 35090341 932185354 305611496 746137266 534493588 548572418 164404566 480285260 175044349 656339718 117840245 326967872 182427839 807005657 90789251 405988978 30643967 533525797 152280194 987365998 201157070 248836790 69968142 85069472 79796376 528969329 217412796 405113177 119353512 377914853 61732252 121150158 107798952 128099805 53533782 190413472 140675537 619733183 319851307 407356490 263118699 395153135 149904608 864016491 173923787 936136790 814418780 964599851 229350338 979026118 474901787 514943215 206555283 771116628 74215104 270624538 105367448 686923555 23546081 495433340 344113345 846330179 753922585 781609988 416825273 852804344 22386331 201230725 42011533 143244022 22048260 782922817 138298964 311709290 157501187 426889147 308626904 984661893 583747803 610044854 587624087 866607021 657242042 768520832 724652951 815345557 707535184 715573977 233808641 425269317 357171793 441219817 204633504 378296787 167527281 700124808 285083407 635159101 616126943 831402796 558679253 994113896 560101050 807980675 631272226 967840823 259782470 314762372 299507641 340543839 133129284 635873367 294185209 462804920 192418253 415537674 399033218 888836889 589326064 743306145 204179811 300187061 162500319 239542025 145262920 578797175 455121818 595896741 425763568 612034555 220892963 969254053 406481292 734132352 566897110 984469453 19493160 935557907 306294253 492568158 53776956 703752816 281186992 310922828 172397139 377337356 226286697 546312525 318400799 914262055 339919031 659992502 357602553 652852473 335698473 557893132 444188310 451315684 156192568 705886575 8223424 968468703 196886171 261817777 137155987 738381266 525834963 631304210 620448839 825483279 553985596 632517761 63802344 871443832 704894219 799770357 78140961 838897595 222588320 302736694 155407454 233061861 164413318 327121312 74895552 100843256 17224921 117109953 111234171 684631111 25419347 337596625 200692930 795473414 359617921 953253995 10783917 631819521 217802265 456589868 280454594 831611608 58394033 291242231 40683077 548289131 427005760 435916969 256192425 450910319 383958084 911620422 819408917 824312236 287121845 397945458 319045099 802336845 783726616 939435520 409189963 862326454 684394166 827294169 666188141 794920954 366920683 678923015 239055963 515835892 434781880 967483073 586387296 893333385 299563408 327930814 34168067 708198914 542780387 999268026 821502310 988672500 597026533 681764631 629263881 855246106 470677311 489908262 256780723 346835580 172465366 960824276 224456811 571279721 70813254 988650374 738015136 896635002 85970846 991068487 13453320 412075755 306564630 391122302 389000076 746657340 732163455 760548972 252419605 875394314 524569315 878206774 701742237 832633485 548054503 670822357 618245322 624526572 479685422 874748399 838249593 927332172 848837702 945930454 221958506 292146857 97348086 584696853 150075700 323651352 252845944 818264781 225792901 438767541 2633865 267114216 223742194 486982578 281641582 554112370 506184694 901373729 800322598 992490766 82135637 102766795 31672578 195428569 2173051 99974662 78117607 318747060 147920963 986958742 188405352 980978519 957284882 957410950 465028256 633907134 121091039 432432850 135888584 787491179 262878558 813337984 758075015 840796746 202317513 752198573 157343444 235826764 138991811 691329472 34306262 671535534 178809635 531404914 48182981 993211094 83177671 105241363 18148606 631079680 269824299 672137000 406560243 643393886 264251735 956062332 792269987 897846644 474563860 635996719 246973109 792320291 139271527 764043486 735992097 773526526 726488960 859572169 321006467 860993568 251918166 467878516 92803396 302910180 63331382 948317309 446643223 528520998 179270260 788499057 593214937 775848363 42112947 371839500 353396226 442725777 440536242 531847288 75733327 110562777 46716738 696650986 273869607 487853382 72115819 413111755 22952033 155200984 101297727 497730027 21849581 629593866 260780122 789115378 330701586 912529162 380766176 400281023 33088729 903464753 808890703 862628880 731020242 971655128 3028845 391686092 364523211 991153731 223493631 936620536 899941602 948097217 239604021 881963164 616054716 904214814 896197659 908880766 35781594 695326701 619485518 782801917 413135513 702344633 191430616 527550352 348084358 725769053 638379402 920486562 361202889 815587255 534734727 641377017 451438977 573615758 7081097 392135637 14913071 281875791 187949090 197672029 33186655 746685911 283654019 767956400 629217523 718569334 391707929 644581566 42090924 121057414 52663641 116056761 67327032 808972590 303551967 418574690 399261685 723918310 383183328 386818688 41439039 618937653 59602034 593348303 496242411 948818806 179367047 834000026 11834436 300036975 17290223 576124734 74004574 332466689 244637463 596926504 66936796 289789014 131016211 884465628 640759693 862206338 24328752 178174702 65986344 801438163 281785734 362504450 346762052 487840389 158002141 426736818 153125409 933803898 497731086 691077836 307935191 798622157 498185046 958482466 900672979 903889882 370994706 611779770 392926232 845528191 170077233 398557045 287535925 337818891 240326695 311440180 59878217 124311117 36751881 871641389 55498297 497980802 335552712 694730847 500150175 693390655 442917858 744597765 345489583 709136086 604222801 766828409 438442060 624703017 478857139 528377236 8248417 751873287 155070949 289005935 281395641 352635541 116203681 139330343 32926596 296407025 219754716 956722323 478611116 937361686 287456240 812328105 418652883 651349490 154465786 991664882 558730632 883153642 406092505 590709680 2769115 543300501 533531553 952120937 484294665 906768844 487008676 841799829 405983610 808446393 121086352 565040825 94128258 605801018 198752802 805723487 279258777 486259550 150838975 566607915 265661240 702952346 120167146 840664631 296821725 776005834 302678167 950854478 718955526 772249311 712239814 981531283 174807605 288421959 229605067 864223352 476531684 705850920 315369399 935317248 254781495 701028359 305169769 701183731 154262647 712868935 582856679 775127873 404582965 853813554 310358558 770846781 751640001 974742302 938179282 944024878 327713838 884177878 778992321 780565032 91801329 163476790 104762720 565465844 413788520 957167697 489456157 802714898 562566673 584864171 493167713 707354492 535549489 989983807 593526779 970781483 585438445 700217962 296759700 361970911 266534470 614937225 32459153 983700846 505447305 637719378 323020606 845296268 156888866 698943699 611673196 884147242 38471437 246815872 46482356 668239375 97680848 725778442 442752622 813072525 323295843 925347825 368830456 429431444 331624208 513053215 106174499 168270464 41140539 230199007 3948046 288530468 277777875 628788506 558852 338840142 53112237 238220091 37426347 331752707 322116294 917501887 692340941 708332327 374339377 842844737 434293051 995711039 371677363 622190818 147903534 344501519 339716414 391011446 364102980 743847665 248432165 281862771 221095490 767788954 193336013 429994904 300719571 885319635 591440784 650289107 613549793 683693062 624729006 669125310 289919358 359462289 235610643 957245617 811560517 845586398 696898661 816246156 83901912 126872119 104282857 246956477 120184116 749998271 479527735 952136780 476785825 923614286 335765600 891617282 524343061 803179237 72877550 249358517 134633259 553491090 527300366 851336449 525521496 928458034 869613310 919193659 354968198 757232595 608838758 652808862 352329363 931810811 689629368 907697770 555070686 585434195 218869287 383621298 326325475 662054290 550109752 601969735 397293542 990428774 253059244 429340911 62051291 693909854 314194104 697919879 135266026 922463817 43529053 433119805 187037197 580700622 60655071 500355720 235382629 505078622 475389451 685912906 91872478 756958476 83900128 630393223 139753686 760103148 371431741 602250025 239958958 815991888 216393142 347505061 145626712 926560552 28245868 556182860 529573973 725243534 593322352 933009259 79339593 581505205 247392966 641990633 315281400 500798750 168993673 691389598 687304707 929640633 789656983 978277509 882061074 983786464 343257814 550596037 10631361 470228817 54934065 895372106 310886094 682227585 670297256 771564675 177062625 629144107 498048556 862589050 773680615 883972567 216295009 558980105 219534127 412699054 167095559 680447738 580185037 794945839 624647048 793390043 781975985 858459041 781598921 966231435 275419110 558196669 355121641 917399440 185582981 785788535 366829746 699562692 445981709 848383389 215598618 443394177 134050661 625869017 235570316 703348930 546447523 798310067 209271429 743587560 612803276 892492421 584191325 720817511 393194732 572502482 89222003 524603382 31612597 245828782 219925509 584729040 284329190 592944635 172737447 493674279 133141471 575386371 56051000 690440080 309339348 499050711 475168694 938366161 712803257 851789036 838406249 974690949 705791887 980611508 437337294 610459845 484151763 681774497 589598734 821806879 510822582 756527269 625271814 745550841 251601569 869711448 329757642 691069636 82684139 159461344 141316547 824951238 747367210 876524718 255013022 833562194 350082306 591629150 173373167 557801625 464189698 509451055 71088773 791908975 646791002 988452646 722307709 833752164 54560917 925338882 513372261 623555534 423189305 897178124 544730119 704617856 330452200 511075269 412378909 943903573 683926401 848888516 225518886 545289396 264373042 921266002 685355978 877063455 433779029 675475001 401858017 888398656 239287596 693600713 366267367 552334857 212795547 216775367 134800877 491658777 28483124 229428221 105892959 388861724 52207549 394678251 55561456 520797208 299253542 963927662 525639120 735574735 599535842 783569481 213755938 598103340 34969570 174300777 170093236 678585439 584076168 914980511 779106738 891305655 330484272 737619005 167133984 904842156 164849250 583873139 115777244 350752947 242830022 366032625 274362604 940494775 475921369 682500729 14786326 423323759 98702060 573489131 561679031 745206947 709714946 974306072 808513398 902224175 297181955 915091432 767793482 905236843 292311855 490477939 38171660 980197209 204632692 793263998 520279201 921557245 376206297 779760286 155903894 277353752 268147772 442815456 113585161 473205142 30237901 365617213 135451327 757080486 148980479 434721119 34786301 55775139 20572109 664335120 651187627 743288528 503794208 853158662 668203880 983477083 238579008 752858450 63197662 735206826 456740726 809249766 771440511 919446120 74100557 408620444 108102763 919230835 612724399 692220238 340092346 387130285 30409370 417043167 188647332 382504516 25032748 240237336 195492479 420953328 176406157 593636002 137947603 770277817 76397933 564643428 260182967 436773950 365761899 698685618 444318668 512583734 30742658 654110802 271667190 621541115 210227239 276656734 20790806 567636041 548217164 643253061 279166538 738413882 386402446 590019279 471772487 701543131 183923554 323364866 76915742 976787538 490570392 866289709 778191298 867830271 34186950 247219235 82724969 84378394 24245745 200112101 104441972 839889718 773015924 913456960 501578615 844405309 24144407 118502054 101864997 595950451 495834383 900739422 680926648 842923448 785235191 831799821 109025566 150507327 24216339 612930490 410480744 705687243 14124711 495341026 468589870 813301309 806361519 995141181 304587189 430942573 229700495 254272135 156898248 406471988 248902869 853002424 606695233 736616294 277360637 598177726 519035109 839814694 541715496 794435175 449963549 794578429 482190765 617441585 272931225 802543351 26407282 998144658 779035991 962912085 150288299 652242276 451325121 663253732 415161799 956715855 563853563 897275621 502490281 953751392 705747266 751014838 584238070 669006990 464237865 997516035 614620891 645919597 67988193 765643407 495117928 617881103 406621083 888222053 415109991 463217403 436136225 946309672 706427895 991183843 139357176 881300790 232317872 401122376 303787838 498603333 285208613 521689436 162819019 829789236 553669438 869153300 63322921 190916094 31431374 539981442 17738982 201222168 176900683 858333099 355125094 758126243 703216236 854000403 812233236 923036490 844338802 930105816 607805630 856488637 275150035 803882427 292149590 989364991 520046286 924901987 726677825 996245741 33695411 390500966 348838801 385455538 103367237 927397490 914277010 944514380 734230996 889309589 601764339 805604697 729329911 735850276 8780743 378320812 306367778 704897072 13487999 132442063 41127383 908485085 526514714 816501627 601134665 706368172 656523750 691232063 423180834 594269320 135869974 535527587 451253831 764871301 579273874 636345773 554292278 882523062 36177829 43367428 26328899 473862552 205486363 857317640 462975268 560253172 17512740 948100905 688978425 771611428 450161583 794752483 345131135 560394291 533130532 980898604 320694060 943818105 893957856 901394892 344053642 533211631 50220353 349314229 8277051 775783330 707958204 873646063 29173071 642812861 214342106 280304428 134947150 470994344 257659005 611357763 442924191 539898382 130352014 560576942 513041698 822993093 616999292 648484613 564433087 873594400 457271464 997081414 501938255 905396864 268133158 946452802 528841424 950474302 744984441 944917976 154730316 407197357 66342041 737217008 7507986 421100126 50469927 470185592 298874107 419236702 20638285 298735914 57224385 145213828 45524916 491790270 314938609 653177871 111100564 187114165 176660835 319907217 12963767 465616227 13266743 295887012 249458840 915395295 785305481 838850968 37479160 724837732 493538189 887121645 579860430 984685712 120158088 430952967 28457052 657339384 67480087 446770470 273350158 721908178 560892158 789961812 224344938 778897619 434596407 696025831 494715116 619729191 363798600 527738771 290901727 317247984 46524596 60204023 11267433 730019468 529323561 980899161 516412228 835386020 277534354 411138435 42197747 507818281 298661892 788457602 111831840 306076644 38046314 722071685 561866689 697331892 116690476 637313624 474551369 760945478 232726541 371029763 227549660 964792981 888855018 980372701 102251958 803533864 134994851 941712787 629627051 886906188 381320459 414910734 119124236 489599812 102973507 164574072 37822229 890315193 295082927 375744796 13254539 823596624 653099872 957024720 204742428 256942045 164896037 344219926 224943983 578152784 309074832 878786633 12313952 61893091 7763437 987386378 31031966 930447941 610589833 866489332 750009274 975831994 15174981 606478362 295103846 499771956 485747552 994411628 670943056 989698852 293566394 896580776 501206555 746526974 593079022 616119263 523202497 629948733 47935759 428554959 322716294 903256031 113618649 394387222 185598398 388761026 46275286 588084326 498465430 782310233 409856164 466901837 282117995 654805458 379539220 837055597 360536885 775246295 531286684 643813568 468048262 587897009 368914252 724406460 420637699 941016913 715041913 869804249 688240005 796301025 528911118 763574093 185075339 632141114 187652963 380849292 293513277 755461796 412987032 469927057 121664624 673412884 125092971 187280468 154194558 940936925 798230885 875613721 230853921 976829920 643110129 856400704 514810992 847547622 829415100 967011249 462784566 598840243 401691115 454613449 338817405 823053255 127278357 428447616 304471511 771156166 30391275 974624849 492494252 681761571 677926717 889263335 266377535 793023194 213223261 718053903 245864997 885280343 863403522 921917348 487577918 958016780 446372028 703431518 549901739 684613568 261117811 920374396 737519025 756928549 65999856 198668826 135749263 936959582 222708493 693277360 300003582 844054350 612227078 826388296 228694132 977253742 131741996 710062870 491044570 542990631 263650 899930181 661688347 859891058 310599394 919135986 57841599 328231710 157406665 589779509 160958310 777781677 275404671 289922933 70088766 717597990 188287593 593216111 231149397 897279748 189638454 797017998 132130092 689090254 619973710 665331074 256418357 614695709 17982716 978515040 908716522 982417740 338871993 480805150 24818809 444459514 201477134 959970212 443620421 532535195 127843869 891294385 813577771 970710574 784497980 892860576 595242380 725219996 625621599 942239059 364568165 638974302 9220012 848668745 12223687 836604972 681716425 737648878 34390710 453719796 420069336 440020585 27557555 879168875 1649393 773703305 62952998 253362825 210995459 808993243 757531069 759165291 618841194 765350627 393180865 784451248 346905280 494089062 246272873 288502412 88644511 693979506 436746404 697622896 381577052 515557805 356291619 358419269 261937383 544897891 258181385 308527614 92934578 574614719 46500727 175312554 20234588 891938612 340457765 551257389 220558241 804961337 171647225 679107409 197683002 932318581 884567492 904830552 100042696 196382036 159033318 218508383 151230446 161260931 26149255 247142094 133339526 205852986 9253983 413814580 52037564 529588584 396583694 539591291 51939441 611143033 295894951 819136133 338545863 446211769 181236438 271656929 95879141 537864602 530768447 958822173 587027812 808154532 249509873 518439637 155929721 760974266 749792201 871796330 359626643 724775416 57300165 646019550 412096754 763616934 53580667 865126368 183537604 671242196 408696821 511133159 69477282 997580178 988725246 996170845 367527365 705890924 430694202 444537536 282946573 591616160 338912629 719673976 264855792 373814693 281579449 576593262 533352022 708322599 674069641 722207322 109465322 452562299 140806331 151465843 14216620 862632790 586355965 589684905 380357239 575316374 523817536 673334325 352335756 737652557 264697096 654593527 90677545 121271115 97098987 153519053 14715208 252159339 49139797 311103908 243053397 688148443 107798294 728704813 10518522 813788584 163975120 538724469 421770691 590989918 339757096 676656381 430457829 891524918 290643432 544201754 502791114 619572112 185568060 391808551 197911281 577247464 18094465 134984559 51482206 238085087 111395360 697591938 427372372 452974408 268296650 924166774 241110736 922597931 282772861 810130815 362938044 384593505 205690424 217822270 216274511 778820774 706041465 724217943 58338222 558346292 306814679 660136174 340298624 756959014 724550805 942918284 271963968 464359371 131771107 241617353 104310226 499888064 34599989 312246389 153572638 754007410 603153226 867732681 535480277 938410264 705024984 732515181 142535001 330856729 119877578 406037275 272711288 726634457 485250347 838110072 457956274 889593960 320533615 670108010 621128380 783006996 256966246 570497915 375318755 772845221 28697590 353524608 48643056 801391039 402469599 471844245 278216208 520546275 498548748 824127157 100524689 931715244 583961164 683206716 492131371 774513708 392140785 889310122 262607440 577719678 183942598 978207455 402781433 768710391 44574686 320501773 212724604 573751863 517239015 521534938 13181184 23697615 4695480 872080806 743330429 929405663 579131918 843101614 428846460 569511437 501442058 706212376 101850094 842926704 832838460 935559557 539914562 728913904 38200869 730114942 141549626 619820250 436401249 841795122 830686776 909435859 365639659 899382336 719712141 917809626 783999068 800323331 194852571 378378999 77705738 142742750 114835017 812655381 310259516 548913380 325499163 861340934 218446611 285471290 58433340 748065961 137746337 260318502 27753490 582172661 50173713 728258720 174595744 976950574 443904402 763309151 263719092 337202228 211784463 933524401 776431971 819692203 652606055 959490894 599526425 947497180 926797960 957218358 906041688 935467292 219760121 749011056 737931498 966595236 747835876 846831850 18151620 860986970 422955736 977395133 849757021 950782208 319663422 353978350 11402973 545423439 208247334 522282929 512847400 773401157 616376098 768356939 256779934 479958165 156067268 840251481 418053343 454483570 31009718 710877013 460785054 981105823 385101502 865406696 585464329 741794086 12184847 412416617 202395536 848968037 528980901 858478995 632907451 822413247 285383041 816678413 77994221 419693118 385523482 841562965 791476461 912957142 671853808 963585608 765182812 989214201 867200937 927018988 228558210 377101932 161821321 667227023 425743886 586391857 86863862 248327079 203164767 909223850 726774675 810538404 354011409 631534622 582705325 805622414 358393520 866822295 399592016 766791682 42817457 70610701 34340621 573206575 492187225 890081384 157844885 178534686 99872901 567647089 246074994 596814949 285164094 343851370 220006960 994502060 663375579 921104314 468772806 695636305 129185137 375683184 238747650 552839706 327167560 790335285 716793940 751808095 549026155 896014622 761096947 899810324 413771609 741592573 265623231 514499493 312075895 862644330 191198728 802206165 676441377 740084860 195959537 833547881 525668908 683913880 297831795 456998771 310560888 875312544 64986283 768782285 750619280 998472082 862384549 954955447 413350819 777507592 475959117 882066892 614323482 789069116 426895053 817657972 594279499 723408379 102437125 482292361 477303065 971289523 19010259 195558502 181629157 304966597 85329078 85946962 61939077 598794399 256561573 466877266 227739478 436468907 82578211 637806305 49168003 951718316 656574090 983545486 51349547 242712622 218320451 393479148 219246331 230984383 128620461 421367023 300572581 721416671 700503900 914023178 715658450 957961153 6302164 144007954 108115261 692758507 325113370 758393931 193447882 411637212 353820629 495234556 262884555 562056984 122583856 599531266 261581583 688886213 235764719 377508871 125528232 306734500 220311178 876905320 663724131 683810163 476310260 700430188 247210774 379632583 75284772 694851692 684093979 996008440 508210856 773120011 22801247 732757462 203786608 579526613 567385130 808602809 711099007 945769182 262607316 731776786 19035505 158013513 132729661 361597673 187857982 238304211 235038031 631381562 587062568 661787068 521219586 964221127 13895572 65733924 56350080 218931666 102594574 330564023 288217424 941701316 210412436 300943848 63464309 328737800 18337000 772486668 336811881 363556938 45695038 744049984 175644451 812482120 536416979 929921585 208467152 712071008 300616406 782671561 127927432 326757117 105306749 744314721 1200692 465670649 285592146 449488576 305592202 827486433 269438748 344024990 39649282 329797329 84964359 703407047 162539353 843853692 106558355 748729901 569950102 575610067 476595609 913635854 189768465 850044086 136572139 361176556 117562738 181503908 147155390 993035476 688208062 689065649 526528143 580830791 494819687 608534231 473157590 801888834 461374726 729896710 19510764 837081097 224451912 686769836 618361432 814674813 759040809 786610408 192460452 320006784 153599599 549496759 390553160 707619494 362023617 440333682 225440665 514567163 258415477 638880674 385562404 556397020 59771611 872193305 632955475 738168373 130138348 383017560 95177045 544785204 220894215 760279080 340422109 410927445 404249432 987593372 910693184 937704678 745396079 924358786 714863249 905112970 871080017 982733035 599874657 911311384 211266291 505281770 156395267 563644465 197966768 311594063 3874755 180958702 89516980 427143858 320922403 705792682 607388426 761433280 620034052 988737779 109912587 479455469 244407223 940872264 27784058 310265925 83584743 899962202 220804287 583056995 422362151 774758345 276902498 314088015 46874517 396550851 154574944 647808589 240785730 289379907 152411190 530744794 22865740 667362168 595809862 806343657 604775674 905180137 441563750 561516327 140616575 368395615 166924860 790137114 396700503 836964827 808784428 973201756 80995577 522376101 207379172 521305505 126921867 912319429 825215200 896884568 250631232 997185129 72051149 446571523 399167191 458428700 355759379 675945106 16433515 883696574 583323264 757458383 38394106 521965701 211861437 731557065 414258956 706854159 80533664 733248750 634938436 842086879 18703843 519344582 262931236 322888260 255601230 896676288 521204453 927431870 620212223 667125841 461940192 541744671 48473178 726541418 490916573 643028292 397443854 777686972 272473309 500535629 126276987 320563147 162277719 783966565 772589632 856137454 624395758 637322969 315645252 554786763 482548568 649627069 226753456 975351893 842512705 900996007 261548494 996344979 25275765 402235486 45436570 525906742 7273671 955755505 570844669 797495292 588600815 987605134 662933145 678297570 335337015 360025544 258398486 400908551 7155456 616786813 184007950 912916814 692400948 821872489 674427430 792425189 82273954 425006857 296709555 937973107 281044808 816569003 304915015 538400038 46950479 141689961 95346943 341781288 143064491 302855847 166517239 923879582 225691630 257766167 201195802 323484692 103605860 271797279 26045827 733321866 462642388 566947013 354273712 746851407 65295897 836059521 92986177 636344993 146946487 780291161 703806218 900863784 505369095 697949703 625358297 630418375 276720970 965551227 358371500 957130957 397834637 950915577 178329856 746661278 252224609 547735551 7677683 666198531 581131322 767523837 671561025 851389829 162227245 432025250 200627442 535084569 179116340 890343728 186997129 226599936 94872369 442450685 215513877 906375701 444467811 564565760 329892036 708982749 571898806 753302116 698488325 855125629 82950086 100088752 89153207 549565828 172490499 244740272 63965451 759664868 693191326 736332184 289353073 626496399 484728943 701528035 151750572 686130886 61929242 380066138 231311409 237714002 74365837 951737991 83595739 121744166 114315539 621815245 456918453 468106347 432300884 665786721 522000550 587854582 543554129 967059599 845129221 845142381 587170233 983757078 252639913 731141154 483766235 548976615 255184028 763420899 168187366 632273406 621850185 888064963 722871688 798137084 479012725 718907721 710717920 885540986 611810536 876916398 393494708 490602060 259212668 564674123 262625320 878805695 537674002 643487877 397427719 750586922 7490316 994213328 346017793 890601754 29196090 85354606 31221958 565559925 14211378 524230710 474231445 763934676 112301466 648701611 208794279 318847012 201186601 654515461 393248690 707376260 318859857 413564577 277502542 773263972 425263374 929276440 7317300 794352327 780764051 846790007 486499942 658539540 634902690 812122370 169447082 676940133 347782207 716428041 203699443 728939290 348118856 895813055 51551506 976732807 484959087 490358450 104493138 724296776 272938595 535396165 26116210 925050973 337626402 479564923 282231483 874458855 415325286 745994006 699389941 875616209 841970194 882099259 147269713 368243096 95232031 554031052 367949619 571841904 202571908 751429547 634869385 728352200 386068946 681006340 542614796 822611910 815514369 821011204 113845708 978857798 668961153 952941671 713249574 768844653 644122490 912705242 710782088 904457147 354774263 829018089 601929195 796496111 508241207 950211085 297949499 705018399 639327172 928362905 718557893 766403355 740714902 885523709 468374552 647628405 526891910 693248740 95175959 977902472 4186494 736620008 315294358 894177545 602983425 815039827 769514021 908781913 726119245 912644399 383710895 646180359 92481748 560981221 313571296 517912290 210586137 906933280 664768308 692657674 264996024 915102005 308468625 364452487 78313954 314427656 6846029 213127021 190804096 469853531 185704820 654818772 331535131 778532832 276435073 336700685 189422623 319449076 272500529 721472043 660242956 663114655 555887511 835945217 730508520 822526400 387123462 577464693 543618132 931631116 163627197 825704823 496330084 529254034 136856922 995655998 384081435 517561730 471742611 770969383 196684734 874590144 285760730 729184972 75104601 143708724 114522801 193712159 59529451 511642601 351931032 628029371 565509641 586800336 324158223 628609199 328244289 450717509 272278351 686692789 475468247 549024985 437430843 535963535 464067732 768927246 569893811 788723079 455574370 820322316 532826708 993890677 858129528 890166548 571686367 690496334 443567779 795990298 741568000 779542361 304266937 472605845 359903895 367061212 166507938 538929671 399386772 902357300 745076174 824740906 687223509 742744277 318022997 943462772 713639852 754139982 336120595 822424049 75989547 772766559 479835826 713912529 382986005 618071922 418372023 901734063 598649495 660941216 470110972 964437916 140991494 162601545 121146001 803698505 803420020 964742793 884825639 894904789 89736839 778608616 766425612 870401096 755170827 866934939 14517400 702188034 227256310 688847268 166385497 325417069 100685245 614946766 94207753 426261107 411955192 647340280 109379060 719762678 704762955 964183371 362457097 978596975 725586267 837376240 639679407 727350950 351447699 707844570 256578107 682799449 523266316 952290531 224700952 865632999 623229264 888701257 319482126 792820392 299450700 719154556 656434107 903095045 523789682 773182504 485497056 793672224 341063637 878712139 637171723 700700610 41515952 642639285 582394311 685195462 334423210 756519957 398647078 952787767 920683096 993435685 757430724 883020613 798612665 883869028 877503732 973029630 256003328 379225732 108178589 517721004 387677039 622411872 98705303 151553696 106598050 161025471 97478040 491111728 12667240 360068041 344746853 442788245 196774801 670519610 16326907 199320522 47183215 785251168 163599750 605083284 106578452 848455877 489566763 887026362 337977360 900338384 217485028 373593716 315155016 391279599 41485613 478698868 262258976 377714414 308413727 953188169 842811815 997030872 254675655 698914664 297237864 799941421 333395031 537046315 116024495 195654028 157076308 531917871 480400905 533146147 357256541 420345405 141351304 557132425 461331108 907811771 545843221 630992930 274111016 751984298 670639434 932370556 722875078 858681016 210249349 855489254 307650822 481115144 221558325 324237008 318387107 948865116 308851518 665193888 136569667 626823090 46805692 390377366 370626256 544045258 258381127 613128236 289789034 662265355 308600590 731665592 659373759 725513106 712577053 864704851 495473471 627757854 83885019 977849727 835010100 972747691 783469556 821823434 322846779 526076128 229102542 840158512 353249643 450338784 298640199 781718600 616469277 729879794 255209064 700282695 213501383 886821648 55189551 510199500 213278349 223154513 43123035 367118810 233483828 442666157 384313935 599799011 128547031 411549765 263633190 962812972 330229212 643878136 449077140 613252992 116947290 766567128 201352567 962872371 702223254 850932199 670960510 805871923 447653808 805837275 346771972 487942568 136489144 784692001 473803454 607356739 178823891 654977701 255007729 286792352 165499967 732996896 351947266 525722113 27059844 760928336 484003624 548176927 306187807 649206365 328819111 960485937 655128706 912001704 719400093 880604709 514356559 791587110 340214613 444373466 404864530 766330713 30045185 289232486 221794472 548797454 336501145 631223242 342518045 428490816 330545510 907350139 523374130 702669653 121642753 667357636 316508707 461219838 120704089 961739913 821784068 979620072 974725588 983587358 49261738 374704419 44158007 943202600 167772851 234221317 107904183 596920841 118664180 724497285 709417161 772691765 519315588 811936144 330352124 924839957 182536960 182940796 96480504 547202890 78309589 345244206 19592827 918913580 89164684 588825721 442364628 649760907 434034135 717288228 690626828 953877037 195210582 425287170 283547285 603178157 209978364 649491113 522694677 700010316 394355741 975978908 371696557 761624271 694623904 956905437 67600488 336132055 139113394 539774031 438621227 863696869 114205491 119279311 119209625 753488248 89380775 811252302 82142698 332563274 8655555 138833072 83170224 820668130 651090780 673379503 319645767 333636386 276748310 343982664 300839479 403195276 220461939 576267578 79685829 771409464 385993952 788828982 228902843 788128129 204342613 830424641 517977733 654335317 81356004 618473635 55792618 230312251 77300617 468720621 383230172 873541631 604909201 631024369 302953269 883172929 585802781 669990872 100209309 585818341 567149736 930622780 230040637 824404997 299754588 863864155 381226661 569988193 310233539 325009755 298092953 579898773 555728559 989917242 50130967 589088721 41478802 911962181 96355487 754702202 156155088 577977770 428246654 501905922 463988485 564016191 207368343 945533048 798384300 819991433 761802477 957576848 57091531 798100962 196375339 969340911 530758583 610330954 571031863 754041230 704692685 761008631 378237006 538655737 49535162 606981374 74820495 814931165 640314875 924889608 620656605 705590898 73884228 297936074 171203964 915028998 848845427 980704700 384102157 638308228 578992085 831003228 249788986 509894756 217869491 441699014 318410240 664175521 79405627 328306445 158324697 538055618 535068618 548119125 522065704 784455596 581801287 770013004 740139917 815333483 756318136 846343298 18812546 107794889 62523273 920950624 559820123 889062430 501295595 534528117 221905827 485019012 71997903 823878541 696482558 781402778 696570499 989613260 903571222 981088022 520684173 552290727 425893805 804724735 368809151 866038640 61068045 698372178 414943059 799418254 635781118 867728080 259381202 842349950 746270233 827084416 216495669 665524542 447348930 809358219 674622345 808827188 244611275 361106492 190755575 441387275 314213711 503102004 84577401 544213581 53272776 811188504 77724851 236923849 175091242 480583081 347113447 820199814 740867191 999366300 807663635 859972749 609903344 827321482 815131510 919759438 610963246 844135962 314532990 574632010 79817852 545969334 349592077 675327722 177129494 449381010 359536129 978683578 355349019 400943144 390439535 618747294 493878464 850564442 741527940 796337301 254004995 441350959 272266600 776293685 54982642 314932394 302087975 712379860 631202544 633882104 296152785 503511107 406942883 500856815 333360251 819863300 423666484 995459134 136602188 962433127 33573171 325470382 20008518 380011771 82458436 461142514 283131828 549550800 39708851 200724784 84019266 473264673 249299573 263930908 148624638 258444698 13664442 851889187 624051525 966571236 780367674 844291469 623077167 753869466 522367632 683398743 302165489 361850356 324102598 536861627 265363045 702378929 52892649 123070569 107106254 820422494 210984802 816000622 512223041 679915091 502080540 781773193 86273558 498777756 141496532 935136018 539608733 827236325 408956601 869126312 440620831 679976472 425739340 466286086 353766936 950671061 5802548 610840519 298226075 478274953 50110810 800867895 772704490 924069039 598747128 922358861 741435180 925480644 811571129 815367346 2695332 545026734 416036612 437396863 169246952 970905614 325783407 525999040 384133303 979421669 476583945 652063360 243409702 889902552 400797544 960798361 434061123 524043812 143121532 891041415 678889451 899713546 881749387 935571543 470123128 966908639 219652916 831533782 646372884 725319527 553494730 976995330 823101131 957680563 155664451 485638227 393925938 901268761 405069015 906305628 250484493 374656011 49490553 995014133 5693545 908834098 69035343 998228545 837292336 993601541 441084680 481113129 449728703 741131560 152740977 716995432 275630783 604448893 194779679 198636446 60621306 997137222 420569950 510929518 329474802 708708759 435480063 964124833 485612156 754121400 20375268 47122610 40961561 301590544 260334141 939948141 913860639 999635500 337669332 577851927 38846276 726545260 319287978 404816808 182486623 780593604 656829856 665764236 615344798 730128553 162729192 658570883 201858181 794550897 91621056 476691255 90463435 348763356 189024346 526217650 82744495 707577269 473990600 549473474 130495908 536055598 458724171 504170678 167605477 562484801 483416609 743643950 505551107 734874293 596212524 958198940 713924274 846405533 647141063 676242915 140606373 183118717 48319461 310196722 297905559 939629311 682937001 730535697 703371358 917265065 195864658 478515147 435055259 647150534 188915664 491617265 354622731 639443980 406915083 539953635 44038733 616880530 321966456 610442949 534757669 665297075 195055021 421054896 262781817 312422167 156446516 980621599 684440080 745236180 89927271 934857414 211379251 748003013 741687642 959218335 467350052 865079837 297364813 599698032 216780975 324753666 57242793 361901323 57987880 864855509 259615113 827176195 499996452 989497374 922990761 949828722 234798613 964990260 798249805 918340185 43289678 429154273 236906306 554376146 546416311 847118200 56411293 65693152 26135024 502780645 444815673 534466919 336054358 544474364 475027440 637493205 24087290 80580130 3881256 441474967 410336588 611862199 278936859 510661204 149822361 280446089 1022912 7809449 2524874 50544812 8437070 954403917 840467928 935048488 602324520 980670197 242097918 828308617 588535257 952952160 276713903 760480208 26579556 539747025 167301325 608128623 23059452 128029741 37622981 166260698 67074146 239997102 119432259 237258171 145114290 234234207 3202923 495650961 42778154 722878872 306267839 807719675 337959045 416525057 51789888 991578921 959832031 980195014 185587804 579451174 407317600 954723317 377019957 618429208 496001633 669605806 164321995 819902766 198516705 786061471 777745597 945327775 336612039 661593502 45785326 680450961 387807068 671798146 414998926 779334173 427534164 835454055 301225072 672701507 4858521 643558342 162091056 419608617 415256772 506162452 290119215 707399831 418897468 747104073 135849614 505570991 175748459 323301398 90649487 418675483 68161784 247784137 4487148 397517327 310193143 803071930 77846178 959250651 420592497 454238652 146331207 312921396 308248739 956114715 639622647 968765304 903011721 929141139 690277335 896622876 490742228 834660026 644677273 953822746 201341704 354208949 83981561 320932795 312845480 320542145 17189789 424556420 120811212 977786715 134328513 436884711 376898766 532386700 35943661 861008291 571970491 983651760 659823642 842536927 829469357 864417713 442815354 922227582 437485866 500735555 15802644 656365590 133204284 429605437 186767768 747027545 534128087 876768100 507633812 589599116 368330174 378702391 60274734 655027235 459883156 981001243 113254456 640597062 318639273 924052190 420767963 920611442 78441896 818529239 762431450 768987767 219393324 280364379 196655446 224351213 139462243 271023451 57139179 119901369 68579395 817830549 104509156 645637669 553693224 954827288 878335798 977833510 579016650 588589805 495142475 896649057 65841127 175490012 173332988 412682948 227089374 926495279 793184149 931633228 458959343 945778395 443918217 991444297 857555215 923153474 804874613 842253425 457761860 624430896 553361239 878624333 37722876 866688783 473990598 899893127 364520922 492718608 432875381 542317210 134452939 552539414 474643784 695232027 398516454 940954566 305137862 630659617 550646749 737274957 405929365 830299834 755944549 871910601 607400093 612919990 245414892 885149536 43236030 836865804 691774141 974510423 208950498 747479163 392115856 717067244 632154018 880409421 65516895 98468797 15029379 175824397 99464956 401443437 294180303 760127460 530274018 665050270 172076821 189987015 148496226 439241365 425266198 630997443 486297527 764633144 210711623 726445083 628194595 807420971 403398482 776624835 70716933 854542244 782831465 812958277 535784468 976583798 651833406 697799066 121783290 810911381 219900996 458816722 262562592 692708958 218144437 995478828 819401507 841063283 804187682 961871749 180307194 181054860 10721420 93702644 29484231 894636571 303559809 336714687 158583457 229837303 22234218 869030673 156898585 847622293 765598344 791568002 385606153 866779354 828883036 847296540 625264693 872342244 97229015 932484629 523351520 893286327 299906051 556037595 60418899 993937013 812193985 853621066 474815722 674754582 173211516 720073701 664053948 866915245 825074653 937901673 286564696 790733560 742738893 838735896 112628957 182374678 101919505 400120655 158984271 992717884 367318292 582102467 146526272 153687235 146495382 768746743 247994644 421778714 43760472 799872696 483493689 791734966 553817488 567408185 432517653 967770258 107757575 338708693 277439855 620213221 3056695 756289467 400783620 990199449 729269916 869755443 90031742 615939463 524207812 849834329 682319168 931577279 559034120 636404724 628177601 997636445 602546898 847199333 279223126 471505807 311259353 694280594 425206281 585897617 367968197 759236475 479973981 766092620 545766227 546694049 205449589 837476618 385897184 565563710 68476410 876894383 575354616 750090189 489914648 552010792 375841663 819137708 82466020 660307306 283312576 559269766 133011295 993831526 36477188 855358701 645572808 947496882 392117109 788611506 316129363 391587734 152859565 850014366 300535373 865841999 97835434 472384166 298100087 303759108 175445564 981917931 151335799 837723698 273143271 377061357 185554011 339712023 281740123 856951353 161394868 168934057 38191622 250070717 185657816 755053158 654473394 719067200 624339203 799850864 39105940 302980848 166779960 235921569 54882826 326656896 122569875 910216608 15990743 520504589 99690772 341665770 258092303 472873157 53501156 225570063 205444700 421391358 178512355 179525346 63651842 234945117 71322632 928292289 275042408 812150900 395101236 435667959 110455280 211593514 80327877 246658598 143850493 255571490 135091338 384031435 176349012 360079636 146862955 453840411 306087844 831709643 750138520 915371705 648294402 983633135 824052148 872378209 844373394 906343074 864951179 886081868 571548354 789751909 586524878 824069915 55950498 727622068 266646872 575134646 436899225 755002598 747789546 800778042 752064726 920192236 484819518 556785254 224687725 420259046 37591809 205997251 33234811 115284481 19647529 254724810 147413396 925847629 229028704 496673889 285122827 741059470 248440989 527559302 295750695 997652785 583740473 618734449 357607538 754645668 17501411 510854339 226038115 553423521 85311146 664278009 158015587 874214438 368986836 709042093 135747326 653040075 136519525 567275831 270226599 796268055 106486848 565230648 397689213 557587902 155083669 571904754 331021940 503490812 489953290 793426368 287817904 749350008 461765278 956430056 371113504 380406809 95161806 973358178 790162548 877056661 719796629 975966236 96268444 399681917 143897907 298659792 41523876 454096367 357395602 853268982 293382511 574644150 314533077 706880687 49696850 585331206 61355973 787164096 658276304 695638282 54672240 87661982 6043100 250814505 57571807 795452011 508930343 771029740 84682768 508840694 371586661 863479953 735992494 772707971 185724541 583824691 182492430 811235251 698415937 918634711 909196985 921431168 108471751 793588645 308913947 807769999 800710888 834569810 383061524 618657912 147222965 419609235 190073357 266581746 65841378 587407412 440665055 508363615 292368385 880579702 390357172 761153112 566766749 738073541 586107566 828970642 708312648 951770278 83054551 489542834 99841080 174773711 70315815 99914461 50746709 578909593 471502927 740356969 5559286 24213198 22876700 548854140 225461076 553387671 153124949 639783277 366161731 843893736 562028269 819769174 176528547 462416603 186733882 779133450 102038914 939508231 150328597 171651942 24876934 120368816 22099668 681274445 326022752 911712050 238150007 926000037 817747646 846501017 228553943 933176350 336481152 435049487 86332071 248765720 138831735 473940682 302939454 797206855 441942212 460118723 45586036 406279949 270796963 754266960 625606466 691528337 484713637 996518894 516553100 732326039 452250190 846092298 481036055 651131148 251526324 834453682 165976707 606632075 225011912 667193189 532963681 877728017 212184210 585943868 66928076 984792118 748688491 931133091 169437748 784595051 501943516 606850257 20327726 427330869 209924469 386720147 200324692 932048386 77147385 506430030 378018632 419682950 357911442 742904101 554586114 979745932 352760226 790681622 124006545 866510270 190535020 931392372 750178754 919438670 37008790 680210200 459155666 533435538 461620254 782784895 571861560 997848763 337752862 684327437 669371108 929676420 23051453 550852513 218621122 426677064 247731117 379231727 281463439 389986169 25248677 353783997 41403877 739471419 69644054 195532925 17604362 164319382 102088095 935628549 669613138 879834062 714220984 904141082 809792890 923737463 232838790 722893370 20251264 105538329 4438585 941915460 515625046 535591899 410916397 482071780 292214296 964911330 860918424 949295002 863994270 942131982 306722090 858637610 848809142 940908153 367882871 467072004 194095544 260347677 167835397 565147394 294149352 502154468 204485792 261355587 96805702 685007277 450144531 955654841 774158826 830395966 613413724 617289972 574356883 861722051 219226436 833241848 629458052 689788881 72744623 787727386 542626540 804161056 560788626 682418631 245949102 859901845 138008745 674466276 550689869 606706654 218766768 532231489 77024369 405006317 70518959 759675862 458706146 500982859 116071785 629387545 433493084 757003670 696198763 975290399 772716932 817112189 495734242 700612090 401609307 657529006 497027502 807347410 132718036 449774309 305118349 551569303 347276743 869341115 74120552 828041687 452168206 987921671 170407443 177572125 77014766 611057770 133268402 282476419 78573390 548276840 359137562 602400021 554221241 948370482 855127151 890948532 69419378 792151847 586916768 998141208 442742384 849981529 492285324 753194034 489765108 666455488 152168309 824462117 784792823 954286427 841324956 914866263 637150514 655378732 208892813 930819431 309689198 694040249 232782170 724518684 656868294 668940487 385307890 981686534 590137671 855484155 237134038 885707937 803084014 937330914 285915964 847205761 798092178 974843508 291196353 936663962 206655837 792470852 62967058 834476022 153557794 908879475 801200852 849077121 20861101 363681774 271850191 955549894 890910581 963348825 614960809 776432926 340162202 780103108 152751950 190676035 47232532 621809879 569978821 746966331 53504247 354096922 37749543 724906119 375566558 965888055 1627080 68749090 55803901 862979177 844173174 941194625 496436863 616136482 500624885 766438782 92416167 768801226 170012995 513719948 343362822 866923219 844718041 961659920 537313721 614217117 2170937 495410937 465451681 549975408 462000479 845522172 126673357 409045457 224946050 497109834 200991546 581410053 77680407 210881946 177792937 618320752 436182162 812311335 604675363 692944889 296066675 375300993 325348875 661352095 634415809 744283354 296949852 526491905 175029866 930419752 846673310 967215299 413404742 853965131 823688408 981793241 222406697 285306747 134699764 882962475 424867831 561906668 365401166 551696636 511418391 993885996 61934974 247349853 192997983 843280803 769721510 837739154 714953502 928024879 681216281 908319677 420490582 905023592 518200752 911840852 60235199 170501295 73411788 516020691 260683172 838449522 75300023 289511180 28215652 573106195 47331112 693829492 355507426 469438112 218739052 793851755 95785735 416074613 260212901 350146134 262519807 966994527 31324954 174857219 84433349 358390775 159851463 804644939 718090134 924868753 490632747 731919448 369538235 511663852 5629187 679385246 375326662 572761609 129565615 888209805 839245227 952157763 280336288 353586908 245463546 515203756 146906873 728740945 707466784 939065193 694424349 965374370 877072204 926863763 139051989 753184350 216927669 685951302 611714468 948088154 376389691 607777005 405048996 483106761 233070247 264856574 25854725 304754408 206577792 855362419 11162103 90025394 36158309 108359396 34387293 252104914 217565237 458841585 282868925 861554441 621119902 881792249 535406801 993737624 741458583 977746245 337361070 387366354 88050924 403763198 183352748 320284604 318098813 335554773 254884135 962784855 376204289 990676205 485132165 666554120 174194164 712699480 559210047 593748105 489210613 551404255 454342342 941435570 812278285 907756654 500243494 657977927 560331948 602851362 77866886 556548042 177381846 797732649 13632297 226990438 149665402 788366938 666476715 828931413 368179264 744815992 249012776 897454375 359058582 773218671 145179716 486848605 437441702 841186381 110315428 456398159 141468100 560052575 254654903 730049863 554932463 594343651 410713013 523334354 483727888 818753721 279039348 731146161 78323527 935175423 278002008 715303941 564325617 794290728 387075737 983552847 230135906 606282673 204005283 841238255 832993579 849382963 445286005 618725379 474683779 639072325 113432530 679609479 387364924 887353015 517795837 925511001 401711807 803239498 315426394 672743441 487842245 737110349 655997326 793826266 351373657 782788591 650355702 655748306 598741171 959368751 592202785 885472368 113045675 246416767 20922664 33467988 19785875 734157230 184641515 991899205 522798854 848523979 275880297 632081712 233638959 869349249 217346369 365016583 213121177 277113838 209414245 373955071 220340419 817790242 547407647 837000171 561251581 958191645 379254109 763245208 369062012 901050976 376112644 907945557 439627489 701888527 398966507 772636238 434829353 441126697 282851502 727893813 624997968 832055430 824158094 848484719 504310033 574771464 546312694 591711737 354046595 902420635 700305343 784885347 202270939 785508466 631685577 727200911 497671571 650763628 368416023 870915306 743641049 935778094 553048274 733299201 334226568 906720360 409560969 900389536 737851182 841529573 664200437 874649350 802717717 959704264 426734129 986272283 351958432 975813671 781504693 888319030 730290100 934204264 690513906 869977745 691461489 912867258 546035312 800526765 650245346 771305536 644137367 872286044 162736437 353609093 334107347 556788872 521459712 822978673 514262892 849285999 505567851 577324123 178348885 287775954 265482100 476930278 174475508 469429157 365027030 750665983 659787474 671749154 670742867 910137027 14959589 22327735 15903880 372843151 318455437 974640577 343624230 716309627 557597611 842740212 639319976 800342849 146087994 406467845 55256830 378773360 130109619 219383013 93211417 109691459 17750449 742287449 239805825 530310248 462034418 576111117 259848915 969910409 855874036 968755642 596951415 956117693 76980327 370725444 157615880 165350378 62782874 639051683 66829135 563295934 19638871 91731269 83929787 444930506 287178252 648424314 261262359 790855170 570585486 855416310 456585988 670760674 135302694 709401490 278166761 992056938 834206760 868390376 635951762 698389861 279699610 457916604 350964343 849143004 228349358 266556430 139655576 525661282 173078209 775918931 48189906 553317839 223818229 911605364 192578264 659042726 488508656 783217277 325712922 949962364 510505062 864875753 146120426 254842297 251970201 367430176 290990360 379479933 291685017 756092895 459940651 969105738 734740709 991532589 515405264 751266376 652500045 851494923 731419138 767090512 148854180 300019369 131661731 342904757 137016421 735536762 620693619 789275479 54860985 127866358 44414534 739834553 725144929 957943887 755612510 862048950 659594326 660469487 504176829 804525137 701803187 790628775 341578560 634976005 374832882 953123818 71241709 836235574 588142798 680196576 381210041 932015527 886238758 935276250 764045707 925582348 122096568 635381096 516215141 638698030 631243349 909372522 449174567 998911356 575536743 999530923 355184599 520993226 153741655 516880110 20953218 603871137 127811416 463630082 302012799 966368555 844688223 926166179 764017718 883289795 768919566 790387272 539970957 798430107 181897018 764376437 435658903 465822275 409106919 788478796 48489377 522233617 495415758 757197807 270273537 829634278 249930819 510203862 324765868 812759421 592719605 733151577 110247966 779763775 50233784 232318352 122045259 162560362 77991963 757126932 6735283 838264654 456053958 938901773 849492671 924096222 615542913 679910653 15636904 899455985 459465855 506226963 289308289 807893762 442392953 832546262 284251531 451327853 49139073 481221715 237904954 283687624 154388194 649765666 438031281 859058280 716589965 788045644 617335632 973680691 108356892 966119633 915925496 943426463 841249505 923026799 47099580 572319900 131175198 678583832 618155766 618358302 412274789 680068877 448505624 903709840 750639619 954057365 335633358 454920553 129679485 269294870 187832281 605872894 173426115 696245430 639983690 878581023 843810247 916850510 247042970 514334041 505111898 746931579 742147069 989494530 375238401 864594816 46384670 754661953 716102244 867596142 257053855 359840110 312045504 905993127 108144160 231823996 53326178 365422359 90197348 596479331 520093486 869808501 110823822 253988971 126765435 232465533 76451384 270696096 238043720 293334314 48766796 965760561 416904221 774281656 759683709 883454978 41640031 507389318 440200205 849092470 347992292 683671054 303746694 520306002 127201164 577317498 492847193 528144505 256406798 668854929 353989392 763883713 551588038 923944054 531463921 549971015 199284103 441402156 428949904 722480429 195811857 802257515 123331571 912052616 152635251 487341669 170387248 424467976 264325974 517252846 273066400 916081217 266440395 458713641 96131252 596847977 102728136 338235841 173219799 829942842 108014872 551102863 485042080 552331202 338802723 862270297 252289261 469338788 409454853 851932227 748660219 824097197 134106361 230706356 187212555 196230282 66068717 177395002 43038802 855732897 672150986 945287777 806251722 932384192 32067107 485448664 232063204 976938163 756600984 978734638 344980022 669853995 518096002 989029311 692003168 830459635 502723891 990559652 758092701 943070497 271758396 904709997 761708886 789491860 649076776 850721399 120459188 280821872 145985587 743894580 444803457 794082648 504026795 913444090 455338863 495581614 100764547 783689552 492209367 537207634 252581374 861936313 427220829 811235197 360188731 446499581 92658277 974922748 590771687 882953758 408889663 861017224 546772676 762912908 664779077 761130369 108440745 964799818 275922133 770758269 444247971 670242230 5334998 256531605 91592024 357041617 326334684 957757128 509975410 664906302 173469050 590732846 330810408 721982759 619899593 714719522 134941844 280965029 98373054 342594719 233227033 507543236 499670721 504529970 126000677 801468691 394585367 795661239 607636957 672467309 285805041 824759060 445568296 762708556 473519436 884104886 7900472 680743680 238984122 590096300 540734901 908075328 662108253 737965625 216215973 372055587 30498596 190866771 92570258 913248826 812209452 911932308 822998039 847051991 166192937 844562310 53085619 952050246 624121980 735943896 197412010 817900302 812075441 941854316 648113657 762771048 678256498 978704422 70338500 946415582 595163277 598638980 264193141 825055487 712798047 924995488 277413618 631126093 30752817 841932360 308052245 869835439 563867915 595188072 14549710 326722903 278079713 382375776 193476246 209377028 38554059 111675781 106831321 740621485 288270090 355752109 20814912 487344366 111427323 313188890 266571893 875997678 699257346 980313345 52094822 631052472 232719159 721150447 136235603 681827547 119556246 481907953 300726828 945503859 623890952 875928756 399847070 459139902 407157943 622024847 334962258 976173837 97288137 275943258 47622872 606346038 453611860 721861340 474352923 522431667 103133217 508342849 275849954 831172654 92293094 650993924 340942646 580881270 198496326 669543356 18332691 585452483 436236671 487532105 211747901 312817217 67129209 448095935 179780903 827819882 808301681 825323204 544208647 695559548 593594658 947588383 39138337 945987299 824989483 916314081 203542712 506056983 234653503 434352037 392332645 904527200 199537260 383165273 187157375 883032036 610572319 752989544 179912666 538087802 436353884 614504777 197875374 640000758 488183113 659563404 440337936 534751766 23137777 286045695 211339522 476745407 369777650 481005244 57714720 456297810 80253945 233287829 17599250 60641759 56159425 523616710 415856400 930480207 851479335 875878978 239975930 800356858 518640048 797896089 508195356 639162614 111982558 159318499 44383644 977433022 76105376 705289800 544625394 933380792 323804983 895429916 294987831 503881336 393897245 734600382 304261506 559948814 222451318 476162693 290587761 427052953 336902399 582212158 242767002 301897776 221498045 495040357 163512371 963795242 293859450 869592363 854586532 894474761 237254387 383134292 342920724 764032946 9305146 46149898 15760581 755582012 553823088 877903999 616013010 895801429 356023600 883918720 864690016 978229333 116149832 751548416 171430513 398815648 236847618 766857375 191928124 499227298 464234671 639505929 590613884 635640133 492346030 983473027 148962384 447602346 76309662 613156132 487114305 802531027 263798926 690762660 283973280 540484654 319444862 475908551 443703064 530291405 514412406 664721584 328495412 377810890 231891049 530432499 4012796 580346347 573900830 887976493 216560268 745753915 251393370 659107401 188872006 708008969 487021282 491727394 86733984 100373265 14708831 751477785 196228131 435176778 283659458 332565221 59200406 805289302 568067131 752915548 24082801 80184530 15474517 602580267 109193875 664361571 293663993 363576801 71061516 233808577 53856749 730099838 270801417 495974180 266852124 308844577 101730943 424376004 340243081 654224361 117417114 366467365 46782701 632518233 450432464 712888415 458948674 618949504 52029432 623285855 615328857 918420812 166598731 257997632 210135174 934835986 196172360 357375264 352977732 355653336 324023144 579524662 560305314 794042406 701709697 954805788 850000967 990955837 657354428 819382112 92416095 998176437 85724421 751201619 626983353 938292891 35518057 544968658 305904224 630537764 323200238 376963251 274103523 641126187 293346715 635229484 191121551 394293328 93046064 186310204 176737400 303211220 125861878 334175345 54058080 74576403 45592291 491660090 265811577 671219997 373546355 714306069 329687138 573638957 456730275 578931046 155857170 201892978 171787434 537415849 19624331 238635713 58051935 660926326 300857839 680371862 483459829 627802016 409813143 670249485 331787024 815249250 103227328 925524474 559321608 811401479 588928502 883891968 421290846 696806891 282360611 303515977 61402901 613286282 463960604 493687951 254504015 703877807 1365858 178659384 124015403 744602852 368422325 564463282 530067111 543217020 7288489 435013258 53462379 808036704 14144737 966989848 646472738 758096829 90775648 362067591 9804341 642081103 382882524 965971617 551509513 804643838 462130208 905821392 485162463 795133349 198147945 416866757 7451985 44964599 40697356 360610436 286750287 725679623 397542294 916458761 820116930 885575017 757827846 817229243 668563142 807008079 215491338 571398062 570589710 779447960 611212337 890759092 127189879 889461911 564472904 866415148 193908362 606511588 303447044 957611737 263641051 751361927 671908304 702035299 230904766 662409079 213055481 425117286 91956738 570447827 115162166 320157854 107942780 311290767 154396649 703099396 11694271 186619044 12131618 300013750 205575320 399489970 146641116 980733590 815202648 872705661 481768156 573439262 167410558 600715673 341729406 420822979 396270447 399199740 303210161 464782133 224477498 995757374 954525603 997589227 122532273 135435306 63350140 768377018 10968360 101163289 20062720 617122436 211806223 548109114 19615497 348847941 325937947 612611369 78608522 934612508 280543637 311911930 29405034 292049053 4289506 370260752 59159010 822081430 413598070 631592343 245128679 497309259 252408614 802790778 657866741 962154702 949331490 999654610 173937206 278540564 222680381 603634478 303783008 399023799 236739004 826292422 192568283 928149562 2634355 31367489 11051918 145105146 107164219 449347006 332931344 956880498 644907852 914401509 705956075 872642433 545220201 769182065 544085720 591230945 239491329 515468613 42017670 819582808 472433677 690281602 628007138 756834027 145064322 662357085 290982808 802499127 640342949 959802037 611680422 757155989 27715789 347870503 26267687 592262012 422730185 752574337 746564805 912702823 355205132 591018166 101214009 790802552 578865648 812100251 282543412 677753866 328884598 571026016 259901962 278346420 4422788 410811948 149153679 268557532 112976436 341116738 166259992 839643869 239481678 399634055 139270441 629750127 403582252 886529723 495152563 994151990 240877533 328700419 73476913 803752109 47098705 689012436 288690816 314038372 30672861 708644120 95444085 517409272 37275092 389378964 228365617 644095429 265397938 581889971 520065790 550967563 40918482 741664552 162249855 567365871 434136650 503765737 296940984 426314045 322419283 669447439 473828306 535361011 152797533 464981272 231647176 317600596 173646089 584678294 293837553 814415692 337962169 352769256 298155185 689752759 40756529 315666299 195726120 862241812 730668449 800643593 404318272 948471555 202921916 224992802 116118251 472610086 352028231 439122717 265188326 776246073 118673062 467955808 238183189 916544775 728293115 848737376 626993443 963226349 548994347 979021118 939897275 991138333 672610987 913809566 910948136 916067260 373890488 375901145 81548628 694631825 221926799 913399071 693568755 954340740 564957080 884128901 52482717 761508788 309073786 926210924 243534848 421753940 208305131 383469079 70682759 386846049 352181225 996847930 193231090 836281246 122811860 236543436 60596738 437828622 331227324 623757932 433749565 532455554 2804455 135291322 119084030 975902409 35178046 649315529 419440809 671985812 489772842 788233841 537851932 606922473 235746530 900673612 853798008 999659422 641006372 813591408 609489806 848633536 503885534 727819154 286294129 735420651 67469229 936218655 407654535 622696996 281613661 508144431 343875853 435843431 182567195 979759423 625488074 876760406 674942957 988709028 893139191 897958305 221107315 397154494 329767894 350111135 215736728 839141298 557598148 713821711 184054862 420112555 197238152 258243055 228032538 421920903 399651710 544212728 321815772 600431236 260002935 995923564 816229306 877990203 190019759 597466857 563821765 865432889 500745273 941392230 533500227 556494833 382556304 400000671 213478223 499123046 13930336 449955753 231013724 596972608 64350200 284820479 106225617 421825300 298558160 873655733 253485151 764297588 501656185 573434878 175263899 720455595 266775655 306151904 202238951 349477347 233595799 256049474 128364667 204858640 101376096 104096903 75195556 431168016 134277688 801489517 665796578 993968186 576160406 669828501 18672238 597815104 376767136 964453951 846788838 926549960 434422911 973365367 488796411 779441728 451231424 541884405 506041921 715185011 121371385 585204078 334468470 752493869 393213640 540970750 225027272 408708847 130089102 257543823 33948298 313993796 142894564 943725294 261022180 951345940 125661570 560737725 106434268 992651595 337948267 397612692 10802159 55291414 17852095 223525133 195639771 622513668 126830348 370508610 362895646 753991405 97251836 253422040 203961159 620616833 391961997 811130465 67277470 886185793 768647760 771104261 339670841 652118493 403450445 947509104 361757647 482109902 298919542 876872732 138548788 371587456 148090061 554838252 33590986 829970707 365947808 930139461 335218091 811574152 589800504 797378474 186661266 801301993 531082289 937909252 702191286 906538049 833580752 975731825 825136414 924930488 601115329 907871475 315614194 818676702 465400910 544321966 442370630 641901843 606918324 675166595 642238555 698985186 44238531 419720225 129462365 925297213 4363681 538260509 34005415 356816280 287908115 386269518 65889746 516450027 58782174 547823431 55193591 809171869 433444004 478217397 25496998 734038634 615098437 663649079 552109528 705636313 461695651 971861308 946829230 953319314 28692682 542161216 352202069 686422905 380853540 934067944 199090127 370565369 319376268 800028643 188911729 433751042 291330905 350332133 191696623 859120391 422967710 461879209 259434993 333430047 179779413 383689755 146463484 502584846 219753784 685815848 293978715 790265274 123983502 243557384 163163037 557765384 99710220 360092122 23081905 848210234 451698400 821131192 298066348 930228604 695958730 914401968 729552232 902446038 659642368 737280518 230635213 732181523 44115987 284782041 164049353 825065036 116250530 866693927 418701908 777527831 357625689 871752058 510079049 660498737 279144286 747986047 185681336 722597158 131309550 385271998 274111142 880720226 556275756 701023056 109202137 251770162 113824684 343151162 110953403 120253309 116393637 981723511 775778517 960333793 353856744 872766892 125812732 909875378 411698636 583891368 414578890 949607277 808112316 821290551 197683463 329344388 130681393 851280535 45933726 863396152 694334396 889318470 175678165 296776365 6382421 518302031 29473263 473205060 84988333 174131459 21074132 493373777 464123763 874031311 52345403 439199009 364654187 971216149 370882320 580786274 182227285 944874413 81995917 436685123 116185799 591430091 492373249 783160440 315844595 681228521 114365800 215961365 15241658 300635313 98060450 193626576 185168181 724468273 663713058 878864551 314687424 850927998 321587429 344501708 293513759 940009604 6164984 109694247 24725370 969771873 68848913 769502697 188706447 793509970 190520478 743871915 276403654 497397164 205667246 965325171 807898769 998845367 495602184 816265738 488100356 596833052 107501936 677667287 503385629 846179629 303404562 310040339 308840822 712576985 331473233 596649313 458053248 816928034 307444204 663940205 600129764 678371206 108294475 635091830 7832833 930065656 328302030 828795541 561247601 708704261 575527194 983006396 277983126 333732074 50178615 115868232 108281733 808305544 393828672 428881307 324459155 420542504 348213243 576475385 428000658 566832196 107185955 814613195 174654366 440824695 147623093 710336864 437581311 900797541 81403308 899615055 779004218 868766304 155731051 404403539 362748475 724385078 236320817 415849199 405914728 883839183 751228654 968357682 249554076 453583430 203708888 821644038 271444895 659369387 344750602 750207936 18903894 648730638 414311309 671990383 297323586 599052334 321307390 520149491 88831199 412105356 348546443 428914056 321597951 373544187 272048528 589278734 407685666 898579102 493271334 542694724 328459034 499232350 284885105 371752408 140265997 287213873 213572926 962747118 461701036 960311515 578881038 844288093 723334955 779495290 324293485 360286136 271742008 452536127 436642099 951405718 26760473 836835513 685902075 688935945 662577200 887775457 645190493 671129219 31630282 295142054 134261084 438071681 119898299 188664406 120367028 161724775 153284004 243829798 196998903 560540828 484221103 800221368 140248236 797572352 527506169 910771055 104065714 490599694 226776869 350178687 290827749 728549480 642683735 985662440 537294353 692738844 10376467 483743914 64456497 393207555 34491858 70649097 17508223 970419676 850023344 923009134 187566464 801487275 791931751 988586811 308265976 757186717 361771471 545699199 45974867 90642165 57507278 903609129 639428856 702977576 431932592 902285987 25533812 543138409 150444172 890231674 112757861 669122834 19464625 500284576 134087019 457135267 301434912 866312840 391985943 919217287 248402963 885173329 754852230 788130320 723716824 998670474 182421619 622592963 319634730 596415468 238249951 751045620 526291205 912711565 80001868 829179257 26304881 191462672 123326448 260669732 250258473 411525373 391061959 395556912 372760384 414326872 384077666 803854896 38774179 932155320 901958262 949559598 492758501 997584402 832087099 884119400 191652244 873869920 494676899 571539945 406862046 539789383 339614690 832964046 229542127 646052607 459958809 797777753 596434078 729909044 410521688 794422544 713391651 853864672 532623204 630943685 372235349 634351931 435742716 681045084 640963748 860074571 542431801 780499485 662835037 891066180 640436652 877619062 437080310 976219928 336574085 413719451 189836659 742870364 626602150 710194749 440781964 785451303 210234121 471279728 68306561 962232576 417331074 884353984 448392835 452039592 215237462 811464592 223718481 734521165 112416969 297099081 82338507 513255254 349708517 565623370 160539048 381915290 352440340 838783278 619051966 725642616 588797736 992361656 926123653 971570456 491746596 768811519 748850589 961506826 877480065 961158858 354556811 522493201 8761472 316569949 310484687 925437329 40023468 852655713 16081826 509724848 357445566 650782858 36955130 458124442 296691681 872366097 156834780 198542602 141329562 721960857 657198661 757453597 536564756 840509288 812935032 953713886 119976772 358574966 352336253 565095448 502739797 692720115 275650221 712880747 248065796 773018582 33099166 392263483 151445229 866366978 88703327 953450308 165851408 935981248 232834467 318626555 269683929 852965864 356150029 587423459 342747370 401888367 85611882 679230367 609692458 710917826 480346342 753302758 576619813 594646296 571907917 664685965 607935178 670051317 535876709 926473911 505063453 979991594 945398350 953697035 370370018 523286603 268432460 850044785 101123947 380871322 300621271 787267324 468970375 771157938 648455151 680155223 446374127 948901722 254345384 419869393 148855051 705649369 297645355 407642446 273128586 422568092 80999964 461395684 417363520 739657043 203779897 627318026 327049715 631845940 550763785 577932634 259318355 655070835 30368935 798102120 682979365 733258100 359071819 799529660 197871646 667097585 132532364 867220720 194755019 557476658 177720299 209338237 118340525 559562432 87799430 695390755 688937984 857432648 841153251 974875007 337084474 826031352 217920032 936269254 212143852 447580658 221154155 302995658 56554883 438000892 24143151 528895405 449693267 874425150 340663229 948304111 570428510 963070277 406573431 800246877 263022410 437976934 333577668 911807209 831549309 864855410 274023381 910698737 724621517 826051195 645322677 869163125 702240506 854746303 233832637 550817742 140221042 684590894 192000145 835889236 684270682 786487056 452689914 771224605 745399506 759186240 83775213 983919209 556152408 801060311 519868262 828310807 190535274 979821112 372600126 751043751 655979173 996221863 740543295 860304799 95290916 853004789 647100320 905112754 713673439 889114037 259061286 861274498 838011554 871253625 159701891 838359896 141180832 750070218 552642544 881930020 869733960 969920441 404451077 663709140 13801642 266285573 254407859 987730837 633309458 708132689 401485287 440199257 354334473 421160663 275220751 884514999 124908903 792361719 583011848 846243094 125934251 416975863 108520205 473125847 22660034 795076528 237333592 910923062 23708713 913421132 786071026 842867817 54570768 510987059 286719412 958993129 320085822 635249463 414263560 503289105 433386281 506065407 290805609 987813094 32340253 920884623 588282717 617692715 310954138 998665154 20101457 676520498 575210413 682272501 258097273 973954035 193572667 406159774 5991477 478476284 174943030 766370358 490253304 839802943 659003148 988457243 481499123 895541916 271177597 634843833 74183956 508031155 293119524 634239080 172064208 509069276 318440683 967424298 79059369 100661166 41683478 527443449 354204263 425278943 248062574 620554683 369454098 666450758 221165194 619132951 387817800 560716621 558237841 637818680 169106850 184087223 42848322 442455886 289180458 344243804 207934005 889923605 162193824 679198401 640176930 827567876 76908877 261054302 24671208 687861545 47880328 790044551 754959294 812251465 126610605 523268267 391032147 467657465 187444618 959698026 917360802 930635765 272876781 951585525 382159727 935254022 31238197 786137847 730175302 736204553 149635734 788871945 570997519 977189094 864750526 879558974 380938294 819290309 777544460 979122046 700836700 768654596 52017067 526909130 122396426 908338177 94505670 340072279 242454921 376020500 279398195 921613655 496729367 871516567 188876435 487305995 192186468 414043662 92088365 802291762 115621231 487019266 462977893 969142978 287260894 324812180 314714413 629263247 221330571 988454448 653287309 813334094 491090973 579093511 372313086 863414689 827566055 835620486 253333568 696034056 200093115 844478353 26853721 356219730 137748286 862412107 14289533 666177936 285963886 600138958 195083025 793817717 370726981 983509719 980538469 999200821 160261289 619574183 77836256 200655444 126146931 805259985 486956141 560006991 491717179 997917687 613499213 933120007 334166296 602753211 271974570 391615914 304641459 445851065 319133284 844153270 790533128 897775100 472676984 958324595 250665207 794655123 441148757 669758448 650281695 985888462 895672133 978768372 244706844 759316074 3681261 824572040 161296787 503795581 114662609 790491438 475223839 547479992 16031253 317968616 157255324 833295075 714970447 831601795 624610156 662685565 256518381 744624396 596286326 626248691 278946359 445552735 356833213 422564641 262304915 834553114 561708677 851671587 759584772 849538906 39571435 299434009 292452881 812832656 538182659 975525005 163497623 744496470 456293884 622225612 353635661 979593117 694236634 890729924 501128766 786415534 46745661 433986746 339932223 541959112 482264078 939398323 33706773 210564023 150858533 874923298 49715810 57333744 653048 984988828 354875509 967312434 325473037 430367275 330738003 453758241 66981775 815988928 173960723 660810747 404785993 544413146 99962190 507007454 466897338 560399137 115002541 602378009 598758917 945815135 768784119 990611581 101726681 265113408 60749915 945453933 468467086 575873503 230652466 571580142 225777566 559526364 171861247 572466423 377162134 852445289 173321906 471883389 193259947 221432616 96128505 516537844 145158663 816933062 720450 859654523 260797755 874635043 402515759 597384699 47541494 593734125 190121049 220258890 90036591 579495814 308603344 574237758 202016834 886658347 244895894 738476649 50430887 428196147 282705883 635300024 43440912 440034540 286305769 670849132 15265854 913562008 235137333 698935563 419576903 617893536 617827226 952976086 102251625 920160699 442190918 992671831 898354833 981376192 722168786 891214856 505864596 847199954 723998372 816204049 618491351 938767852 709514465 788483631 755631048 882970830 155669417 506033738 206861338 498749410 251562991 655220071 519769657 535804594 379111788 827730668 494143693 944929950 303951322 834054423 796733689 827081744 482324549 947253196 829793098 985015430 266167124 708500539 612214973 942036881 535441867 547436434 521747340 526691933 346720193 443930776 342489249 624650848 230059899 704663966 516026924 787060676 418161078 780716972 523509424 909082970 747713605 957729654 158066737 709681006 683643490 705244100 695745463 859312526 345527728 883718832 744358552 979204009 136376157 849422146 230251483 588494153 394115878 592268286 147722005 473507132 118965244 401372372 136620116 971976004 344526477 954474295 741726922 759618013 339945497 750748792 668286979 937063829 695760192 702310204 57860249 407046555 290766562 638766018 75448054 921305008 381152360 519518257 160286170 470246767 414803538 558710420 354149322 413795338 159562178 516570140 61907115 367727484 282071490 450731357 315561795 540495717 326642508 435767756 147775365 563675212 268478086 342796653 84574557 699557960 81633441 418889368 169963451 882142422 352950714 669881364 523746587 959168025 318809712 746955874 537964867 940637298 931254639 952445756 942956261 993925567 628957727 972424805 770287121 796964893 729026959 836313069 498954912 955420180 440679049 726225659 198086797 546408192 379755800 908507187 906501972 944897448 466198021 845171110 310820928 482193297 408894869 681360845 343053233 747761822 658560808 712609737 464381410 490090415 433892261 465780372 230767693 878665209 11030730 326182641 244306630 757491151 738785654 747117088 584453852 691520487 484526473 942842183 38855787 798293755 129472083 140283233 1207593 950741146 233782418 570113635 437485730 648224947 500969696 586269898 9350374 190220872 37902756 126595415 96200889 713850831 713745890 808455277 670939660 953424756 716762027 757032324 423291108 788003089 68288457 403215428 101587540 656601159 203525493 779512374 571823143 577589510 310319373 445181603 21056477 503980316 264223017 798811100 115021245 335358735 293520147 541503033 183195026 603191711 154000567 386992980 347020328 422856849 344908449 930110134 607843547 774799491 221707819 482507654 352817060 622976052 174487223 605749408 450058062 667191981 106434150 306792175 11053848 392895287 34374903 204431076 198581025 639861651 559107965 628101248 92040597 917267357 540483532 932547152 849940241 922016762 445600019 759177847 434636821 553546728 366633914 791963786 669048107 954695534 579930653 978104627 7266772 364035113 71369520 585794111 286288274 592460088 96000156 689256552 471819581 565794692 404287395 467015678 94948925 606568275 146841630 558530887 399382195 756465422 379994397 740414157 639736602 942592673 393823993 650578165 173179452 778911090 655589059 787313848 715804679 848090995 424964861 673952463 608397425 908542296 562988771 765536952 112639136 349190267 67450206 795119222 288532930 715568369 635525273 965702646 3762411 543260402 114014002 915221105 897223583 944682311 811992156 830446493 353852399 847325745 310941324 669755281 530147550 981536175 623992480 838262294 415869358 967720321 190871731 688287502 266697144 513034775 235233299 800210767 271863425 466829381 199467999 422115372 64072567 826028220 336081795 733852628 273094843 533167172 159710724 242932483 74536419 636485571 191502869 199460099 101490367 125176173 15988129 166156389 34036019 138563201 16432401 231092092 215963930 972609773 387556059 649741777 230626879 669317701 274060759 689910733 313839276 683584283 229752958 802996493 166882006 256295097 5925039 364919476 290132435 821398693 34545688 985357894 502840698 505236445 70508455 864536814 765270794 799875904 409008636 578756959 11853551 49270531 5376752 276462318 198616742 673854074 630640570 711041032 513013136 651759417 558579616 698835712 292812159 440236197 20312472 548310544 9135711 147625409 132444147 504798939 282951592 284869240 275719364 332773252 85274208 384433002 5925506 516601121 329260436 371651218 144273001 201496548 19059784 259581765 161304721 710657181 470975874 811580805 35189892 137894535 86349164 303897687 142217943 513606678 274763833 774092801 718275604 961374391 613395306 813369677 733135975 769645136 631168705 923698874 257487395 815339211 617245371 656527782 295393932 782285719 20871047 825484756 36770668 677818895 223482025 616015845 319377823 522513702 147138954 826663510 157425700 281968451 207784595 829525434 4248251 806316688 453264736 956470813 99723454 836975967 294459947 928232507 586002825 614027387 494451875 549907778 272610255 824880952 804123063 839212249 370034539 736578542 294968617 567368844 341585345 518412085 85682696 512251817 302762843 430293303 171963678 750161376 101719940 496708522 353042447 436415322 31843640 135564272 85446350 381431074 309618111 919099840 838124339 881593447 588680819 756519243 598926830 729342961 293792156 393246000 314748835 647896740 477108070 975370685 401137639 627765810 179758893 544651253 307084654 938811032 334495273 468009126 97620427 696644742 262868184 750556651 575546537 889864172 748980553 989614561 29093659 50351764 41134746 813167964 719121609 828512764 199439338 552532896 37793283 997241519 299005437 508352332 16699042 374044731 311446596 726519900 320069609 590900185 553091602 788354214 9519380 531398810 158086431 645373345 602554073 731690746 335168089 703043729 67481516 730082194 143705986 827155671 535560480 539795406 142605413 352622837 299699136 939257020 214993555 603314112 557393843 970111116 195218056 441804626 171919671 210552587 103042780 769075861 487693403 998527791 297908698 663655837 537399233 601870089 342231100 980357929 309276088 841735043 687683280 840133879 496410231 912040645 209604986 858797011 579559122 690199794 369578400 595552083 247634233 493469707 101855693 558823753 177116149 357794806 60309615 430024415 165974264 181320202 4034241 347300948 275701604 698138691 637624420 700108323 617118387 680894467 264301605 459599476 47369607 127727494 82283909 601400039 481593719 738824800 25532219 796263102 766005676 811708804 734124073 842027878 614042130 894581981 708895783 903858473 428755527 828485328 690485295 728083284 332065631 584523421 460063911 858867351 364989596 576193207 555653702 915685985 768289907 803075233 212444928 538134142 145500273 416092200 318310950 496282145 149707895 486899226 308339425 527857923 347191809 414016788 165962472 633987019 626885382 852323523 559944281 813392252 144489540 766908519 730768376 942522761 707331384 960527030 471148569 928932858 853901547 871779447 187816459 506822223 468247188 520745640 74035330 947549861 343716159 417245849 294959765 603741402 105570785 744041564 435588174 682168330 17172499 135902550 80991451 803602180 244077005 493145268 38592169 682461012 220008521 788517643 341688944 417402095 342095039 575700471 235573150 856965337 552662791 850955163 149579930 436244312 237848803 410448928 401223672 654997799 146704032 976022842 644742524 736165485 132947243 497759913 426913713 656302858 135603986 938984340 768130842 863514433 832574452 906407629 278513078 373922558 299097854 432902461 244933774 274839988 161378483 388143635 260028345 363824892 256368475 778332512 151662394 959766860 683546462 995457875 871105033 955385107 861294196 879112712 155988257 873572077 373109794 617161514 132548425 750270024 535432470 775613021 549513527 623427277 534342233 762869575 750794440 968734778 598260976 869005357 711030430 784994188 532167636 992668021 138609116 522613569 114761943 820652593 431281304 559455110 375570166 396059269 356256891 780839139 481179025 831458405 412552926 992850786 125454385 737057398 64913924 93853329 690562 590126391 300150250 303417507 115409613 471734828 209412632 839492865 249677211 961171293 15826727 765011916 140836527 701141424 252916953 540595010 480182298 779512260 774577564 934604542 924323879 966874585 293316191 376847912 174408381 855766498 340411777 492292940 234675545 687002904 99840737 388329454 284121489 657342885 628146263 791871168 333245671 857204836 678603671 974061469 235811518 329624155 92467402 168434619 83332834 369517248 180867388 798100567 1471114 721263927 271002846 901203455 368154984 426151722 117577967 963495408 124304580 691643220 492460137 910161336 545579960 657888168 136862646 869420346 263742960 272061422 271901533 307458543 10490156 761518035 308884787 854483282 466480099 628918105 374215538 488757616 415546785 749106595 457853220 881283959 253648722 569778091 314659987 447486151 91763720 355223741 262194312 832704480 112806532 400296198 301165515 697805795 217604055 408762091 388397223 637219369 183886767 431700110 286985883 421707749 371256625 877493173 154160011 981570327 886952815 907667857 545852642 905976584 788045269 788511803 718693335 896334881 772985823 870096478 765902202 845093038 67886497 715432824 545664545 704841419 156324191 991804737 445698263 716428937 486358554 987004918 478103918 795958740 615183809 720490921 612993365 800881383 43622541 780141458 302488734 351578815 66678126 568794630 434845691 751764750 36215361 538264364 362270850 739780911 499010448 804940193 708114625 875712339 679469642 737904094 73290612 988039727 486588465 859475580 560130614 738890195 255654601 477271717 446709631 449117919 15113960 128862465 8532516 977176543 132710567 563571918 405650314 758796627 102593426 950672161 186418661 360529373 250793153 664761881 9549124 862851731 552176702 748797068 3794182 974947027 719511729 848250881 354646376 928630237 331689444 751366651 180826413 383997787 124890196 724393991 226949313 854652087 212699762 923684387 20715200 476594010 401192082 586667114 47117127 245534705 142575648 288032933 153111248 377441837 352231678 634576022 285780567 405697366 350387898 973595447 779504101 895858272 620251966 745124998 210136031 981410385 485298667 786973675 702260698 707583919 663820353 996811894 545310836 555363147 189156708 792747678 698102129 927045534 820664307 889927653 25587015 593360234 508220791 637626608 108613473 280273630 7269455 785893858 378976723 871309774 689470233 969866049 165776076 178562048 128642320 167353849 126095610 974591909 471418955 538018496 399067442 884134510 163144961 933554089 682201131 891041497 859799685 947853576 628432529 851264346 513612063 798445312 410142856 957966700 349381706 415608512 316396600 686378529 325321711 946173168 818250138 900333724 870932875 953374239 334161845 384265213 222285615 781940718 413546226 729029622 321984932 775757196 545129931 962222485 72762474 846872744 414031953 685579792 212647677 476391546 236981240 412856924 375346339 652963885 224573500 529074322 109571270 282298300 279571185 850451522 38088979 219608708 14828811 980856269 548203429 640715789 464715431 474536932 241966105 571307941 2465732 409830546 185828857 638404222 24386059 380238579 148916751 449585598 89643778 624315341 308789412 903625556 727723918 778329084 325757709 770604923 206994278 604682031 81472526 546381325 274002471 485275746 463744296 522801513 455857310 829071040 547918847 887936433 705491039 942419469 30470348 696822475 388533846 389907799 329646746 625737674 372183182 474891340 463046411 941736323 433771741 849748936 82532458 288258942 214160800 631468566 533262189 732240608 487648486 514751158 195736758 311912516 19220418 62092863 28911678 955196269 178415468 470418519 288131433 477854057 475175162 791560826 453692177 878972431 532005041 921929252 310200048 468925684 76385126 966187585 2679629 473642846 136059606 530389888 393931012 539586511 213902044 461167937 327424299 397086985 173511303 529996665 278895830 700381679 590751536 763091739 723538645 827256545 123783826 393121237 178027627 622193329 31471182 732439686 222234376 755084630 86962531 242104131 211228543 867692312 524642899 659275703 96654835 139212005 12975229 948304320 201034654 859855412 583437207 800504745 197891763 485769626 155791388 647100674 78476001 326922382 13438869 898414210 853088099 991290088 138120186 216116126 141549779 833126025 688862353 914507102 828909349 990861126 836602109 845719559 692348737 950114249 912455384 933743443 693915198 871752951 204103303 336948253 249395526 389752648 274419740 546476440 2398077 667404354 602957275 921918774 251435246 458015022 121454588 496588969 101878750 726480271 597008316 904687990 187428283 837814712 630274704 726598771 509422397 511712982 159714009 540095709 58936150 680440349 544939731 565266682 456860741 583112207 57221204 922846784 526587925 618268440 557681132 690274971 433658736 674433997 210642774 677136452 596167011 714204141 421255665 487814776 49672454 894532030 573446970 881911939 677458794 895215598 757693708 997179256 429348105 713089815 375018547 992567575 481847655 651557386 389300731 440523940 240830037 651336730 441102768 702671810 520892471 816572399 368708986 520538802 281864402 573438616 519936942 841428747 729479981 925355135 577164586 743311554 24832312 693374069 218279627 951627987 562793544 724143470 169058862 809474935 551695519 717252550 242434964 411668373 94560515 404214888 268116775 355684627 109129854 518585229 4764600 856746968 383854869 523482559 418442063 980540549 966592655 990138086 421215498 490657232 61381452 573912202 161890765 924176274 470281649 835508462 32840186 326273092 33942638 458952221 151441847 229013616 91465057 655513682 575157993 809665942 196494452 698671982 173455072 889857231 864699818 997792390 124603744 311229177 57847601 99872244 11561574 207923725 10338439 161934851 127358197 890422312 393187761 480542613 419789096 597861168 499484464 990190047 967670807 986620609 503884470 770902271 389179359 472884759 128619571 744626089 76634643 259621914 258377811 372220010 63000590 232832294 1159545 381555593 181697441 619925321 482743823 724142486 74580612 996712871 529572503 804604499 151869603 878480603 606969027 630603032 461225143 809138478 258714328 269362951 244514582 423235588 192909463 485148997 271898174 933929034 558268354 627611607 158676657 464421890 190373185 680911990 501882951 936573340 874437196 903136829 62830675 776513596 353658691 665376659 591452996 630196760 574586245 814154585 365777691 387679230 375108550 789417583 522528568 701840029 542152404 727484070 558431661 798742935 260362544 785417928 718876909 937938191 281179791 755253842 519256697 915351241 596932359 756722469 187429956 248163632 25093922 755102467 443884094 812065119 641399153 953539467 731066994 888759878 64420743 405696369 215731097 883820371 342363719 707201188 156153661 169643462 30598346 157452565 25682503 904468305 428268855 762107506 39165104 728087335 349892012 587879280 347039005 537754389 358487344 531940572 131514092 624619858 495181330 625260193 71175505 348354914 111318512 838198589 834377301 890782851 312511259 420994423 377263904 991722131 789784422 834176764 612071233 847691744 518270020 881966989 845293059 934908816 594337035 972457258 911462931 973573025 486947270 894273385 341662849 900053508 97514910 716901876 352813824 655422389 235284152 660282636 25411638 54448272 44957432 780249410 415218371 925592598 677568130 876937996 286553928 739634017 665653093 913489412 392547012 644103591 307334794 558122177 170085558 551000906 233339072 901685268 164790870 305848889 73470398 702296231 491123138 781491400 24971440 565141746 436369906 852887367 332047792 391499051 220748260 654752839 126605904 467057995 1066539 547516417 145217695 991306193 928088074 968853856 384103647 658978848 204452559 839427061 797043602 913766532 30267655 825360572 718097637 827095793 772876318 817497207 129408462 133842013 113054421 710674818 634756877 675229965 467645613 832238687 248224372 266520444 223555466 875712492 516886959 948821519 863837926 898454950 493802707 811194233 629935868 795848659 135172614 923689987 249827035 343720285 126643010 998400262 934922375 949412410 314577782 860534696 75442393 296320445 165561617 775556513 333131396 635777555 138149201 739538007 92788730 984838757 659399001 680189832 274370388 789655916 494019349 802157443 14659738 819137500 532299308 982519508 502084217 702472857 297912565 795829307 256557106 869306866 592029404 852254457 567928527 593708153 195547553 310311874 283520261 316863835 92989319 805818304 510672797 865290906 552156870 617182666 604179485 607507475 50217764 121917221 85812530 682991424 199974794 555728470 148898404 891369223 395770522 774388259 609831954 843333350 259179249 368026546 166802567 618652161 522116600 855927996 736884589 784297547 713537074 825231269 283409480 453961477 217323910 588200310 392315904 498471095 410141018 837417630 339889984 518575895 220038536 277772403 203356800 695244612 310938889 659395605 5152524 807439480 805895309 852506241 771592267 846641925 810048239 991389230 347129883 426706038 328066617 338329181 182469016 501004830 120137154 893055939 282869684 428063370 2139991 433505616 409517849 854975868 381840831 489772201 315194019 645014850 372013759 848098253 337975766 351695107 151549956 594540447 516746187 900410923 868741987 978221376 645795988 952432313 238550991 927282867 524066391 648388344 44024670 317184012 310348347 824162580 550478813 642835405 278417485 930290888 927320967 996183797 169477799 276856636 64741779 894509545 836903239 844583149 48638025 908045787 574229881 747930479 211160995 467698408 241032437 873699399 651295292 943869529 383987448 738797412 606820591 792648617 706496741 765669938 758124025 814763343 147838674 206050799 16398851 69145777 13671701 646009837 139798223 901344839 182668675 763252101 349032381 894922426 60558077 478485885 205699940 523157430 197411045 907992696 500988221 634283648 583773844 791859202 248355042 439419911 203728159 575224670 444950572 699717531 185642026 482777809 280914656 467674503 460899082 474349576 433706202 772989810 690488844 972400876 508289839 621856344 419109027 867486556 62875731 937721870 491263570 754481393 506211672 977482311 279537149 734332748 429402446 777167146 767097702 955202827 34265312 233790149 14474855 706669347 612809542 741229434 582633102 641900358 268342890 414387799 94958526 180749685 173752445 314562878 179515041 418550854 308249910 343468931 105566354 391168775 145621305 770905083 360057610 456780007 378661452 928135660 908010280 974205730 477119835 680097359 205646352 694830155 171575151 469928082 406273665 542930749 486468621 530952093 182798990 801944322 649205476 709864691 565229851 714897808 308358804 626434298 357552382 624653610 153166913 872159392 741905586 746632767 112750412 204176177 75252223 446521613 33291489 910266292 495100051 633284260 619510661 919024637 796556082 805328359 421430158 436355959 246700309 341017512 4634714 21877038 15912105 715814771 483227046 961841662 45114622 477567100 280305891 758404513 450382640 732245504 439722254 810848624 627437695 821569771 287655308 487014908 287265616 530928480 426781470 494050990 453120419 907692969 323347228 625860597 460565559 898285923 226429615 241570129 58884904 950544484 739970991 894220794 726839449 881730434 289493748 397441522 269056920 774478816 442094274 935959100 411522584 777052038 440455076 518370453 450231923 678365679 491188760 697896737 33877671 169116365 14757251 379643893 118677919 607842430 76728230 545998989 77604518 863145887 419640765 449791576 298106762 804893842 188089262 352640335 314979868 964173275 257425509 866215462 197708569 704537483 681967102 872293845 462831550 829256024 506532362 724196708 637030146 952644162 847179348 987095436 526746485 958396307 544644883 820899235 367842275 807850658 468571096 851822293 102586536 819334825 395575077 696652938 568435624 912012427 406681952 975706627 210454492 636925088 10843833 68576338 21873586 918946838 498432699 507319046 421392371 894605899 582968541 861764614 620816156 690892849 389515511 519548939 320490366 908432527 726262924 960008247 344423703 434584135 288214528 513388242 164609674 604844364 575291253 951477130 399274965 414791735 17176948 109738639 105964438 774208049 698160907 816017710 781690787 999790789 887598505 901843471 298392536 923688048 190272468 835545584 139163756 367524475 161648508 812955049 432616479 720819045 675902333 931727121 253150411 719539696 262264221 672843451 314129515 591672094 516262965 811063431 772891585 965614886 637352373 670078634 489769631 554451363 488912832 667986511 195193866 832571509 309221169 312661634 294004588 617484232 111569804 218641181 63067375 130403698 5964630 878874707 353752851 364094592 67962021 152586830 88423547 656859527 56744818 275537694 140463522 266202183 261694263 644576404 176551161 444578404 274487829 373930502 206016066 846837979 598653866 867994376 545200944 713954830 552864849 876408678 625558559 724087238 126603879 470637024 429344223 560463974 41946459 334218803 288728166 897988201 793341244 816679129 731983363 767737809 355860228 641223437 492969743 865721514 406784465 635529117 90206636 599116262 440096319 937158958 772551502 916892844 219656657 838700242 644064756 975936631 10198584 801793995 719451458 786684349 749293462 869951146 522916156 954371670 65212134 575798860 488220735 583523565 529299137 637613471 68088217 650678418 272496596 330803274 137029535 387739276 256025465 421873187 315159974 842209351 636421701 642990506 525241773 661306169 173299603 623035079 213881209 362835047 115029588 142826795 93137085 644960909 467397665 766859191 131271127 671219170 420161968 775037651 515871290 733077798 309775685 328285399 252355973 957376715 800711507 959825604 748370058 893484184 48783223 294792346 237860175 598788741 480184807 542946690 495762616 924918435 845218023 944703402 408392938 949595941 218912818 778315828 247004926 972510699 886216388 971961155 527768613 806673502 271997680 285279746 157634571 498952921 180648952 901651999 658130911 809132557 779281168 972875715 615155350 821809426 46436645 298821736 184054241 463587241 187596153 950744483 556236523 866131652 345948061 560095192 251051801 590339527 50592983 239607208 83552804 509279595 458743616 890469254 34616217 574704173 200799228 693719267 381406361 861617150 300067155 456897030 112387459 970888413 259914795 896259493 359888523 467228613 272493713 862109534 602677123 723649963 351593663 460436243 438479768 842909121 605442918 794764898 169924866 832989518 442335543 863173668 444518451 713377646 677530875 770175617 345095420 795810033 128558850 191023301 102207753 551086333 85241380 683282670 108608100 214806116 145411633 414136849 81780252 812157839 416918810 834284955 364928769 946443485 254723821 709235426 230435852 310002241 36391702 735197341 343554025 598276995 211247816 495186950 471576284 528916092 186988401 684862812 184343846 593741475 124358379 891665011 485755198 714085012 242627157 584857142 31884621 162943064 93921567 131642145 26449618 328555698 114820364 581453581 20934881 507123346 168074118 467255331 28601102 704994666 125761661 882954526 807408313 844206071 185154000 306273807 20809749 230372239 164095664 999838017 973666870 994956585 767671389 848897493 409019432 894700298 269867447 611394378 272077093 374624124 181057875 359306167 141048322 986137190 362286747 745056097 191377159 494523235 337079656 576558726 474851935 979986403 260534738 318656719 310918390 907501825 424143169 537152981 399375509 746772397 152183110 821543476 636236808 692537558 418033585 897050674 334992342 805346799 169973526 838324290 606912131 622670233 37936819 798223059 77999707 967989506 863798725 913734196 848334832 902969822 415227558 912649373 177534464 538965637 368716156 427594237 130302261 177938411 90504067 279424967 250371781 398128938 290863371 342344640 273659580 656169757 111877401 183391105 30115767 214843835 195194754 992742914 396418938 666944988 455714213 767883128 669669960 928501217 706892660 951697301 568381560 699342018 343674569 822908387 112898330 718448875 506929715 556925780 187954719 510765303 328815167 850036556 587957372 903129234 224965763 477801292 258269160 623518474 176976601 314976992 298950969 586504482 95635796 593453374 57965778 130301309 118026291 283717998 43091326 185602011 41610963 384512747 272892020 995308044 524214061 967340682 49178635 956397752 375026678 984297381 281667055 821510798 812025707 979266466 622943836 782274108 511629550 878292125 276489275 735315088 134536935 516245601 342345759 495601779 369718557 422506980 105994590 539389507 468882159 904602491 363341078 664104198 386290264 935651741 315618721 641054195 2754229 986798332 668905296 944971728 266698177 477599835 379386584 514441713 380129664 408684843 84482694 994904173 360515354 482243963 190050126 774725480 592351641 825230492 77010888 481791763 131988586 631888287 481091171 808280139 488203433 680130877 217100839 785755922 727950282 895312272 892856599 958008337 447998044 516900593 430396068 948703582 637043898 725470340 442738762 537971972 183845503 715651619 651738670 823706670 401453550 519013636 101723999 596664163 549563830 645151869 441918654 625059118 228793863 482267501 306510355 953376756 190704863 669795944 555690250 829042386 523139835 773460476 485711549 883606303 561656360 691689982 685306953 886371550 487728496 638477678 555807041 926898681 174050309 990821840 854355202 886112740 446137015 458525542 180166710 397490744 127205529 233073424 149568999 902191294 85322794 94650570 36033978 356243338 331690122 637057621 71687138 76779590 14128992 640686320 123202624 167975143 61557984 178743271 166276665 605167819 246373934 945306268 4853107 85449013 40240369 727258641 83589041 539170755 336740151 675047106 58156292 99571875 82594488 334164478 145669891 587758036 331909881 563951820 398821667 965802214 508285323 765042561 501740042 912015491 285039890 699796934 218902273 428045848 273362086 461697956 347364286 603236564 42081017 921428982 331040711 929045471 563505571 581241912 160895846 502842600 376705480 913261590 494690553 502142990 489072661 905951842 659679927 898599720 225034345 603594976 4996794 382059937 215715061 467575878 391035769 522808389 380290967 758697203 325357086 413699231 251974290 687576123 632271865 834136667 760533690 984471567 448312993 604296069 392844709 728116402 32293822 601529643 349793149 803934591 135165459 735996475 697185224 738162539 263429709 815924781 748916503 833925374 382066423 914720853 41521368 669485009 69094337 426339528 85278121 927811848 454317642 487583524 149511171 506891325 406388862 716272422 79741950 528830490 368322319 442020613 125601501 843015417 163301916 865130645 315369028 491565210 432481899 978251826 672950812 931281299 52185929 948071006 461378076 521202306 104232863 118696695 118530618 872885299 314750091 645271073 132695561 838168807 128463779 957894566 63092100 418567903 153450157 183534208 11006339 85174407 12927785 290636596 56827476 316607083 167281356 411916519 350181857 392708038 82701621 115592332 33349328 801181505 563141863 689797084 138489917 156530151 112959799 840626062 341965670 532192825 519621223 798736630 301800423 844999250 740032099 801394302 760762018 913164583 704839292 774000817 270445191 636477129 118813785 455891489 277917260 997815801 329326612 548174176 276460634 896415553 397789082 493334486 437900427 598144106 564964575 937301229 718975613 744519295 587494277 643346454 112378905 945839258 189533749 498255577 9876332 448026450 242272630 497271861 403697079 780178831 292853489 417792164 309698213 759885055 468880939 829744128 620238902 691345102 13034649 653166283 539121094 701195819 480719946 854670852 726274520 857980042 758555862 995107665 254426848 850297669 700667080 745741373 213854956 662668026 75059108 789830328 65550627 402106048 208571813 576063679 425656905 992945540 81267753 437796410 390647246 693954996 128855325 332016249 216833110 460819173 105143714 427630743 195543969 759196681 737544954 936382212 280326247 540515084 445416225 925404909 104308650 962261580 889670450 943896233 678177367 943788801 682922651 762264169 65987127 188737382 116921038 268486907 158678182 384487987 201567314 691412145 19705205 644950435 541765890 958549489 42451945 541255603 55878284 906875942 891922848 975177376 756750590 871233635 309900956 515614112 369790873 972502205 288208241 897436785 264041773 566319955 230280495 307808103 92803769 912648093 374345179 678992127 662060471 935606267 65970138 798131130 567173168 959184744 381426473 384478960 376726047 868360437 138712980 723200048 521168920 911644178 887524707 999796686 588618355 943948433 145451316 926928601 750252461 904193906 272512803 847416543 629668810 800414487 644356026 996319563 567804560 925235691 181139261 484505340 55283187 848784288 233577084 515648794 264328595 690709785 648393103 816727312 220577065 288323600 54736695 676021732 600908506 950700227 853214348 902883782 744801069 799550413 196641364 695228127 573313542 723137097 105160620 989202468 84124622 780177083 621815101 747448935 70667881 995563221 419354821 537161917 97795405 194884742 168023996 380064965 182475066 519980558 322559383 734239538 637607189 960269101 933768987 976299311 311617021 588993152 212389609 329844813 261410316 833230511 77829127 839872147 422111340 675647630 155616884 202584602 103134286 301547276 15718347 722845714 279126627 729226292 193794895 922770647 614780641 929998595 467486286 972211803 495101544 515068038 67275026 881106160 834596521 889487785 516059700 639905573 626547917 898869466 823341698 919725816 918343886 962504337 453313669 554311571 434444439 552061601 520570354 687291983 540539905 895532717 306755644 650588123 110716452 184044801 21635407 352371564 189638582 875943220 30255959 303650015 300424249 478023340 231491622 737642520 8797605 959128818 802163736 940728821 495187299 922670405 427031953 859849752 739188738 983355232 736649321 745605316 430934128 790795224 597926457 751783469 499557224 943459391 108759983 639557689 602933555 832768341 144674668 902847569 125876737 442798373 72637630 614045365 325647456 373820013 18627262 249486265 18786148 153283244 148742571 477913878 389784543 661391710 323628966 330158850 9929429 676813274 387697709 465033038 135017116 390426685 110660833 755525827 252979516 601669300 492372827 710338086 339095353 414082090 19597235 460161737 357029037 437717382 214195285 236319921 97623901 915878727 770807748 810803582 4638352 509467989 119726292 751552199 248047075 876559972 800523165 877706492 497339829 838277115 706209848 901107601 410016104 689930471 170400824 944910967 141586411 363535957 206178095 274723643 167100660 183364567 103764333 725554466 363505606 887268814 34629429 196915764 130326235 480576096 356262189 729494946 217871030 683383979 553238453 557133090 218529882 356824985 29202370 97099876 1657342 302338042 16065562 632520482 541713712 644217324 100399410 135391223 121009928 349094790 1840961 136275654 125388079 427715581 309192894 499637451 30933106 468024020 12121688 268808356 78914079 506551352 471904720 602470776 471772439 637065106 458128235 901937716 892731041 992435461 680077302 809824818 410510863 762422009 576451752 707724016 504837332 548495716 272260603 988012741 621039684 965788135 941615429 976937740 637213130 714482225 706198106 870812270 292452235 954096865 882223561 969199226 98191308 328640543 315421112 805225869 480406455 902660779 434455287 899692324 594651921 745393146 160892847 631196046 518493020 897064304 357914747 999279482 450867817 955176254 812445693 946014022 869538830 875106717 651272647 836596991 814442420 826598205 206070495 435548573 4310667 495726034 446069404 717510656 20836743 484937147 76376423 665426870 416615159 917801668 879191103 909062348 325966206 881798255 171291514 269977934 9891631 318246596 258995679 982365338 405284702 690219769 401149479 589609409 250560384 678999590 163654166 389088747 40750156 241051163 197060709 643077187 44554724 280411468 48167573 956802068 518741397 997171917 307769496 630601272 160264385 319429850 252174725 577314376 30002545 755661023 269985832 938239617 579553861 659500367 599460435 876855025 852665002 928687007 224155828 809804155 414700330 741496568 553319209 626933588 457566371 865812735 677593013 956609733 586556723 651141216 506565018 674606198 207597218 851442829 554224206 566250319 134761575 950498528 516868884 938344163 489462030 640178260 589961967 714320443 347941352 631366937 398199514 715320696 246276960 588785236 161649607 312443034 34097772 394820807 185734442 689265253 129017028 546847063 20207280 962550620 709619481 736511579 532260070 888889731 317683842 811399057 233071022 705923276 179801732 496498386 283704387 962527013 251086479 813233047 535264814 963415155 91394602 529011977 222014362 645042759 521089406 621182743 166705423 175799367 52865657 217887638 25036582 520687073 347572269 362752839 295373905 749707267 397557124 975345721 596817658 718205056 716259399 876496422 282702862 530664165 148941646 649855955 39021659 922911387 442744946 979011911 416983061 805368396 645972990 745364901 704194834 829489689 634733836 748291292 728105106 827159640 652742578 976150050 409304374 671308539 509094688 961411519 613946593 913540767 236075623 553603410 323519533 882931780 648493119 862590825 820187057 883394346 833143367 902759645 765432286 967170490 710335487 908695536 240656515 892812890 742641148 941700978 778211341 876364306 732544463 850121890 239732791 708929705 560260052 700104072 700048073 882621573 599129728 719491070 25030304 461814504 418539007 501819283 406066167 615026904 30066347 803424894 560962182 904214071 298340173 601135861 66362177 926369923 116950558 674548063 323027093 629538323 536918014 705124847 414159821 639486079 202984295 708773704 250005318 709097352 210276452 918910185 489973391 959679122 267209344 944973320 462047985 679519192 302218373 594421905 557556125 796809369 304163007 729227205 217737057 302013831 119278974 606353430 548459289 732983638 353364289 472857732 40611783 903285379 397503202 436665943 389013260 480845131 431014052 631036120 65862187 86245055 82720864 607146532 198274037 935010482 789855431 808484824 743437657 901140265 192250217 354802953 16381972 795404594 215628286 427425775 277753186 769901779 372994880 915414218 149650281 639045294 413520429 894058053 709202807 880978868 853031107 903427155 216835583 871429626 142859410 511867258 356063450 839016306 668123428 796416034 69168444 195832627 9273870 911866201 296691928 625439343 492640663 918269582 19056380 931587274 558517873 939582107 466063049 981670369 828280771 894232997 696495732 888342550 554219735 874606975 166080740 266676241 23840685 33832336 20552186 726075864 625341962 954285895 452432755 545917771 197921668 564360607 21989165 140907537 36743643 457502374 264785010 446565951 13426276 658777222 185923900 595382280 211357846 671740373 136072053 728359325 96965681 107939650 44131209 754628623 743713429 789791651 536129815 803411440 656822723 816075019 687069077 741786231 367285380 622475489 183930966 832440044 516468927 866266394 237549363 401649435 346207663 448148738 439732760 533948687 68671431 874758752 236567088 688036171 105900641 907203447 822659980 887963254 402305347 463056888 79976689 726860493 438408649 892078096 146511280 317848892 37297560 472037396 248390630 984763613 210809978 434445578 16015168 422400228 24220273 705466137 345037182 560480703 314413747 555422846 417007593 758705352 531967559 980248342 825190462 897740229 204654355 215204308 59213100 207154006 4074413 273711062 68641829 127825709 73504056 790800733 17763195 418138533 291707816 312501198 130218350 946296893 488424321 711766051 370967944 934921906 235773813 729506772 364007136 659252722 588059640 996871372 39242190 648221696 13761345 539023410 14138142 709628901 493411761 685124762 571860266 623750812 118257489 639024596 427154111 524700942 504213715 656970472 302150621 702816120 148314698 627248063 292328912 632470338 92042141 757747634 467568555 514961348 461517373 971263585 590444307 670426816 284848371 403855411 185152138 513141611 501607786 983458987 662230665 930730997 767425820 867259154 145123337 812744403 275453968 554257753 234820423 455178497 238513456 860546792 117959128 487733242 182253615 720790155 686847729 919499633 195898164 281499027 240246873 330877687 311473477 796141113 326900231 407677312 288477832 387992855 382042746 701486083 673519220 916982035 717916863 738572419 548870749 830820001 179026752 756072043 139606226 685168614 21048320 482696957 46902335 834440877 751514508 837618712 34862056 332393079 45411220 66788974 55760753 879044888 199035607 380059995 234745888 416987770 183650217 384000356 248042369 566600100 484591646 500462239 435716996 929401940 367815960 568873126 22539875 956172649 451755478 853634255 40306670 169656045 44957340 448077028 349130210 893594669 724702791 727541982 271209309 614291179 414383614 762701890 198205132 844424423 209611956 336793555 141040913 257798620 143866635 563044858 260684445 755483522 22733565 629587798 102575308 536246263 521478594 889699606 474676221 723531744 442589491 474098622 31846036 660984176 624971988 974721180 418517720 604538698 4368624 979137881 180704840 213263198 169611885 747550917 356735016 748115137 48765304 788503385 416310796 843182565 482884304 558085129 132996633 442338695 152255182 353448948 156055541 316490312 310038322 566176995 442119887 617089318 518431402 934013017 563784121 992476437 4323130 537510401 173599063 246554545 228421607 952437755 892283015 989853851 62655641 694392344 260923378 619200576 601837297 912562028 704447547 858735654 211257771 682632996 266584284 875267572 366453083 948022612 596836838 992224605 569043805 954642422 400358854 516997214 490641620 678430438 497221244 804742517 125158678 131882407 56592620 264303206 96087888 336006320 195103656 417862032 32644351 616605396 349204375 628779423 555157090 671718808 89520080 811072399 789335211 848514320 516574631 848694825 658345236 739260238 2158800 124238070 93346663 965722152 266353654 343807108 217003061 640871472 381115760 591120995 281148280 707624840 532554156 672924650 140106064 194018031 102247647 846302716 134537372 398478824 33808201 977644947 573925877 586838463 15341948 761756099 317075098 622232480 171463770 394778754 389756802 907470406 436986556 995237496 321499108 978416094 243500607 288891665 244461308 586374752 440849808 987996820 509429417 806276476 796361548 837458954 824326605 849931061 553292136 961696268 452665243 864447040 104518606 184132878 131036954 552557436 444823033 808422325 173897651 346112723 154265643 224422660 153835814 983650290 578211110 895742953 597187434 982704918 369671238 548939467 472753457 508806477 399693788 932200930 666983650 957515260 150501482 962472271 948938785 971672201 971037799 972400239 796447505 973287451 270473611 660257949 470011787 797157769 162640305 293173644 66570384 152850136 134805975 988073465 570647997 811575678 776577754 875915882 5664903 184981816 146875135 803712210 495212378 599110762 466297998 868724050 670043147 900678172 722040740 766056758 301573387 304473650 99588215 812699663 210875718 761951562 362413247 593008957 552501387 711321850 193845229 996509105 995098179 999602724 996296878 999293653 651861426 913536171 5802222 524392923 109006467 209424272 46087472 314206134 68372164 640907951 342138 990458082 82698453 757303239 11152300 573114627 25660584 955171725 16270261 125851991 98052004 184547297 151455336 657086992 274264449 981422824 198513110 569661043 65686842 446320127 262088479 730750089 444322887 793771391 765509097 847664870 735745886 844243249 201773904 930713395 691274333 949074921 453118771 852509890 227957793 497858527 412358479 648671858 459483489 870125433 774161286 806571777 493529227 711866644 2456481 764347533 393190861 552244386 528668269 819724312 406448879 441727066 155782292 888789411 803268497 865388099 56167766 452616502 315146121 817028563 548970173 868955351 784295103 949701697 732975855 997654072 956809005 990035199 104987000 485049638 382226057 612399054 188519569 541689835 323510689 475616574 197205266 212481323 165448687 180561124 85157436 352781559 351212953 784798902 85769183 132216983 1526390 187781599 123275397 623294066 257117844 687467108 213664296 743905401 132709191 657207087 120789579 351570092 175145450 789344215 157968745 871276883 656123778 818391345 10647189 298365041 246503836 509049959 305367364 316823752 50436108 52330604 23995122 903598719 234395354 451420458 349412495 392240454 43201461 158260883 120764796 439072581 23826579 747371781 721745000 939527753 251799633 913213057 593940405 844406452 689443521 957008437 142996054 327496061 267378838 458082759 51843736 96078385 48261797 750294502 141303954 918098295 215126538 616181365 281553725 488113596 425149449 559019936 174152399 741369661 458036465 585355975 501103218 961987637 630599729 702538086 357189211 744403216 358155954 945756215 803424943 832346222 44619438 945514750 843667242 973512289 10233006 554777898 287767860 446849961 118031324 139180199 111875848 581746698 276551231 686180354 153492930 158542470 40811200 778523883 408850651 670118907 419301758 738729190 663666164 999519896 307238997 560446294 416127817 671900649 204182035 713103580 254463899 707935293 17284850 564386062 253441763 624366022 309419145 829667321 719527702 880742329 512856812 695025550 440029507 875252636 469194103 734063954 422639078 475488718 469955307 582093176 304638998 638293246 613784447 655478600 326348353 353038764 295805020 347356785 92480566 814518240 702436230 952208311 424204938 775051247 719283795 775215254 435383639 856138074 518465338 758060318 622616446 656231560 207409014 966521948 513474312 712096512 241742550 249001625 182055046 324149581 269412126 462433377 6594074 16545916 15453636 337283330 33794522 939058719 105253904 650744703 73819426 835948176 268166503 997608975 839023267 863507662 476206863 807665296 431835298 458207774 270033811 772725947 113874729 237989374 19872806 90554942 71622111 241711788 102677388 330505351 81146497 122789498 70772556 791439049 758366553 924998536 625534907 966696521 13194136 204983249 123891331 190292111 14245466 812982435 93233395 734826373 238057565 484457367 369184821 559732383 20113053 817056995 356344437 921207330 703416709 748884527 457971911 884118187 669712003 852394513 531587236 877009710 399653850 477074656 151942114 536666604 395707102 648079761 438005581 537844821 81714790 280021436 128125411 354819810 99885132 542460983 327349632 674726647 583304681 876102210 66772856 761577400 582413885 753819395 1603127 890800627 97572840 438835046 265101527 984053829 756970408 858097393 79481065 94115379 23463269 239141001 206830766 700157872 562124741 862414074 184868775 465773924 318503664 431803128 256389949 821244739 32204789 308072843 159892535 689355910 301085648 960150953 166574027 690870933 578956065 628091489 264120385 320320356 304289332 628574751 215539693 529049527 412678941 439904337 233946351 985454130 636755576 968947344 788568393 886505475 504743590 598096597 238092598 409292092 271057068 830352389 271559196 300127001 84830741 95836061 90976732 310864103 260618607 815717464 352239904 367929902 332504521 827522180 232976087 501515418 140312319 317080926 305068135 966450120 161202099 722457992 507658079 692971999 673676250 930265897 560450256 643128205 486819900 648543532 363689366 680795012 503213588 702722830 316239311 755320379 581597664 612903644 90437938 883150986 297761903 859238989 134912413 441775701 363262183 952592500 654747791 757389869 608440860 824693986 584134209 745911306 172122885 195794221 85777246 774401932 62166111 600690724 265267880 372585095 361085181 548481714 174534550 383464179 339646642 958310299 147510336 992110410 883147116 953588011 313226976 731962257 401076220 663826936 491010736 839711215 538480315 797281730 32400734 744824553 296194997 448281052 36639105 849466390 408215088 819089158 270876164 388902546 238329116 894845063 616840704 930859944 863224133 864309049 15817824 816509654 536331821 880423500 128737270 546144656 507025959 741773893 642508850 671732816 113457010 958149822 423222963 643244912 225306038 888899071 802114982 958957330 736784158 806823750 795197801 974337477 236472596 300473153 124756205 140291191 118929470 529715095 426824921 838939116 682172123 802696806 626397258 643346358 451231998 788886740 104111276 462299364 242633012 500399218 458613679 893402855 622737827 806399758 259343481 533758825 313117980 744801616 237555717 348333379 324309929 338026748 113333202 954305667 724923803 825842615 723452820 951133425 540884322 628724088 239735483 356935754 348760590 477797377 125954425 147742918 91811548 933843671 433277159 460071834 242848766 612726095 164776053 520396173 98061306 493369119 391348944 430869363 183605996 291515058 149117096 193073653 9518084 111714743 54984870 383059716 33912337 458869716 224276360 711062833 518916100 678896241 94076412 477364891 77579622 225681251 110579732 720201493 688045533 789700617 581747307 908955769 287066057 700084538 110569529 875357967 136907123 515779572 219892273 998852250 808353219 924885267 184372711 614323377 551509100 774242932 44358167 95847528 75181196 917778831 846200257 919951602 868837097 902241375 15103923 452788287 186379132 196442257 191274007 510493745 175068886 200132281 116414356 739975300 402779838 426338413 239443097 266378606 238197154 596787657 525119728 643955186 76109559 140631357 20367798 736978626 715653415 966896306 317142054 996890491 850178167 898823318 167537254 462463123 436312180 774490427 139469526 337191132 191641317 672754305 569947036 960490708 185937696 591540826 111530858 673878627 638033010 865403979 135829742 336993638 27938549 844927565 427329827 669494075 99067750 909848376 40234193 652728767 162529621 219391656 111475427 299803590 107288239 730731065 67309478 771631824 95218399 198549297 68390998 592618043 244898915 891744640 515748002 999366278 620270704 982701831 834083491 850960781 108102462 922867267 237461606 468312385 10603704 288016554 58652117 197249394 28055182 948642292 841607130 976457785 663098157 967292128 776131131 857600662 106339460 196266736 23888798 110934354 78819900 666060280 178901298 565540077 402987991 751888336 146637139 300939739 117380189 718574804 313332732 587736497 13241223 498307942 479732251 572438563 79641358 918242129 908019170 921286559 270158317 519519983 142535532 402831001 381570889 644702096 337003833 519566120 139367904 618263177 346313227 508103278 341396915 878458929 437158361 908824787 188924414 968658075 63261642 69291954 21084388 860729142 185076398 666240987 95234000 812814923 776136241 933370127 405193954 926522410 830257784 938397408 743406222 786545119 59987701 854022215 22714655 67034827 32718058 210030833 9164898 461936653 285781801 692232236 177739512 837337828 797832778 954920923 347330548 725801985 689919152 841346278 40860704 225662542 134800792 137563469 42210325 477016462 87336141 810646329 170452936 599733366 284414210 434224175 58101265 68770260 27134012 77845427 45315544 200917750 138216049 739703322 307755767 956306997 658322149 848164967 52894489 373390319 179853659 458006890 77736224 193420574 168610846 190170326 13976031 626876871 183030300 757847838 492954992 833888240 306264701 927175099 606313042 933802762 14286304 523866647 502027778 565496550 179830934 646043628 420921139 689844578 547528949 904701444 45364770 753178900 419506961 980061389 568517444 635881657 389481053 832175886 334098358 753097208 114476182 893067226 716004734 947270720 862998638 921297303 509120608 655694808 654552023 778474108 172866538 486853037 50636990 994395804 198150026 620516912 309277232 906786273 533534362 559728569 525256802 596054883 591199371 749425155 112800656 522832417 381503269 616661445 482099914 829452391 632210606 676915074 21598081 161393818 132579964 249424479 126618295 423880023 15028113 890392806 459208452 919489463 246014767 894376504 274041921 515278888 335637596 871788540 237010659 867797064 452442897 965205727 719825997 810827145 460630852 656065672 592618296 947793572 96383990 272369832 107922399 632825799 278232335 977826857 268582441 430265655 347031372 706515575 66214386 177956182 55066475 201523365 76550441 652479645 127584248 185796728 37425182 355908425 177625651 705217947 326838208 617720782 11309999 851467994 163057494 812054469 639422293 928410202 96482534 543721900 29517562 360666716 228516524 387556821 296832349 992125286 909747124 950392546 1865218 977472588 418179723 852373038 313679996 570792872 256620123 448897051 270952340 710600997 239757837 373702979 331585970 892098913 571786070 835680984 186726310 595089361 6521975 943090853 653581493 735652694 473788778 622526882 514008783 963790990 633453331 830398593 336098195 525803131 92454379 820727230 186580632 773672797 125056883 209712370 41028349 277283272 57188982 609656086 397139091 843521078 629991883 890674088 360347682 521727653 380613962 540071594 319889849 780771868 730404960 930607435 823541128 886153472 871355822 930171996 351143567 440864921 256554956 499290937 314998102 449298113 253433243 346527732 106855483 693972721 48538604 367054522 64713769 173545093 96242850 612673754 305011452 478260970 161644260 192482273 15344576 562376464 12436915 301832220 72051873 777544722 353260727 725097490 441844037 852166341 414873172 971945188 602597554 738887703 531338915 964098193 673572434 993793194 638841209 665295467 372835328 956728051 436165440 467146052 425818793 719348314 247616940 714315416 433979625 772833461 565345737 943081621 323226918 742198702 390080582 919164466 479566780 909240846 611501614 646293150 358686051 461610822 30982893 567351190 134424267 969500428 938153925 942456723 818906880 835011389 146122149 392773010 184151561 637620202 444965419 485257900 335455401 574352787 280584724 672911367 163190786 362095100 133916138 698285827 616614324 842935677 567008169 798518781 636633751 990104418 785844611 997190624 171900359 567092340 433701565 804476807 365409759 818676101 649136402 763771296 364057997 453754626 91689530 816296913 375722981 395241476 267920699 404238994 23071967 727238064 584923724 801861641 198753211 718255888 173675053 571850232 274232987 882771566 127417913 241868519 105237190 751815950 363076283 582894836 315936482 458781140 217207866 689335150 210542195 837915659 10560340 203593520 34624864 591294773 323893987 538266089 261255620 416845909 92723077 810408598 191440768 759633952 487939333 917566360 730953965 950303541 536105291 770586039 526648221 651457558 29380600 118088133 52966402 300135776 136396588 177524884 57947414 675997177 661791776 870378122 801412274 985144269 79033746 925495373 794770784 851369085 576784216 626950109 154025226 513749615 249955224 512072766 2567878 541001615 228051966 544959584 164051205 351282116 92471308 606097298 362404268 955627470 559180091 836894159 157619715 860325624 711832577 961107262 557309300 973631796 564314977 755493286 443810831 615517524 164112496 918027649 52688792 722285648 394763065 494126505 172793438 668192365 16224334 514434554 370158347 785615053 191647759 781183411 220807049 334387305 200673171 325125256 223685944 438106513 230608069 412719766 62646846 999473541 640971426 665704686 287010511 370698314 134297780 436579093 22672433 85185278 80391234 948574173 697793800 928780196 806543232 976285014 869703975 917857825 424733664 544489670 390366300 526437075 119258647 228331661 166266716 734453773 474367262 882121162 197636456 768818110 646206248 804530032 253034488 421052997 72332058 792133984 453872551 895128563 892433345 996416721 874642762 885313367 867662464 935730111 826598557 997312859 957393854 990377416 487754799 521405780 198815902 407848242 60370443 803502466 215830141 675303994 269251701 537603636 373550774 799103440 335257906 783512787 258537694 975391223 652115956 703571770 46700501 128219884 94841804 623007986 427217893 723714755 548845972 708681381 471807036 601215787 30768375 424003566 219213529 572854001 413636630 635966376 270497127 616898298 304224027 592961991 164698454 418916431 270732090 887613949 498707724 569666697 42631002 606759990 328457621 812327637 498548455 785291250 757668982 794795208 355538315 823216463 774064318 875659762 597501805 706744231 318208463 565326796 204463268 511640761 311239534 571239815 297680540 767935666 385958942 704610242 702219360 791501086 690310991 827752815 181401443 741834081 640207531 845510992 710358588 857905164 300901387 529384108 242418886 368092783 195233956 229093633 192178068 334172327 44821341 159807653 119142892 477554308 118169528 972091062 870581020 994603516 676612605 839477878 339133754 859807000 337656789 705391391 364836750 382289318 201488738 762061046 149345835 359418826 123720021 250972315 1757091 679660923 413834791 441280460 136275653 835807458 484565271 685755287 678815706 804979045 158384355 375485059 147631429 400324400 19296311 944549431 722561662 942112244 425426953 999120582 904869708 983336063 858062107 946730400 822965083 900169953 320304060 570773189 231448265 344114170 325660099 846918702 759302935 795383277 346077458 947625546 762532022 992889967 611621652 784924817 415789088 608166476 138059632 692868532 535220805 608635970 257534343 965498321 800477317 838930342 512365221 972471695 790152386 805628678 297386969 510703955 328324544 578420076 257655245 487821454 294563853 975129046 782077714 868991389 85509505 583064046 273408838 372789352 252478157 343259774 334413899 371353649 351340421 587257093 403184701 537025976 357170986 835114593 273460264 360950359 196675413 947526183 855941743 919003473 382024907 690473154 62666830 727728639 695266473 845326535 153236301 530352092 400470336 602001771 165481066 700196866 103925274 617779151 141454313 668658713 202847503 610670555 524004089 830167596 70280536 492329132 224615815 754844821 662547609 841325915 644164092 708751294 398672212 515280310 69208869 711910212 128019741 482441358 477790597 881919677 3044489 48263485 28652306 934674965 896590430 953424669 70928462 579116820 370019342 942324069 481744959 545324965 307063100 640041309 31466648 85885187 34352530 405382883 191759768 712478016 190706812 598000811 246017449 304786086 174010315 811948513 458775201 564602336 373493699 433679674 232729276 670101342 581148287 761637304 579258977 590824976 269734339 974485267 959446815 991516664 945232475 948590704 291253996 550662678 527728795 822555583 258673434 700937548 92266411 449722839 219250274 443515214 352174787 403800000 382657498 557378045 178634103 865052966 466116126 684545134 514629071 905918543 336605438 926166188 443223935 448953825 68908250 587669578 4286948 176687746 130149339 491525384 457856436 788102583 185294926 800938231 507166181 744851261 354758114 973143092 892670298 947223273 665828310 888884731 690317174 938806856 141952933 404731145 86293677 839324260 453103657 879290393 15003226 225036411 100291327 244852061 53738799 460475121 257231403 401623290 399127182 994269266 504244995 562403367 424038675 520515680 122433537 804487400 661868392 743471815 522425430 749272869 597571727 936480499 539215382 885056983 167983615 471414298 375953280 701239508 363919195 975000457 106550902 107416360 105490048 175109565 153474416 506786186 222714937 636982967 294902771 819469145 794161910 891413630 882268957 949806268 264168119 561718787 534893103 937011526 54708931 920815041 788537961 790690847 110220079 175452933 166354663 673441974 135381937 899144364 811391700 973743614 723186844 966912792 746384938 936312629 504459969 880352130 250879728 336036203 140666755 904643454 673731674 714252230 287769425 737988090 379767367 712063960 682320445 915189039 391533832 548719165 380534147 520840977 307267118 939740326 319031718 939284403 673959598 934748611 360228530 425133497 79905390 958912737 867810677 970735894 455470477 656719059 304567893 470767830 5954664 614247883 427762243 826138621 225545415 767480753 484721550 884864273 866632001 978792648 401715483 734682611 138896814 257666642 152240209 295126924 10496870 72397339 11355868 587439952 574780227 597256981 213386093 895064071 802094579 964472853 754287800 915945473 864185675 940084456 140395024 336777597 324884560 905661403 276274679 309621720 132417998 669290345 593732162 995506638 77552756 712843023 141579412 576618515 86422541 349007895 29331173 34478957 6139277 937768356 672201223 923990438 878261155 953182384 824208097 977374597 900081586 936536770 431931688 459230321 158259890 938866351 286811838 900557483 221482508 609535929 121879945 269616721 205810360 924358060 275164654 793520490 454368938 906246351 32216798 745812972 126728258 166048749 113285031 677286137 72291593 478212711 396244698 771920242 283431260 761885493 407563996 443537561 42699324 264964514 123190111 507103324 439253431 792051689 158396459 226935139 178261087 328123921 326665274 976594314 282763679 351600490 49886362 673151171 420703180 726348454 274925922 785639063 404805803 459950664 34542305 966999456 413817183 917061220 556081298 956318652 539080864 647265788 582898487 945094025 411224479 556279175 424594807 736291306 708378949 869827633 723701317 772628098 289532534 571493587 335544277 649966942 16001030 89960860 7457151 525498067 399678606 997113674 157253705 443593696 154859087 617441542 27770896 378905461 132332634 533268551 275588420 349591966 210157791 999747035 512321527 911291827 858148665 985477201 966627730 988859711 382557667 526014621 315321927 511631153 308611458 722023992 445266550 597705954 475919216 678655670 470005327 892913019 417533258 481294470 38809788 135865609 111520963 349854471 193633380 239104012 167727508 479115161 419696315 874035462 427638382 863572971 294235473 948179372 585953084 874860688 155493561 684694906 618465959 909572445 653665305 672942981 44759570 921199817 573101481 941924051 90172374 893550861 738599042 745019404 10802076 818346589 596879353 800410184 586311545 608548460 18081507 338998992 161038615 911061361 635004180 900318561 399661347 821058261 577697327 872522910 795370454 997050939 622789858 898008367 715542198 722185443 68941036 184727376 168639901 797935453 536634215 978343910 651744600 849250517 351011872 467467538 97825045 869153889 52768290 233300837 174089347 248947281 231354626 849621837 478641562 941864392 524108483 983606860 670414633 730747210 299606382 384026242 38910670 777740888 98153915 99042315 96202347 311543890 62760233 696607515 582192981 592081012 462854643 488511151 347248300 919563973 98429640 904318638 859111694 917135248 802376947 977281963 348904152 382655355 167684872 457905679 129371067 474807870 82828552 445654803 390134419 734258809 287442652 447147866 332571485 726022788 397474234 965823024 301548926 445253582 101745318 333908184 134173673 345897645 145357061 628116221 135019560 208230402 91979382 103868725 97361741 639661190 489760060 649474097 242488138 372123366 114894992 970039220 5483775 973518924 840483564 903187018 688732081 695734807 352671481 924272868 345667853 816476434 375718222 692331337 498157318 909378652 558802215 953957048 167204399 206505279 89034686 847377334 235233394 908482214 628100244 757174387 268415567 639769527 431676692 904529665 744237541 970593302 840951832 977925422 200871528 882218175 311784716 571408433 237195780 817489901 493781005 649259428 580900486 986894250 556173378 749256756 518969756 575238987 155414182 359485030 78210126 188121153 121446191 630850844 249862262 321224251 12664211 352168281 226823707 504717667 122135131 420739172 7071964 516143804 274146530 474093223 461771348 629107380 536297436 925329584 18688247 492891286 10935374 721136861 35105213 982491135 293582638 694488767 528920698 653776473 610119234 639394208 141320527 863532109 260195626 635518248 140724744 851706510 518463123 621257091 375099620 708779188 659195276 993959877 179366043 797494058 186591681 587281193 305949467 808252746 589176877 792360503 222097680 599994152 24948187 481401818 137705016 848509892 823647579 932168021 665583992 825966116 444840036 725355824 463403182 618848180 517199289 790401796 469021044 683709314 307669735 750760610 436104546 610246898 522972979 948156938 95623620 611716543 253648505 382897225 268804403 383209531 42622785 933860289 802037308 988549761 713865075 810700822 622988090 796834860 222342141 940198138 159304272 992744638 952621397 963438644 400835200 908145534 130592760 485166877 311990853 679534146 105613941 700747263 621437284 896175720 671409945 825603399 224912896 304271859 185829509 503823425 47973521 915416701 764973893 955991945 448717906 733698125 659368517 838644614 621922530 973627414 417763050 921236796 476414504 821321583 69465367 430078671 70690952 131063635 34712300 748655132 262724778 983222258 813875683 839689410 657023502 802733759 766596807 857871625 314833509 805760069 325670521 405171045 145578710 293722954 29722653 756671402 584373279 889036286 628840795 694783169 579492806 704892276 199665783 779088889 707926895 871743749 457722015 579426372 32840834 748355179 481731141 692064633 233450543 519031770 375343735 880850606 821064593 989706487 135603042 610643508 225184791 537861959 487429338 692119009 405695383 780989440 744862820 867623540 424285267 672705416 646703895 890398802 720254103 987848156 755676550 856048515 157984042 923060916 188472722 894699942 565219180 794702729 584635894 902508325 600080540 903301708 300610019 870908670 265427721 754123298 721539442 772673629 767129157 994568446 745664207 823418269 70946529 75194348 37474903 238361586 130110338 445023943 308823809 446944701 295305633 665056630 216614735 766507508 139034157 699874109 10531142 620745334 406557034 429244612 427703584 712604698 498480427 540772975 188870217 192815698 75160861 950275962 20553927 295135046 30798277 240475426 81720027 289579649 134344000 985070116 567409142 901282142 790571422 962960777 315750272 633852962 130648257 352454651 165058640 412544648 18506070 497296467 103926047 330413550 151501180 963900988 256037063 780520532 26313263 508824218 454460586 826199856 610262262 689029647 670395083 741968418 308276896 666829373 563640803 862308371 645671718 661349916 78802477 514337764 297722485 781901287 563809740 705826739 545939118 719577995 716568563 813009234 215093949 259418087 54023382 504718821 42023920 726703440 588458781 677226332 500407456 705096095 532868184 699406169 24794828 527111535 96704964 307415694 229842861 295276655 145530520 302174480 85051587 666269982 517061023 577319119 560697992 862129462 645543229 981391721 250826230 251156740 166727943 522647057 395853201 814857109 586321407 704041064 404678219 727355618 63746006 128218575 89877813 862244631 82545993 853968289 757908787 766234902 619523617 976841393 916338794 939887786 564701793 579328012 18415516 185212331 148741802 242464032 87367118 392343835 123385705 575716430 44659782 151171932 133856478 478360953 423621988 727514155 361325723 827756948 528803463 725022683 190786768 236546670 43578861 167059467 145031909 482502550 170771590 732919321 175004097 199437222 191467418 908810985 509160678 849252840 630735062 836931807 351676898 812434060 95266465 421244030 317606260 898166286 574943284 831827317 641730368 957201105 309493159 892567394 69159999 580569431 486859727 746232262 249866105 845476389 166535736 541624891 539498485 791749278 122128964 813998101 316700863 799730888 118479499 267029739 127653938 568512209 554698922 894224304 319610765 866084645 337678852 540645686 464369229 857982159 455258627 994830330 595064428 851967329 821347191 938479812 109118060 591786486 391325777 940943476 356928328 408626953 18704999 290003857 265880623 896849476 266193531 440639592 112618035 562147277 475363465 487360188 336181418 500904202 16172458 510004661 301497395 402608354 81708574 575118905 514312907 630376340 321036239 914713192 552004773 916148930 655189862 897158664 333478018 365939177 1856301 279384590 95452604 285714137 86371461 524700376 346915641 605753359 511286989 536309938 165674218 244037072 181743872 293965994 112029845 421910054 65286907 710008274 482873278 841023444 171985199 337685739 112606596 213957595 11504365 472114869 147030879 833185095 432824777 602248031 220641013 346405660 136190115 402190451 144856243 436164542 448236 750523816 4123695 114265891 90692010 674714651 256581570 296347648 48330982 164417855 52485367 418413133 332664630 896314708 331941578 768121730 149434912 559200061 159636958 898234913 305170996 865482303 352728684 689210621 466008613 518383654 110010052 489942493 180406125 637312265 308470246 879876069 396247527 800703657 244787424 744452380 546414106 635506992 99697498 238497804 43280066 439973647 100118701 183028241 150334958 734172808 269991806 746651796 690701964 712371141 297903905 990660843 29541938 115283040 98632710 754328408 7978176 271933956 98637548 992798512 54393301 390288078 259589467 950916001 228463518 820918542 691779312 786385558 643802822 719788356 199848473 258817759 53110910 343111800 341735980 366529088 138559361 494744550 102035155 484657455 365529181 617291940 602606118 979346502 172979122 282493334 141023190 372435493 366738622 627339028 399895308 595884903 124319089 633910625 293992607 835679714 79916076 776687427 236400893 332463450 139999917 739093498 590236800 664954922 251228916 863853890 652203463 811769118 76355957 444563707 197130182 619183953 189699478 605422573 37461750 527119998 458792762 600115306 58981031 443721146 396225043 676517317 231065994 396126777 200879815 705322983 529776487 783757200 236797357 879953759 764962757 987798668 357166817 768181925 328280770 471649990 407630857 961025525 543601382 908442494 505886660 971808641 140272642 557524907 480572018 978239463 805873776 839662613 108297685 134151982 18996406 539440469 22001963 219511948 82430853 796879662 179398742 730784021 171590607 228436751 22990067 452763776 325760931 992420694 95570648 187218382 187162250 375493648 120497922 153749597 147990783 977686532 618655557 739430083 20144634 273747272 138708994 551452212 354310516 828864191 461064639 677338236 539049535 854364382 261029224 541361639 5152618 587050229 465291888 969521002 753434631 799378231 696833215 961827724 644738617 758470671 162669372 624998037 561994166 928700723 42312208 731903739 168699110 866192897 132340059 642526170 456204507 769772760 143051378 943984906 2148608 488085430 181699467 411952995 308599834 773523465 141566073 762519950 634843770 748722116 167152640 846898883 198301507 511993252 67147980 729698375 69988518 403634937 201327470 546683964 99612183 992394709 8624717 145831733 16952758 27518907 27249137 794693773 224537934 432548273 376521655 708835700 262144797 516966176 459043127 743400319 733229049 837796187 705721277 782183022 391858956 687779658 184963478 524525951 303156035 840195141 703295476 705634532 75700340 751435098 488674388 918413332 590867104 797572229 479058946 607893852 361517353 736183719 429815900 723141933 420345865 443740533 228890959 244181843 211162895 799267417 607972466 863417701 664700192 888503307 503715297 965713892 680084222 898785737 879704486 992560581 92009613 556526535 265167811 456442800 332193250 879237093 471490389 764227337 65934237 668596828 95636630 284484918 33415369 389103932 283193506 508504864 66133654 68168388 57710352 460462145 111919397 152475456 10814191 835456564 716487062 859671285 711894107 713472140 102146238 531575857 30137553 688145824 669951302 825517402 520001144 529648815 134964023 461530969 339965487 981432160 467160001 737867376 309007840 686017394 393507982 473775458 377396184 761460733 15489756 765887796 370057783 679486153 251834388 750491567 720948084 809059342 79658418 713183404 367516291 384544868 287685996 741914937 402264507 681802075 417330706 640600028 552543558 742458502 488603803 676640556 382874798 575910073 251088582 382075361 78888101 330598684 281037932 426734898 184250945 779438006 655809630 717071908 674714805 788793804 394262174 897079126 657213304 741040408 711307324 836739454 83482919 638641897 561045486 933429342 503541733 693123843 376090779 765416698 622863220 940340586 561818520 779395134 317777790 632434298 248085432 597545330 239147524 836725814 441384728 478473663 10627177 391815846 323003804 501477127 217113220 790376863 160434698 345567159 78268922 114058945 52018212 525957869 414851587 550139351 121237704 991866039 113424880 992530625 739955605 824116991 240006076 753071077 332802910 457689364 281495914 643513253 367605724 666674117 279838504 666962257 401125885 748705055 560114267 680959577 652694475 936146703 36204236 698688554 588694721 744353997 169485672 350469954 314901507 573489983 311195853 505789283 283710630 747918956 606189583 972625092 815607990 908385193 472045679 574031419 539820981 611261927 301857478 302608550 152582956 960876224 299374466 691637270 261794488 873073218 59003489 437885472 405773238 473435461 363921456 406786699 382968194 958811183 860186255 929432624 492572545 521753124 242528215 380349913 168727512 683723699 180214377 922016473 262834228 423940873 759082 592482893 497146262 634188732 356285909 471994206 223962297 344978155 73948482 723801702 561280696 646349978 491222783 546597277 261034975 978235024 99767210 679208611 264591139 794927525 521374556 778680991 29206748 449046140 296051250 741437185 708679293 828204776 511899136 807273695 504692969 857376025 607535320 627737303 522531009 656299079 108927284 491291983 361213070 822934921 361516807 460514255 6848224 809637363 795910776 806440144 411902523 952399830 182440647 407953542 349756264 749204139 697710824 895166931 430689418 923015572 603776927 754539898 85075849 899679176 523389453 770872478 710238783 868793755 41179061 756807026 297655449 521048367 329189385 446504638 102504428 501267627 243183504 658887122 229575165 883830988 643774492 779161184 495426260 983379997 680229299 970634791 461347183 871974730 145382777 984153235 295756087 308499750 96325462 935195489 752005569 819951451 778356886 824329530 189957587 277746688 3473891 419088828 63683698 947857478 678015458 704903235 91777983 739394118 415492371 655997685 25748473 47912154 44498874 287632580 116831638 216889091 178986230 354029311 273809899 456437856 279136576 821983113 681517446 892841553 138577659 330719056 40854587 542484288 461261894 899916046 3088649 230132875 40037168 717282483 171951962 532340134 27372369 444775761 30905743 911655686 804764958 830715333 313953756 877114428 811972071 884073186 838210976 865622920 491234006 850742591 801950471 948920002 102992575 954509070 7540119 296374000 146732847 374796741 199488947 646729094 345003344 536069834 161219277 462995214 150914613 717455594 322680699 818779465 159638563 849404686 393002187 902086455 293577730 482626329 260175203 778269599 659218981 975050831 96753906 919210958 915011540 999643008 380594687 566519985 460557401 538544866 116487791 844734171 547595721 976323323 48542721 705417567 39396190 794836975 445159214 477179782 168121310 319292862 4761072 930481677 767662355 900583067 484545122 890801859 66256022 716661944 297540704 493339828 141533622 355473407 306640576 621473014 407928425 835150236 589076029 970078910 611399913 856834524 119055040 385362922 17704104 896694336 405905632 912612327 59142720 251220741 247802320 537150854 448190751 593854584 72470564 356722729 75598999 806120998 18226977 28266514 17809708 910431957 236093621 474196017 126918150 289089324 138595284 312775968 110076840 696341381 325561386 761782699 736103402 858469856 46957843 442154071 313729440 815938688 120536953 665560924 309769969 342013694 324569229 907547201 108663883 237265704 119259327 998146790 544940618 700685532 651066000 656469241 589367443 798926445 136911781 539337435 163421208 242624411 185822225 906855456 571765874 797833465 384393230 606999402 482783783 842831981 141370411 728099541 109882243 946837814 600407874 849078202 696508913 789742930 572381042 825267754 541568966 998394670 885057368 959384439 789473867 865353564 419397913 686594736 116529877 912212531 26507250 847412464 789255964 999215850 24366375 247177944 182415986 492438640 350120114 472181416 23494572 490597221 172312307 183149268 122006560 868726932 311023572 345336547 125368920 468822451 195683843 597973288 25887644 686295750 531020915 532761421 245154760 956895980 385646094 489560296 325363947 386578566 154305189 737050753 598254633 794840975 27790119 439074994 124709398 930278147 921718445 922175605 320252174 593837200 252549831 344242908 322231628 622611491 102943539 271185731 229848519 344430984 7753822 78675703 35347981 980636604 278471759 439851253 360168716 957843134 669353816 774788526 84012286 427699254 160499412 842505031 281830265 716788442 666535275 988591818 981891552 997767573 344806309 478710299 131540199 933656538 630514193 851178124 120399164 980144248 760801698 991081173 965317473 984034189 158130644 981473906 443098835 563665758 339562747 422215035 69842277 424794355 422447482 741621098 652033360 758139392 421538424 895145054 68859540 96998284 29910364 166355825 13234306 377680626 148231813 585258983 164740848 895757120 414353905 555359325 13503198 634229861 8105824 212288199 16374744 789010802 2253335 224579031 119727042 886181686 400894273 725285747 468191925 577982864 546031321 860933511 692650283 743583988 472108838 894578001 232559790 772465318 371523432 825497276 119296688 496962975 386975497 475840188 173226296 320345177 173069001 698979612 411245738 878477912 872219031 910140349 614719529 799107497 261976934 741586114 672557304 747303274 366019794 448526366 255304395 665653212 191428572 992346513 628903680 920466479 276846616 991463651 593340432 886479436 330632342 640079126 601921731 744315360 243097322 757589366 502328730 542679931 28465304 493621636 187737333 439782669 130532598 832655902 358138563 986029804 662697160 897544988 209525212 318752824 133392965 606798357 236500618 585869954 420397835 743933428 201838903 964372761 10577730 909195456 169272815 844161995 636422450 689861044 117262864 841858189 429496684 934555926 396547253 646710917 304564391 871598730 805760239 985352972 43104049 474743836 364497547 549486216 46011826 868121200 708553143 981464894 931336739 965817007 837218460 867715358 161970278 791902005 586289816 666613221 166833791 334057419 132578923 219989179 207201205 894804066 629856814 814769570 600451200 729883795 337661255 656254172 116806482 314837332 136333874 945286591 676426759 843052127 146155791 663625726 587206200 614891719 537768375 721382858 465151272 489469890 42211197 555037378 259180053 707601248 230408723 877698664 554745180 720904795 235874703 301733456 199175556 339649101 188382799 993816508 141396337 678651412 549964438 663336883 300906085 449461219 107439569 749355260 450872217 600348917 143668135 757864393 124204843 979773079 224639755 932812084 414820319 867130080 237074792 695694004 406032464 543513404 10289668 349270136 218195120 898980188 303138014 312539791 179049743 336251041 283401109 837794223 728822193 783302745 447082927 944513388 186995158 568009715 378460443 654964313 188746339 786602336 550292652 734069794 94565848 165067399 105397084 840584122 127197802 611710763 27622062 192200404 144432520 517685420 7380518 8190329 548077 928467733 64117846 708516588 443560539 637628994 75124167 498939887 298831932 516318366 331828180 577818928 100968503 314584880 132277454 841280584 255040613 907838722 834343666 884588061 643439958 779580131 164677354 186063977 181488680 575218564 499805328 899369516 6891165 483767074 295919248 880709526 573765591 606258339 95988884 167862969 46431859 239563044 41765805 444208969 272902631 881465593 459835230 518575719 115956105 654000873 619892007 664152261 259154745 507446767 501357205 690667438 108262893 488299916 123019754 469901018 309100698 604178881 77445511 458947347 99691477 911211646 860027541 898850953 320902500 508784439 375628988 375794085 369862308 742194034 643081544 858211285 20473433 983702384 928800807 964757671 591959417 949533649 409728116 465092841 16567305 865949166 655969699 707196663 539021845 661368084 540704364 627567330 420508556 681800382 453324727 494840667 450299755 753219831 587569764 645884013 560794888 978825409 883942571 908128247 247782406 649687172 8167742 20722718 8752561 363917968 30257023 669274724 96900619 253261004 214183196 536887978 291305540 593931917 151976951 890743880 33562626 215473171 17887019 619138992 1341725 389278548 159643420 897923067 250707644 297974731 14026414 851329690 415990355 449642205 367908393 407923226 322752891 766641177 321117749 659546165 368327203 444618923 396267927 981113981 201543720 619360274 482699299 516480070 357073697 574218356 475272808 938849940 668562094 960922399 307355229 934274093 185579100 655919641 546161908 627324824 193602690 244949507 20130244 324731330 255105252 783778369 755403293 900074351 383296368 773097349 481661234 653674260 441267318 515158641 164912698 569986381 261634370 358386229 24636429 128697648 58348977 632952718 534112022 914144049 294010095 735768620 655801202 682355045 37935581 987739170 717185580 943783686 762341569 861201707 781975536 798416107 750228812 936382418 393167724 399617707 318092274 970022495 77314067 326190483 90443831 683390215 256122037 449747495 142312593 392464984 301818975 320123971 275786097 804794609 73289754 557830342 266574682 521030404 322208633 517331327 193850787 999525885 339551576 828051092 488428590 641848452 165041471 632759532 356171663 415418131 328123776 709526192 611771427 659668327 175285782 939020431 194373436 681345177 181434250 253053525 38004171 732354289 447392082 671425099 577242713 798323278 407307341 975627290 912081959 969552980 877436731 936987210 296074610 910932158 480725781 663675163 602604134 612178711 362528081 372621983 309800460 827257552 354067428 660061470 340085080 363994897 141144623 206663533 107690313 571962879 380707951 730318733 290042586 730792120 304695241 957808565 244769487 576730143 293056425 438844272 163329364 478039556 391199537 842922227 55322383 230195775 120481731 342643453 198589965 729825460 167191523 829066871 808264626 852771771 338991423 619318118 23956793 26465290 14496530 571143383 552400376 925336715 332312121 680267265 168786343 239449348 64016109 680519277 80465867 796066085 200245685 285701246 245016521 967539256 402419941 460680987 181335956 632510204 496149625 926297344 331369550 997722264 229053045 452868912 87652955 702906346 314208817 978768366 842967417 895510453 818813826 881826803 236204474 749250870 238238709 553579269 424265012 910433367 561347647 791216800 392589201 900987075 818528306 942332409 417284328 641547310 505502736 525941060 351546140 529543306 332738005 943102131 873320483 900520640 283159880 706493941 224411882 246333961 74557934 113726794 36958408 933979105 422449157 861690300 438216141 842697700 478443082 813788097 69778263 954620612 643193218 946849365 2753943 263018134 74141821 130137365 115213994 870104862 728848504 846925838 9218953 954097657 367692207 449638285 198622139 372225939 258142638 738748336 676522059 980364792 798657473 998355840 98902329 347662580 147369396 717453756 99824148 546009202 244782252 659409686 141532488 736796081 722500845 762904159 189866471 886911117 400701779 818452494 461507273 905492416 588382457 777340640 106341830 505673028 376193239 559086992 496755751 911460150 693810292 862789131 252527881 665169181 314280773 379093647 257955076 811570621 517054004 905557192 116235634 812782378 338235124 690024903 272108620 801522520 424606059 693105786 378831064 501852734 181967361 648586985 617541443 993583035 497393929 695971659 147674401 718409853 567344923 922040030 417324359 822679509 144457167 923628105 653812085 720652903 520283854 694589649 352021401 580185293 239859452 477595742 72883742 727068442 155299020 879685802 362255418 962526567 935698919 997033201 35300828 121924472 58004040 402383830 34819981 106099053 63901043 726780593 679900759 895169847 731198597 784550309 511774044 956033650 238466833 310949944 253894903 876943050 471879619 488190848 63990488 659958763 11381694 227522432 61985014 769518492 199753936 971438634 26926155 659698530 384564600 872260441 248557726 689544623 293318131 866293563 428980702 928489417 728534226 772869956 610699303 735467107 25161796 142956228 15802831 977239731 331469036 719820618 243122142 282075046 148251042 417098570 411251284 805084523 721978218 988339468 370703755 740761191 389621776 611833089 139710458 550340714 341666612 440539366 356690424 975222326 122601432 137754192 123556360 427838998 93632323 573834987 563809403 820214533 457120682 591045213 590512390 596332380 149407027 808785384 159848700 820568502 235017072 806652191 181660861 856323904 105481968 330780968 254938956 739575647 617801466 916560764 129802053 524651996 445695551 658203232 277123187 734349187 461250284 549536398 523388545 901758540 504818881 530132696 378080804 719291388 298784184 852194690 681627329 791355577 644265261 829923646 81493603 841256936 452323607 905103316 71766402 643373386 446910638 996466113 561983556 628589112 567806115 923735378 482577538 826453476 418869492 544764991 369609908 866998227 255185330 685310226 267221094 321196920 296536115 918649714 720374581 834015227 217818891 402442854 246815722 690157390 574224699 919402927 717553515 744891398 677197701 765659108 416919064 847771296 752916805 975594840 641469854 748517645 8785103 592900383 138879519 544869350 352151598 508879131 153887923 285147111 271734706 444309726 440241980 891981154 108674292 317280787 3980676 365228365 211565506 671964592 252559870 452811510 79887633 601300158 370137309 781109681 702049613 709633432 498259416 675425698 502867583 949258286 195441341 532171530 30897031 911152249 85653172 818302621 636941342 916154427 222669352 759767694 273812087 957416255 549782988 575096220 293990159 584972657 100431352 822544777 351233357 375298222 166923977 631020697 234595721 501653815 200745671 812100395 69171022 551423727 442501459 920741040 916084187 921911161 775250661 860291249 331534743 975914049 259138971 613732878 66319681 592219499 354828433 938511753 633959655 804796752 119004394 736609944 247892044 852348909 202863533 262942961 148958879 347028512 152842422 684892113 604637301 661758006 634402310 749068056 484160794 582010103 466887432 830387892 464380479 912805389 103838182 560894563 174801603 708864731 464343081 631572502 619764604 999651519 560246972 867957280 123234330 733012817 262516339 846417328 796868707 879024478 172180493 571076783 222837849 853897571 689395418 764541727 83470444 953367740 49043388 605698172 406146597 541122539 463097330 818226368 521552365 913501759 679506833 972406255 347788054 885382785 874928591 992310320 61334129 259662916 133678711 593761411 204508168 716341250 8978710 103422059 35957837 377749666 2008174 250909294 117794288 914465747 898436709 940759336 690626162 823208014 530264280 658785160 235691836 723543039 475252570 756825595 241494362 496789163 267979285 463087694 69492308 545339600 344627802 856760464 273273409 383354335 352927217 966497472 643486906 907898529 437175285 446608289 303707198 330740953 266356068 558059904 60832420 201651282 137599538 748228237 617340851 812089604 453621118 655481173 84674059 512797480 134639324 931814897 79714607 313843586 288385513 410566654 94389363 444638562 23453001 580070649 301338254 554320254 550416199 891560491 342582762 795661588 366339615 678456510 519681834 676273574 111797855 451075661 4889477 436838092 364702738 905170364 538453235 993306311 988892326 992157999 795611949 881452394 773648422 798693242 353082945 792214563 525681169 741031021 297491731 774602167 337821813 538259388 51375440 347189701 144693052 890721521 473231523 765497245 43842681 139712926 85792683 281360591 232236145 633862324 439154506 728938158 641589873 889124092 530513746 824537451 175748590 644147031 98503318 303217893 93731018 382858139 300486444 857579904 447183454 579081776 298219019 816614163 803859908 837909845 831534542 832304366 287569659 917518712 220420832 456294693 276926231 794664705 662595201 750307288 63710992 987984884 880761781 969613950 298229652 949345431 610015359 754574498 520491618 943981568 704976203 820179982 587247103 833876429 470209231 983720784 197703112 361876739 44670824 601755969 467486844 512202611 138671222 245916475 143999035 947862216 808482789 862915553 124941559 956395331 68620301 99544652 33870255 500786610 390539832 428022511 381841844 825580965 634868007 693278672 571164869 610186963 44915996 841134620 443488026 868299891 461977535 690009609 367281141 714269069 455119392 779693384 775380279 914527760 766466618 827711340 171148374 236206363 73824486 723836467 577003928 956862316 312189281 701762749 294189277 888473869 42989765 870973849 307444405 985092452 25124493 508609721 485216970 607499399 533384091 940966789 68056 287340632 125493189 498365441 5661951 267623678 217584063 386111067 264338568 502101175 12843562 459707719 188310690 755502936 747536806 986223090 123996122 588713574 239097010 516396036 114661489 387085041 374424447 581138996 106173789 187971079 81289137 458725812 34664229 542172757 170525411 627165400 280942185 564000435 431145766 623558485 16002386 419285229 43899181 956961957 107453202 439117048 420404009 702603712 552880425 941192060 882640695 914899898 840332150 937977539 42156369 72475781 17563369 965821985 935305188 976089635 848454234 878573141 624398650 809371563 127621658 666408287 308726568 681694464 49388646 326479861 165860266 905622087 94647446 226258564 147287807 643840343 545651041 588863262 416700353 754395243 278016056 849442665 624472870 735283084 705782799 987217500 720515732 816722514 691833504 854545441 262224538 436960321 367598911 925609590 546409401 974261240 470858728 572281964 37903068 680646143 19394908 533086454 211719259 504210627 250421280 553918381 87363018 875376561 303873407 510354362 208935157 328810362 126305588 761943063 678273911 688449369 311871849 699968107 57300795 295507015 42040659 944616464 177689178 713190919 693797808 831386832 750029287 943684663 473392595 503232984 124634093 532190718 261212584 840451163 19017347 52908827 51573736 999538349 387157866 439948193 257492597 264141139 223072057 405597783 219452 805752396 594017855 853442910 207481601 854083069 538266857 735981551 244448433 927246418 808246823 994330488 402928960 964429229 156046197 296532497 174886831 733143031 653583683 751945022 445655373 843262485 296805877 842440493 205208927 371678316 133394867 772427407 603888546 936627336 293678498 631577855 436572482 554715983 12510683 261246770 153797892 336343688 281051714 714471653 518211755 757237740 229598316 539971200 538483503 978022223 32177908 66135070 8717341 418973060 304924665 629380506 479167811 646884002 644665964 684369660 307441182 926035524 719886767 734771037 503534375 514839024 380484757 467236937 13269207 409545910 37974902 691925967 623585410 906332940 726184966 945150833 393695640 953413831 483030709 554098196 20112232 275607018 251944267 890436370 72516115 432013815 119179583 391684597 320879359 787917958 502176447 712449292 531009556 961668761 655718046 819878766 464654978 986029902 514830364 663131113 318409245 661009214 454548309 890707021 877526714 932573434 694104315 827561561 471028694 546828655 464989562 606119998 553991086 747953602 668773209 987082882 830048449 849377053 447369909 492464767 157425409 761298377 256495953 803114247 656346435 807853425 25518176 801151570 68271410 198760407 122683704 173545136 64095497 977071439 576164277 937075647 828621977 877742324 144330560 258178584 153553013 402471283 348391127 882596787 254205545 559904222 461450705 805589098 591722866 996386515 839032948 978008224 394653127 563985476 139443987 607335309 379993084 542610328 27696184 110498555 83878911 330637660 306443955 684956538 504064348 599430477 280922590 735889795 529854449 792544994 746564546 789092501 657688027 727626612 110028396 519045550 118582519 809452268 165205114 574398828 364267928 613799207 91182998 304872167 75087182 737877438 490573337 579489762 93120182 463049910 2582253 822760706 424679436 582451243 517019645 829685478 686138540 783794918 609054769 927067856 876943867 927605238 216790789 285848228 189270749 415102978 237714812 998330670 509128345 624799437 87144477 748190640 723272564 989116683 925718138 993485289 757912404 785236396 107199154 819310120 9713312 726625609 144976737 408746128 305736550 696905872 87691408 687238247 318805428 698108735 151479424 893060056 891240368 923996028 363171308 534853496 516792468 899111793 478732944 612559947 539520121 862500736 501215216 613022057 208347494 302636780 32392171 534019319 486526674 494893867 189363935 856062261 673299427 828733639 569675326 992636136 85052354 588177527 558025814 896177230 57408395 884784748 450957978 543286914 160076152 903085230 491685803 599203234 283120226 701093093 523273268 839829649 235524086 922515810 553301164 950700297 460804343 800644733 228495236 352129606 251078925 409156394 329104342 639751225 329126338 455533827 102410077 579286596 299156155 874406642 333304263 929071642 274991042 985693713 35860218 617941670 385166639 791775290 125657410 533285048 246192186 283783063 281926005 718050866 4316962 497468029 60913030 682562032 589204047 614204802 325448918 981810876 722043142 921064757 78909236 507059216 125550799 989224738 145436995 541118518 389782596 551774179 29062469 935732827 486214021 649775894 39926753 383283970 266995585 908223836 498283593 919285560 538970540 617205275 171037000 945950700 269212276 672075022 629391050 908241274 244537960 398317929 229634315 663678727 471742856 495293421 266428171 813564013 769119748 829891715 260944781 394224898 322145424 855319384 582457768 824477104 584872593 852588675 514189788 561556413 354592670 632832603 475812599 494464942 16229581 468660173 354390977 443097332 325209430 561983027 146833922 476166420 264130005 392835168 126556857 427863416 53460745 91361757 50227281 851921702 87941204 155408960 116376788 718369192 362997196 725732873 108321253 509387089 259392761 982137941 492330791 757209964 354949973 385241540 21688696 791548945 372116487 618097164 481605714 530371279 68621748 941223112 619959787 634379242 624375424 755093195 229690189 804966760 794985721 887087258 864931830 930775584 868292132 944424431 425305595 938405976 806240062 942849580 719699016 755220415 186475118 526459089 75082506 953663645 247116575 855136977 135937452 222979779 10320472 216217075 138196834 931568315 153582184 244943494 58699530 746060768 126911154 501769218 51719267 338200836 162882966 479814270 171035485 314146781 44507683 247282691 223381415 587805735 355641456 720793026 311569052 366461039 39209882 761971541 256078352 688756308 185944233 956685280 238708910 869160265 206598531 306252783 260883024 997376659 639330155 844110009 414731375 870625899 28326348 227816640 152035850 767704376 489455855 700950591 516554382 751503931 175363991 200934452 1224719 104526458 85696757 677375294 546734611 558154605 269454897 790862099 224055539 858825154 600036069 747405088 560100381 958290145 485483029 940632596 761611927 902989593 176461381 294742264 141367406 855603266 814499098 912903885 110085583 997559657 377956749 558067622 390466478 844175897 365882737 568115393 332417277 419281014 364214990 658303159 656889541 942152092 89367052 380973433 73347194 809476113 344717600 792203347 289108541 654974425 541509157 951402421 493584562 742764048 26931668 333169278 245655685 863002104 534910789 866177865 706735166 780310272 454620205 650041413 359224203 973482128 631985777 637660755 256891440 720296642 668961721 936345703 414054136 677010006 554605321 931282857 825609901 951679411 574076041 713051569 650236891 979766328 936997872 987669914 786575716 801340847 588755403 930345524 830291016 961993741 922922898 953434171 79519687 422192824 80008148 668120781 173417576 822171940 361976042 925899141 788112577 817229912 566073526 600721853 363390932 450757992 6501498 88578673 41799609 633861975 38826419 249900542 14468373 436525922 44197335 202308814 56957562 778352308 238782340 341922488 32093119 201201832 192710348 232263888 172641948 934925872 308995186 397233390 174135888 339409559 208737559 305413475 141644117 875047152 97187616 452370341 375185348 819872826 24197925 545837703 76964119 759725798 656962132 769107467 100913399 196060576 36748875 715019229 237129309 599387914 121838559 618717478 48840699 686979240 286089554 338358504 88825472 477695161 59642096 586843108 324251227 745490306 660665368 756759780 481242456 536508187 298633630 812119266 663918488 807760295 153963143 976107279 429885967 939601049 860700793 865855667 827543055 931872722 152916489 643883413 517805206 701504008 691752391 710900297 580488975 862008068 402938064 755143384 451522650 545112462 500382887 685609056 397707143 921105827 494292095 962020396 385494765 410739820 268968145 523090242 264788239 698882416 565644867 615010054 439793417 785869217 335809781 617053639 424658413 828704015 802358814 930307183 920647446 951796503 735246460 922513093 733085928 772412552 746835905 882569946 263788679 438874728 379024699 829506342 675663640 851883230 526043499 709220235 327762379 517418427 132316140 336115583 303208395 344992935 285016415 871846339 271769413 275725416 165818449 190736506 19689727 570467079 20069712 863695757 429213164 533271954 183792144 554255075 68205159 795501455 309670876 599137231 167195367 395471284 269833299 844703774 641529270 807285276 376422908 902918791 288128715 740980762 371072019 375020797 23723518 886395492 421980887 668308059 119504603 932528106 707758842 977140486 758607803 895048561 609858289 828238048 403847137 419388726 158567880 798378348 777617092 788957690 210470990 301071978 101786984 717495059 70196910 357628724 105286458 358927853 36201587 451209586 385944491 659970500 160989347 780671514 8029344 912238149 319606149 589895964 283961959 360103756 277105763 875098659 651530841 694842610 279320789 589932494 409841669 762924007 84348893 380407572 217445451 841222512 672513384 831069856 48324671 112609682 88919488 661201355 60730267 946962736 309774043 681148386 368719975 519110933 191091518 380571980 223893974 279617300 218963772 245007804 232897742 602126718 460090634 812091823 742945985 809778646 2238055 239412335 213067662 872734246 92331264 174214791 110508427 903539134 88652642 939038042 110834066 297109894 217549464 602539903 126510675 741709551 389877239 909241885 135943664 929524035 438733782 456691745 96075141 581466320 42682781 600828323 191309747 229580681 40422219 636701615 462763118 870156214 170947936 181258108 132006769 820915870 800721463 990335789 207730041 378214789 295073647 371774971 201542958 736170277 695028345 867640087 430575155 778504596 287432563 997404588 788954756 857822546 708680373 940051770 201729265 936680266 682021671 928761927 338176541 837739856 449613635 561793239 502335043 977616730 822430648 896742436 50384578 729096725 299985979 478592914 150095395 250400601 157997724 970134849 795089038 959942022 762164808 783203634 403232367 799556985 344759288 680997422 344376889 348767596 249147742 683085134 72907206 84073756 38955168 716876564 655759019 899260803 856182334 904117791 524038866 908058398 361398301 418699464 90591780 652432897 443231042 781525964 434555586 617057096 519194439 840620838 500876873 966103909 23159793 470089908 100647347 512796102 492604798 844855021 806657302 888789741 132088396 218960775 84130003 912786906 765962767 980529560 5224717 926118483 45118934 700403940 341000721 659246101 238570552 363005670 98285212 543328478 515361241 961381689 440422146 736916928 202520402 453908627 33653017 165297658 36717519 784385239 698733145 827936281 89981904 519923294 244372541 829401718 558260511 995425121 178036888 223399610 190427435 809811150 713133305 723949132 20633633 389707210 348622247 443994021 373374634 390436077 14468183 20548363 3205833 248647653 221136119 538006926 27873709 290124498 121738636 997211706 20453920 989868940 979115587 995537876 689845360 930714890 71670056 314068992 251158253 387739944 170798719 567477646 380452315 408267786 195495778 760541037 469942610 487260770 208882651 759207226 60161550 712510958 695473786 726949950 497234503 987686195 943343033 997998423 756157351 775801050 314286576 787204423 151092542 202169530 110533165 415572042 93352602 813590290 600932931 719515023 465722421 496869499 116142379 213009868 207658448 758872989 330708593 984428064 305196526 423818478 347357685 502451133 426059881 960502433 226184905 551210175 474874565 753264315 406293517 587585241 3522473 402391886 211472841 947212106 786056591 851779028 90967828 960974524 408447819 555874696 152263724 559827784 510718047 576385755 475506426 498409016 64678965 257186955 49363194 975094031 637858247 908860411 842759328 939275139 606688848 673602875 273759695 993151698 851872909 900313315 456137505 938691726 566209065 817985079 636494852 837674076 413970253 529096177 196910186 819772987 279738029 426702267 293663013 935750094 165212242 916785267 803242657 935094826 352816 386775945 19150168 347294928 52722192 300997189 232255087 274470124 136669113 765538509 679926460 940280865 774256546 984024684 769337035 933514392 224247845 655217789 79845489 369188850 78236766 658661228 21621402 548286593 199800192 920789950 439446141 725026507 449502739 698764673 385694694 577371342 227090283 689016924 68180639 709487653 104462898 242650408 209946569 352293453 72915405 826806997 651522202 801015526 431315835 536084416 475026556 707165716 334617022 790146924 393349467 480125321 441910997 855979186 817650688 984563969 491929297 562229925 270100881 983854282 172996915 176529221 127036871 460822824 89253372 263368721 47770880 851763602 671941160 746773400 745485893 923897240 747656963 865481902 13087990 422984894 376788258 747063489 301546417 581723047 483498358 720025337 641567150 875828553 7994933 507506429 148410623 952954561 912298310 999570585 194047283 294453272 156326944 386119963 316518890 833262979 603029971 764369195 657799480 668118322 534554672 949279515 285145858 844462279 256795010 709887318 668010043 911237215 630478833 738871390 464088663 862149684 569238922 751605679 746901363 759775339 195500221 289098686 117566947 472308213 5652629 557128388 198646996 859232917 18344650 969483772 785685917 968820675 98817228 274648522 240238654 452012775 33693876 193665361 103373082 686413041 302698566 508123558 464245258 755030434 219653079 305825566 304037392 864979371 641020188 730288207 455649638 612233197 412372907 839555357 2975928 708180574 556325567 925991460 563553398 754556697 177142627 827979843 658294493 996312122 821003838 926335302 413901854 804724638 524937922 956424531 163978681 992245501 188501543 643215604 413953348 847972083 106446163 773640059 563197600 631064464 505596804 942493658 767265257 963047269 432955430 904895791 759986362 862730891 550997962 735804913 357137253 757266269 334630386 927199633 314065108 317124461 196679175 393235279 268175043 872582296 487065743 849572110 574175084 981821743 163643075 520433549 339658553 447598638 182558042 554046596 240713720 284731468 260885650 537684647 315120536 808678415 391679452 845187683 638110006 705430548 262598408 409597899 306058967 754197693 591269128 845280574 574723397 934414143 752449522 933880149 136899363 265407770 265242798 315792719 297139890 819138912 9605284 188188414 59460088 684326528 442701720 592969921 61708830 200613929 167592687 378016262 366848014 737617442 724889816 868089539 415863118 997921030 898501244 976971120 347168183 599856958 93715758 987709174 688751857 821654640 230549240 669584321 514210374 954590477 59515430 665387074 138696913 283202684 57447326 434140534 377610500 437500314 359136868 641748415 585452573 645542418 435230509 798690745 401041209 669215632 331609431 935726453 217181804 580935218 166032853 738980100 478595657 609507057 324935241 768936800 45276620 633175618 194803699 314764996 114074364 858406036 187211199 905912476 670235006 714555945 607651023 725727069 645808108 836157995 133643188 752075546 612827733 775372463 579303464 850296006 199385247 738430474 659301964 684646145 120077730 896628014 205438052 785134720 106527095 818266444 408581459 588606457 416045034 648521904 342702367 668865201 635929703 684774358 679291330 896654275 849978704 862808380 11201485 600344490 386943149 818331756 476585131 789035215 237728503 583444136 578836695 709498960 318071975 820236865 616557070 672004953 76469305 91791722 45482948 715181437 62868413 840584694 637424389 722048235 497809080 553759025 362431725 421423322 256993416 439184692 415461824 741003445 245344841 776551897 483203831 938516240 119790315 439763613 417979760 723861875 254341291 452176808 95794938 358127894 241055498 501992036 176568645 438588305 60718830 538374633 128419019 207369033 63720335 405910339 140219891 532032026 325849860 488009700 144545410 429702732 79609485 280130543 209378452 435247985 239287357 351366439 15261632 370333418 287279513 721226474 99836145 415097417 341652006 852092954 827294465 938456628 235075941 457135483 424495237 795310986 244072568 823561266 405581702 829450322 341175644 914711752 432644859 707309747 655811852 720425936 687862212 987626477 544717794 591276297 228358154 484668279 17344363 984161290 444042096 655446545 591657539 867959791 650850152 848579798 413478165 967990515 192533436 511303527 20291268 561301692 362078792 711244917 374111522 396458506 330865446 926015737 645242266 877931347 129582429 694650563 611719933 824564880 667243362 905395997 832704349 846388933 698243446 879081092 199124401 301147444 18047482 47536336 42155050 311586055 67384676 878087830 407568334 541307095 441097977 594147890 157458476 595883131 231165824 296286748 224907571 542001238 379647079 841686656 194132548 333415875 137641199 145979135 56504212 554971927 136585248 261994167 170801388 967346241 51144558 610412728 350162747 647498487 570297569 601785861 258171131 495650542 279001458 690571962 219705802 735776165 349563421 416541038 347936390 808751998 489390252 533233619 50982885 86013081 2158168 12174189 3237648 957673956 724903567 834740760 11248863 208356703 127492780 306710067 218675447 325001721 284515156 791229600 380627546 476596447 241264351 969558635 219180164 239785401 72445009 985667089 843416206 903696531 446651334 553472031 13408537 538092608 185146257 984757511 322983808 810997203 735048003 872085202 548240688 813221599 605904073 875461479 373890074 734725935 729034445 912662920 10935430 969053871 415188421 464910085 103169190 426828298 416895432 886433551 411203974 778003040 8323975 996279514 48416119 793599951 204103480 272181973 142486364 364018774 239161738 971914694 636628430 729834803 574548996 947536000 102578222 435413999 294524722 937617473 312512332 344399339 290663555 845568784 787703902 971577150 416852839 421249992 217840955 493294811 357781355 417485354 33717627 92467055 89305798 891675025 888370408 991053437 135368281 221197720 66316332 721083089 46512611 935377458 108853285 560260026 105087188 690731143 242960297 911055736 194766067 474329765 265797289 318453655 248890498 484196424 230487968 796906830 97929144 515921110 486040143 822647751 503272299 834169529 382186889 739272913 577235494 737030701 441275179 687658026 17953417 547064350 429059090 654349255 638223270 977371861 2600617 928640335 633378117 836211930 123680125 469040536 88355937 479788604 166916157 867375014 352897670 388765434 102578759 872929054 86474200 428966603 208698619 252781172 22574599 403471456 299594362 770178919 566617944 777011375 581539259 741851367 393250736 647941180 333038423 408088923 102646848 618296520 584041833 862509392 163410009 834023642 314478552 798602022 566759643 573942798 536968326 623628109 43289762 193041030 177053390 742654183 147600296 743133483 61054981 319198566 152050464 542459595 485544787 712837581 551251854 656725923 620620062 901034080 147615660 671481919 269778481 388567289 309736398 921834739 679661041 936294589 288609307 677103261 22526097 842700852 202465999 927520353 64625832 418390863 193534106 417702770 268278513 285025339 210842715 532438419 435719912 806544199 662662000 955834721 938979952 944392189 225469705 530326138 349164840 956102356 63832908 907203917 879292015 965425218 548594519 863021112 598988418 730960319 253769632 689043021 252778034 907666832 872087308 929937885 684963681 698218432 87343319 728228292 524789433 888361571 228889171 232906513 144064052 471113970 7591826 509964126 133005227 474041769 151200241 936152046 214682717 709084361 36882781 951852108 471243591 863756146 843181472 956301035 526610636 996877139 766826833 837380957 31577799 405593799 359113643 483877125 11446098 128377509 114248205 874419068 856449700 928212089 101569179 285714000 147195712 759144437 706795482 988775840 699135138 919478770 277629636 359795943 245654818 259517841 226702510 824254966 518358353 967246237 279142291 286076046 120716675 659575299 300184793 393083603 326071038 551930103 437972928 943924277 393161955 550730776 122981838 868169968 60198435 326224230 144295508 925969450 483265673 824491910 319908485 527459993 369969897 797510761 173608029 387261928 169037821 758381795 686438099 863638169 405569637 994845202 441640472 816386381 258997932 500652698 10372835 591790307 561924137 725347709 544900788 968219018 93512577 146914145 76234831 453689929 411734994 831259512 138678474 422183636 313678788 960248211 922386304 979540379 3786130 66112704 51096573 929739602 547287800 930480502 638351034 800699068 150471244 870359002 670881547 702522755 117816243 203466692 125892173 552112920 47285325 500040485 18089409 79748110 32921901 533268358 360455194 366147080 271426192 793829155 587599032 927058303 574422218 678128526 114498255 713444347 679826490 791705103 722680666 766756435 5194272 949618687 755854293 929114972 269347915 971445621 347794631 358124496 311576994 688470937 268712717 567676404 496552472 675718688 360655797 938708661 107918726 856574382 263470880 671387876 431209199 725197470 102163782 397859113 290693168 637219337 443510098 771623720 630869859 936583045 59951644 934140414 481594497 555211215 26168446 212650412 99739016 906310749 837490435 960758042 240223900 762672439 538671938 711894271 646055611 941766185 855281429 859345547 649938278 989527031 339491454 958672840 265974322 932054939 390283671 762199043 365285997 868670551 616984571 989078314 391268746 486894566 170202669 710957221 337965022 923783928 8034637 563568679 238349536 894666644 645150510 886532840 760804396 790008863 341113790 620771640 344184792 349301523 127974633 926083189 71556972 616212045 301134718 841813897 232710876 840609891 799359561 944610622 835709672 877347593 51625611 265080139 60450192 509031980 441584450 466236215 296168007 473365742 277880339 996081952 518863515 558072031 506131630 571276627 555261324 816927244 654529881 822425879 583347630 659029732 516034571 775608218 461826355 818714634 571605723 972281727 228004070 998218773 819540960 853724450 154119959 646649133 398270756 856147060 274163234 732452339 122657447 148877127 121096074 920202840 868617869 941348053 599054405 654896794 307316111 651975316 628051934 799968532 24049955 40671498 15462974 401937967 305086497 872656401 17201975 58278704 19383317 156204675 32018318 572716584 233987416 906148204 200723916 800347420 193509841 262494273 197885509 664473742 254470307 292932631 165457023 528104378 322625001 567024951 181827620 467408566 411540016 924365031 689917661 754192967 212032425 451190725 195976884 508416023 351128147 802302113 470979778 881750002 852852211 855593713 173437012 359433450 353631869 734399617 66621099 172149562 103838566 395149986 297038310 479502270 466841860 912125095 876075909 896436977 36756498 896277308 212914958 546638806 51113004 907968825 11297121 60539292 32975991 624899195 558489780 691673680 530356600 982469817 424429374 684900395 614934081 919402326 88538020 169250538 41537745 118615372 26134469 337932215 319668761 921539773 462727163 856511972 704145495 940776410 378066137 769254814 191857001 285261089 196487644 678864149 24855574 85322721 61165601 61319797 24738740 405188511 351987360 727994613 171708053 325457999 31151092 791753459 201287311 433463542 18334489 516937108 240933503 382818781 74715107 121869658 15910842 780752920 718734518 988778824 517708300 605943953 268573160 440696192 78758863 314969825 98363739 166536176 78723018 604499780 33943570 77473830 45527660 477481484 442694482 640214205 42239046 669937051 647300468 734318426 57832786 303866142 143305296 859788398 492357963 746938691 407301539 918154695 511560321 997206057 985257717 998585111 667740559 955622608 467943525 840185759 30206588 510687303 509228156 626816847 406577508 846097282 458495331 857541450 257951066 505665507 294460183 688587466 79323018 843778167 146794968 767683019 246470874 485374140 309089104 937336982 684711594 910532605 497402335 979531675 528714230 782093798 706272519 735690001 732579302 733323677 268811885 352620599 39661127 998997638 558242110 601185549 197310104 253622841 194042912 778392416 267318398 892506065 450554634 774308686 54948287 494727453 488658022 658684009 408211991 730189325 242594168 612142556 326865440 750814420 185871619 428540386 223293869 460586629 248549279 883669442 535447627 691687746 323301664 341275431 194326692 518117332 245395437 622823729 569970443 892337413 473046917 724508853 24313102 645726152 233755749 764511170 498056273 866051327 353941092 362070820 238333246 292705334 255696862 337913422 83931885 126563020 57199931 994672004 464029510 800039115 667483914 920607011 331060402 630877992 402460218 919012606 821364362 843749173 408998565 646753434 256234494 518066074 27456681 960154010 166098760 437962680 341561007 611930450 465750497 864974787 466957695 598883320 151363826 603369662 250960452 421182405 143230532 887634650 188377455 332708351 46029279 87883286 3324402 580246179 135481251 182316413 36515276 558079150 494507452 881955406 135325247 156718234 146868592 567041540 367283281 444638702 301134875 401335177 221394512 832935220 479404549 902828242 362245827 655877077 512537983 798872645 229603275 858550371 86999977 632043187 394961327 953770514 918290144 975966783 215137558 856118694 173661167 875722914 339120210 459749933 41717519 337167533 42995380 701281059 405649568 552521787 473925200 751348341 354997308 873150248 33533225 568832919 68490298 401736731 399040349 453489876 347507489 621734534 249408294 505060930 436144358 733731723 54484170 681114937 143409130 886254348 580810987 757456444 280212651 663924016 335659369 363016579 319577445 920971872 192598912 498920919 281132052 420305432 316748087 499130405 158559035 384660466 240858070 332136350 213666493 345847685 341018468 870644976 223968659 841882611 75381697 948467570 917538071 920475475 385059670 878718374 62277593 322464731 22743175 785491726 681927014 705997446 165446094 561372967 163438147 640915699 15425964 714466837 210819128 332555172 207406486 681583759 381546845 534494565 119772771 698732861 309440791 613253480 361702840 767239388 89878960 342956393 336200680 519255720 431575791 603415209 440271864 607993335 132702650 368732335 263518297 873655608 588645970 595454765 8367239 351918337 265769730 508123198 250469387 263746028 183371269 685563855 93490860 697249054 81073168 158015714 156345792 211845130 137575661 859447641 772692560 870303078 637425249 941342925 450367994 622002669 302353344 455895579 148024446 531273073 226729932 730138932 602466052 640656106 324626004 376929471 280830206 569893468 314879294 605064914 409564232 539399231 240739986 988595304 237083732 471369078 176856414 620187253 479360805 898467913 214088963 759218632 553215271 931563208 279714328 681848885 278788351 972407377 145786817 764732255 284995348 351471280 212231422 912950818 66940564 878190081 55273731 976425920 6340054 525049750 503454199 530400156 235496522 924564114 341766539 607980631 64350247 861236667 678414282 877110298 342702781 418320241 272326252 571802993 528053868 575856403 437900835 911984049 277525517 735638867 401529183 817084173 256112752 649472335 379642543 672918093 362437151 997112339 476198197 578989251 10192515 248157755 44087721 68340961 62791343 519403657 162074057 174298913 99174851 198532297 53261495 949521170 299880507 498274228 400463336 411727120 126128151 670768112 193796186 955190694 587006006 761557244 369385143 405317099 404112948 967702637 43057207 865463187 512364064 896353867 553699576 881067491 647809599 908427996 36577929 632582506 500787521 544040118 194029660 951451779 264670252 348980799 57918248 193410829 72696312 119332358 102539812 665029741 236037042 851381656 524114922 539802333 539286423 762931467 388111009 543336212 319324334 782440933 116321562 671247114 664443628 951293699 221095648 848549354 837087036 928047220 702844377 851779754 142242493 160677017 3971295 224420912 217848215 984323677 954200483 962298102 735584068 846761690 441688294 615141249 554752151 874410689 611081643 884069600 39174582 561640939 428592334 639026364 568731387 628795350 408263065 474827308 53233637 610053827 263882682 483092244 343913081 857541716 519567143 698655328 696636980 774518783 744322472 775719007 416645686 634617545 211639346 258306342 162589656 833137189 262238987 726592806 549334740 648096794 609185968 888833953 114927520 929664608 884218891 937562291 815191352 911939933 445801862 686595129 367921943 737131621 156269700 632410033 378016590 656892457 468733876 645969736 572259511 984841095 613824991 922739947 205329350 241614767 216081483 711144552 617859266 634391301 575508801 955410822 572650886 958154840 339611994 837193317 446495415 868632672 576839837 800933758 43886188 306292914 153963860 968252416 603461697 637203566 197658245 257428343 20540562 994517594 500037202 851719282 486121479 954364320 300088952 674779111 20691096 840037933 739845784 800218315 779867400 841329795 348805487 775920901 521045510 746107701 620147399 623355878 591707755 946761286 843314130 951563325 687811484 748090674 150263210 931772088 396220351 951556527 475200788 540596299 417763834 990284904 880141629 889473159 722562217 809274065 777165508 974186902 724033581 807113354 240030963 540025852 427356950 596071838 550200098 566553245 371403488 673482550 178667178 666556137 336204910 749311678 166082186 956889751 545613372 843791624 789581983 939061201 470390219 604491399 463814837 543100627 192725465 526741976 101247055 689508622 213859622 584409459 197012361 980519551 230069141 742813538 122618248 550240112 37566138 460666864 113941508 795927146 474857448 647411881 204987280 799338934 677239651 784970075 251922636 799423441 721035620 732658703 571928384 824953366 435823703 467587954 14433258 389615239 265089590 531407603 300884211 406313450 203817727 618989526 191011587 686525367 167509212 662239462 590516604 736639328 130939401 368378617 124939311 249893346 222052139 564701946 474660927 721455364 413920087 859461388 43684500 133110311 7128076 820970217 139919285 517032675 510730073 960255627 176601082 789968921 282133316 947279745 886084557 895443334 523909055 934991294 561133471 626626702 48314073 298127837 214634699 225084613 9297046 744090514 535991102 862296611 789123967 868200215 677925249 736290825 131134636 300959943 79587792 856861310 228709352 479857340 325254364 656509347 152907154 693748655 332189484 608069659 521565753 845993682 112974533 369582008 192590536 511175867 461332940 600227056 47634257 309146577 115327050 312989107 198792384 483987962 440058548 880081266 398032565 794294175 374334394 826320833 169091504 971414684 901787600 978208897 844865941 892448062 535930034 986612968 77956422 703715879 25939741 595461994 360139371 940360184 362968182 938400189 888025512 989787805 743960194 897368567 756169392 918414575 580765911 801537509 411028046 590336128 358081110 439282704 322984864 896539592 881885528 908301008 165200872 595180922 537359336 794036230 530209121 616908765 605911110 949023073 83189622 248292379 126292375 722331515 506732924 964158066 256907068 459726755 16685018 92918560 84482741 403516954 255233064 900257430 145066568 832673570 742141551 765998795 205953295 217815337 121818246 181016609 133368090 451451268 196496220 607512375 580499879 932320071 110024142 715577619 519851404 711348900 291402444 474588476 166058729 769601147 586502986 617866583 206874572 580603238 137104843 459281921 252008050 541410293 373441227 512893355 297831065 760196930 351993673 555545295 192778324 547346018 237213474 918364490 589026681 916253535 667806694 797973307 328122060 627224492 151796298 478153699 259831334 863219749 745623918 847411790 661460817 935172807 182968807 663402523 267060419 438861103 143266071 696551048 283579069 498170008 88039100 745355965 74653947 804985587 418870227 830780996 121142404 285559227 55407599 547426920 164427685 712847146 466573858 964769435 768201843 908806249 556923162 713124077 643145983 813117221 102354817 561306715 436641434 943096557 534579846 724081205 701810539 859056045 620240732 628968393 196747146 981713759 827826887 995427571 302482605 554850469 284356244 554509335 57290769 906128629 139427267 634336175 503875204 583425947 148283181 207342512 103228361 521751216 128925780 982724989 304056667 651105196 102682576 174129619 15322877 215669875 9526701 615498571 319513076 998000660 279246426 864369107 256087836 582638578 404715209 475508218 308509143 328894913 258123871 714831909 138919092 213864362 59886229 284866996 21747986 882556981 201509557 509816393 197080965 255870360 161040147 635212953 260208980 501890379 232987191 483582888 325729905 778244785 107958579 845663823 306556132 608310579 211467150 589295138 228532651 737029661 718369246 885247526 114897240 183457705 117822792 963754709 398836143 937308818 740457037 800161412 17587662 398747388 62664656 636565523 502790114 978834233 352481331 756420392 671665752 707850717 250609037 595188331 568978185 988149028 740953821 915147916 684898614 760165391 427154134 610975415 211709997 397998843 81942657 159943199 136100185 514293294 109606092 313468052 44520123 821892949 330566116 459505873 256847320 421973531 7627443 479960102 456561983 641119295 226997522 777800144 743969085 929926075 54369784 500796230 355666983 544642746 481206922 886884187 88465926 473171523 401456636 677590675 487934933 703546454 239701427 883485086 741421995 861893964 427175786 661720045 355651294 550621008 513251809 879350228 739708357 875232126 160841536 948827206 591914252 895190706 602386198 618127982 419217885 461294871 195376081 931134543 418130188 640985927 498388500 794560996 597992839 857234213 745124478 829166301 625107375 656766998 613855721 658351741 119901278 192486529 178720601 216339146 2908477 374595465 268463567 678105206 120922458 745980418 375154534 674847171 174212738 872430148 237473897 485523832 304466915 368486718 252144638 506710249 108176044 998868282 130648571 974122273 104523724 899203601 761974143 775186148 86691165 547183150 344476199 859808721 832206635 901195123 122999448 854602412 764340359 856536953 340835041 488009185 81762492 843795291 103173477 359371692 197718693 894299124 562332415 759998758 2621663 445073204 285747235 638931518 161142302 561584793 29382209 331464368 119484528 928217273 296962366 393018420 46661711 144619342 56459257 240763072 15122683 704571949 121017764 695016325 514006949 614187795 316197001 375307038 93864649 669913535 154435150 837443267 765533391 908764185 132360039 964506565 833750512 985275242 830683422 833006385 519302170 916933372 192068542 834391467 522429422 730330508 239279371 960134132 429761896 559668821 342880316 646349397 563614302 867424273 824228475 975523225 920883609 957219723 925850559 993535963 615978028 770994751 2821163 695884593 44554414 990419072 381045031 685348500 255835916 374294856 288345615 858988661 178047790 671752107 478805753 807520963 502386319 991929610 446552034 945158131 221671551 793839653 89594858 819468582 631364588 924469520 118697117 464119066 267073158 670276772 604967692 733247295 314779974 727261743 32969887 178047191 125497405 326607166 188403261 323563357 8099150 149571351 144023712 672565307 649886338 921434986 106882741 620130843 499590502 780944423 382149675 667224439 42159553 758351351 292348582 658177524 167419619 486591406 314230638 830141686 155939367 226174091 60718408 799494127 202256705 304563739 133892860 869368357 599439364 609950239 483658779 537755846 56943433 486986081 118361279 566616712 463968473 495924318 410812770 903400913 721533840 892444612 493409773 525926053 121453526 692438334 196357431 760846368 293650854 576799079 273779324 897671428 887183975 982348867 171363557 746952248 409025941 450447438 42452485 733082538 129294244 348293328 216737684 324188487 279497327 681336840 563900671 850984554 794872387 828228306 588908939 925508088 59586450 865231730 772440928 858688671 531630323 764842889 38091273 302804809 243859080 731199903 67913829 296355792 76126618 985605148 920003399 952894051 267567176 844211220 164173036 238326396 40141899 757475905 313360960 688767423 524022698 969324682 572435482 781403621 702582147 929573432 377582207 940838470 150180107 962079504 858666787 907061494 535220093 840185167 604260945 870136970 368608601 843015084 705653368 834986970 295896383 581428340 494588102 578381224 169620529 575655354 9488237 481208995 156992287 846039712 200430292 340628414 40973387 530227821 436830090 986882450 81998753 441687161 307209525 664685005 228431999 535127924 431914873 840091957 766275013 889330786 575267493 802919854 402785397 567969089 539554478 818924420 3337215 459519685 388457317 497467544 346657322 951480138 470683907 950748619 481195535 538784533 228705301 471120214 84785768 252566601 179825039 474165519 417320927 850324026 283473129 547057528 339346077 526702856 348409535 658716484 483594132 974272255 927978604 956380751 27851284 555677175 365159853 898668124 562349285 579778714 440370695 772723758 83738494 916168923 593348927 886393566 286374089 657875671 288127596 985421022 468221284 507880153 77683273 977001617 446725423 473087883 336335665 772511720 537575781 914897619 363493927 677692840 342906082 966986371 505630068 595863889 225231237 830422875 380613037 385997529 62752501 851828816 293114412 392367810 141136250 183465218 4775331 635676471 249667861 970514009 336341997 873599651 85542683 285073981 65040658 436415747 15684004 466129764 435151153 787794812 21592642 389917925 134293792 623158065 498127689 540516065 521625983 690557727 193666189 856080655 671399302 743783796 318871769 532224695 246817660 327726044 299436813 398451809 358968584 852059919 284177969 370627292 237983011 611530209 335520246 942918482 829299057 968170199 954806854 961382532 148260849 549918681 202265001 644228418 470687342 639857417 515261816 826121025 297711874 430852154 31810421 514942253 606916 680254864 86602287 921388346 192834232 478407147 343423908 469338351 215289984 658286944 151203833 818052054 37366501 664247505 392612551 891687607 347189998 452412791 103538097 995353496 501030987 997735225 958911531 984157883 206369405 392510835 320152457 896723670 688920303 923131293 896305573 918580725 541612604 754243472 314128165 945592340 213876899 731745908 380075302 677670007 379217811 603823770 183830977 672308099 647816278 988698119 714751579 777987637 67064323 295631846 62265159 899624641 340973380 511605345 214929278 470931511 349472287 977052902 440098650 934778343 660235236 922217212 776849034 888527989 341977091 634187546 599885718 727328345 170599620 654730954 109607416 613922528 101201869 311416443 47207138 771712227 13160644 375220900 60143976 269444200 106661328 861203323 400273478 542167535 203222616 952547707 334495700 394247473 279221367 577568783 294553574 468175887 175761531 518141828 178821760 638613219 601282661 741660952 372843799 862993874 658219981 878032874 567440864 655006246 236032040 573199427 194471009 270273483 197353802 365948917 133493564 478929149 223867112 539562570 382597186 976495928 101202336 978845908 324323504 872245453 726870287 751212575 713701180 765377280 133551388 353418239 139764817 252172744 212159641 879435104 748989186 919742469 602595777 789758299 329448311 950926168 815024879 937658153 872787469 960840047 37325092 324689524 201512987 205092889 1603272 912022297 489031856 855177296 686573343 810393094 724735195 778598601 549559759 704165401 33981326 334194825 40849760 990275978 362849602 621719676 217751227 413938989 285991563 586695112 50921206 452654970 349871933 528645575 44185485 580450125 72360262 74385460 26133239 712996087 77918418 200318201 94629882 532982616 260255106 379690517 138108145 222261729 147346194 260904974 21851708 77215470 37923615 989539891 974316478 996149273 437197178 573280384 442587103 856418524 628945197 778173323 364282474 990787460 169780602 281073400 133838482 889331600 876645022 999290315 234590337 899898874 301320587 849708374 744488213 794662692 148401107 647340443 21090823 89747240 32113905 590061034 35534880 489746701 237195895 637220502 256281863 305729264 256830534 302418380 62315993 860084950 647519353 697252411 436011017 588546813 243722752 893757746 292471287 985368258 488982251 905368965 867391497 897551815 595790305 670242530 168417794 545889005 345777906 381566560 229689160 886844226 641811264 935761547 506621179 994165348 477203621 891540146 148306192 939183809 166131456 942222040 338089547 568593868 362120328 557409081 529579072 713635149 82386657 961883948 763022751 956103939 871175283 952712124 307759971 848817830 677850789 958171374 85447960 745466213 154056877 757892243 306077220 939935477 619965318 654954597 8998742 593084194 454607646 769004638 689491391 789458012 245202586 520662848 175685780 791344064 583119398 943279837 770740164 806212894 250391853 554176999 87767402 284946651 93284158 134242091 32851658 985218789 531190307 776127176 774708645 970907256 445227862 621612819 52770130 452402016 165026103 723859466 132002205 491151146 268742726 579771060 483484963 613887982 226579157 663498620 447937582 535646717 196560637 515806035 267341763 789198824 494373642 529316460 63082288 968981040 167398256 959443919 717416878 880624656 574627133 973844179 533160167 783249607 180743910 714346602 436002847 774547215 40666316 456207337 79331305 102914834 99022262 105973753 18620969 538015344 255956746 936769011 376886193 516802388 471236223 971652219 456354412 587088846 7451986 613105737 151294189 425895022 13511626 247388553 162255816 411495198 154039455 331596269 160958210 879772137 697502957 805769204 780198647 809245823 106716325 467053781 401340364 942544996 209464991 643831374 520413648 973832001 809980112 995506814 443278838 776125585 526107749 609471875 466517706 531159550 246130013 248232973 225406577 426365366 4919677 667989414 312257636 625631891 288569503 489432795 75312356 281410182 61526979 801997617 738602528 844738916 757859066 767553955 425870374 993597104 890994568 956527811 647890012 672197586 158047957 995996282 641730068 700324327 91079361 306521431 54393650 112657296 37380894 779741163 189564538 547881613 527860821 711033259 577110240 910080652 103073211 335333970 21323555 582587799 450088966 599876355 182198039 919260916 215076024 307886477 2078453 403481968 368557187 478262188 267262893 294066878 89839698 853285254 477612239 596507346 540013224 799820912 579043580 692941129 131697033 715824310 402316034 630389811 302265071 448386971 22613078 685307658 593444089 658079346 156822140 545465410 49668919 549410124 415031254 866040023 207963483 337833388 65359714 871320696 254927095 497894582 256175453 259697927 16133215 170148636 127483453 356912645 128922608 223874971 81566205 652693523 485287309 983886242 463223161 774685662 147492282 927755502 738898101 868483498 695762576 806985969 659012815 696854972 264814800 531225721 86310315 993317679 968035878 976817527 730896173 843443371 818807217 893479306 428824113 827170749 96392237 320219990 35324207 183379050 16044016 368636076 9801375 690200557 55212515 649275252 160978055 457488487 165503980 212316411 175342854 429659807 210529288 834548902 398088352 940144394 677036113 752649389 18122673 119054892 85025913 746221400 156371132 728184837 329990633 952084966 355496213 580852377 201157636 586380163 546330858 641537840 217664896 769217842 91981839 229834873 163254824 389555130 176912236 482029690 388824483 701208852 687202083 906517094 3203993 398940619 98633562 664613711 406545257 508898043 354662253 692782427 516245945 526595329 190409380 191495263 154142365 237591383 221685411 308414264 301625654 718772896 128015494 924770317 745589582 991595883 155843039 733514718 510688830 619044119 372485951 641864478 472269489 775157573 667700477 964173063 76972107 815042523 476397317 984525780 970796726 999326144 910986552 951432115 344716698 918373557 387554029 971024694 740329756 977962607 731771540 805190857 645765093 660930721 30644485 399140781 247143978 432281445 328684120 356976632 287987546 894925668 472219755 721099161 519589750 538724127 271410304 892965969 443149430 735994525 417506777 827693293 353476624 441192930 96832046 547379994 179227769 950360353 745385052 792422253 533145341 825295930 117794242 579529491 242228417 960202514 641456372 676378597 176042767 994924749 843533426 985674405 289770600 872059308 162035443 367153210 296991385 329896426 234425027 613228378 214024016 492276353 99749909 712966968 251437453 873518548 731217458 851051531 489609448 716124677 238323295 973408585 293842267 775052064 562619982 989613807 670846979 673508962 91719739 555137946 67454301 655526715 174946557 334284241 123613689 488744782 446290452 995219476 830284854 890023908 86556453 804460198 510059719 798603400 320857751 322633884 259591063 937050657 528734742 857464414 338115135 644754220 519824209 880806829 597345328 843092512 840342044 871916300 84704758 623249256 198064612 379732056 131857775 261888978 214863961 518883276 227704682 482407659 356483657 993590980 25842199 50104438 23311719 30742715 21808067 894031668 578355288 977358179 191993660 203531736 58819287 365697949 156159457 559793971 460922571 529996832 189214950 414170321 242020755 658890062 406253987 479389749 257744521 836139866 153494481 531848410 95828920 814398258 627218668 985310895 412386446 753839412 612438585 869623712 311475530 413543265 263707013 883901993 669133594 737038990 321028738 878186860 445414852 452098608 413680789 701906059 235654625 763193946 471472333 847085839 761742115 914742805 888232522 938189548 447966997 525227480 194733815 321854427 135585301 503509056 104777871 194437213 165507620 245505574 217200804 751766880 708493480 933448016 282470341 732885808 159919731 481312446 298519127 830432853 342205554 424564977 293122600 787741159 681453615 794404763 69257276 984091445 660069236 768350740 61613681 718632126 566314880 842983011 462108758 890987016 37906255 81386480 58125325 723732937 712079324 810632434 316582463 383612035 66186201 872383688 408496684 625243055 194251955 806757075 773903182 906009674 249997474 484893624 77959470 219264912 218946837 328401505 276487466 430614575 365202977 603923546 479524131 881412273 364316491 552154889 210901791 817074144 263644757 679860443 343394895 746695743 2660166 459542461 102020565 385422929 111753976 323401986 114260902 245471762 48137791 462313205 90294156 674609931 580586916 955511316 779002055 995498964 187916203 466074226 242910526 665655833 532368362 715226883 241797763 480761594 153374392 494847732 303602493 456368963 154175978 601296065 584924474 911930809 843244053 938060916 340204599 832836885 792632069 989239321 156559275 679449349 464149569 624026799 320453080 386736924 227228278 875814122 671089907 995766600 104505169 730496939 482469395 522319437 405408388 749610535 40215655 720734583 472350089 575486161 316335682 342581432 151776145 758862809 359346699 822070157 136587613 784864325 740644273 969779537 38914097 352244609 262958633 851448460 795095435 989421312 593104845 846260558 827760346 844984346 151188940 184708569 64103557 219224120 9888968 743190114 95568400 237624591 126690397 482659160 163348118 695919369 636386891 678002365 115000929 725990776 233758288 476449782 385765554 779459881 587620138 921907624 614302092 780212052 155191236 888888173 822420259 897978734 223267902 251856327 23897882 484389871 345820891 762486792 162703144 650851148 640794180 945288150 938645037 970012101 334150536 424817251 375597692 574645033 35832532 282479176 25367641 751372407 405137803 632865375 88486476 220614306 181429308 320081788 3454101 41598892 36442635 956126499 306443039 891000906 496863591 710464743 381719718 922459593 182647494 201964558 33832899 176785198 104986510 563091722 431409520 832775300 662577295 693440661 1393263 187565814 164951068 604838985 590039410 722605311 222255827 611603295 52847683 982140468 608257250 943227943 248336036 394391360 73429799 812319862 581485478 725128848 114971581 706300277 599201233 600819214 257969540 500229031 347124383 446764335 73791898 730457759 89373539 567536831 145304524 936572239 157532048 227719828 117611325 194219548 159459382 586143662 346933961 773870538 157003685 272846446 197409689 717573410 689275877 771079097 499569972 866094045 13552538 888946395 462787393 796325414 282325011 634966609 9803931 674778644 603480487 859258457 715075214 909157432 175351391 971021870 392651658 679320163 663654654 730788627 401745595 963524057 122814656 237073701 38412057 155447347 147632977 350850695 72931181 716284165 139907930 644473311 396400631 421355634 390931222 636868700 440412757 809788244 63150259 149201493 95200078 394874173 381807048 411956348 192512914 584987799 491297038 496828741 128985549 479366400 101685236 270653190 63790468 274345630 80478105 604420644 558841878 879068457 746866802 973504106 624944709 888498612 708008475 720068394 286313509 973111786 766929141 800579930 329076082 884667283 235773022 255938744 172724541 414853892 225536083 504026482 252151391 595878181 213814097 409413162 383521029 940370296 281208311 358526691 245897282 273974543 92548134 852698931 521508067 892222057 252199010 801124336 573988071 893211005 110624722 656162307 164675314 470736328 112832847 505480658 351212182 394203425 389822152 523878788 491672546 685567023 372871203 948085689 28709961 64142316 15137785 478573529 75596164 889207423 98697291 938890309 440001801 837601955 271118012 712131963 193736384 467033026 343193344 551309037 139187206 759355081 241232297 601355016 90865983 895154124 346444919 613472235 234796908 512374455 446292126 918489651 163862039 928855034 417502911 471900530 5406345 466671636 112463938 559585501 54879929 837917594 376712655 833368120 353476719 515556693 230779809 287406116 257465637 262146903 177535620 377288881 72669833 920008978 884771556 899073160 353402095 701328447 298788885 897206847 581966 688007242 2897663 305168548 99147377 649192149 193561148 420010435 253453787 925953873 406782725 984486661 793986450 904426448 617696157 645021488 480699331 870595840 557646293 597185588 389313310 824348957 60247823 561677321 402221735 484047720 281698357 451573106 448057457 884042891 435976138 517401054 379460762 675950875 227017797 834193946 507197731 644264989 313956454 688645592 352597204 771867995 548564452 602500437 418850100 979023766 197739182 678081247 354311956 569144031 553244745 625552475 519691372 816126826 785994266 968662849 920896093 948818883 556420262 844171502 715211282 855257402 407481504 600978302 467068544 565611304 490274704 627699193 173921914 787741620 575326085 730114022 494999845 545691276 10001233 358034338 9710853 617649654 189458498 762167347 311784016 668095667 632034829 982820918 952042589 978634107 894373121 989697349 330245032 960934228 445342536 648931115 262824012 933458010 342269434 344638169 94213868 493111961 89962749 370599292 242947141 657151362 62315207 866889717 519211609 871555694 776434428 905322052 527267517 638906687 489314966 888199653 807400120 942385081 511413540 826541744 83621631 208162672 166427103 468848725 110028056 589248930 288771138 604072047 105530057 764397098 212295785 682975509 394617284 888763247 175070733 995696699 128222582 284696968 269785597 382306310 213005545 643974020 221732112 301806656 63488246 959165481 263496168 264685290 159671069 231424741 226039359 676436838 111847328 640999107 45395576 770850685 121744539 335103487 23361438 904702227 822836502 823394752 593108964 796488224 578652841 703835174 458140014 903878662 563102857 783980265 697257519 754533302 537154858 645537519 296367477 433073518 363774232 497023742 134606742 241545718 163131911 772428868 234604373 718630679 514346623 973665974 435051115 871522726 5443635 540248549 455120925 494937941 406743403 495800908 268200745 515262376 486639176 777959397 425946179 922217945 913602369 938608374 79317021 872252336 152144272 740561535 114436803 634299428 444813564 797910311 398985404 960938128 259271793 841511658 60435600 502381167 317333718 548897185 483741674 683268958 458622324 948638803 174200014 372089787 51459242 77263518 76303461 651731614 7245646 849575283 347439338 945007658 358548660 430791754 288325797 982657753 127622667 290345513 9355364 280700827 146894914 451546006 283257836 980770313 208492414 514224471 335536299 475146142 241370685 338906621 124842230 300674257 221772727 927818912 206702497 793679377 119888631 638289608 147564857 602474380 212394326 615933967 433637371 900807906 801099222 989495494 319182523 860689467 37577447 650309716 332697892 850652058 698525772 872586257 60352133 104200704 72283401 366049899 221779629 484066542 466006472 478220203 244946118 268767613 53572987 808678090 742646678 952380071 335673180 619454636 156161834 372702099 295849338 925812704 29587370 582577654 154499612 442043660 359213366 568043266 541556768 555838111 461419320 572467195 239796140 647273089 452372843 587772293 502023265 825851673 323815674 537535277 369705327 566731692 487895060 623448962 418229180 905210636 135770114 690012619 680475143 797352310 58305819 929447632 112284476 901950073 509493666 579939960 335028870 474171472 225425594 550643257 280681550 803454666 47207076 77033724 40889888 347515522 72487721 294467284 22451981 64630616 26795368 197002855 174441349 382647466 99458256 961990700 846789976 962382737 134606486 675617114 581615389 677558665 24142773 823027151 383957991 659514156 244163556 988516879 641931193 849704710 53175168 996972224 255574916 314116545 191369331 214034861 198419543 210740225 134676272 387257535 157791849 219461293 185725835 779599310 673618872 675286011 631126081 822209186 226659290 359595666 346987624 981291903 640501071 713227786 346089466 942832330 97114490 676699750 542888154 934493522 655374118 700451092 194081332 777480518 468559149 760884527 386522073 489160340 19400701 955608047 259785333 683483095 401886024 634819345 150389301 886225297 404873387 643855543 542309446 885738695 351053225 660546439 306921887 481075353 191661635 612180046 228244377 799215063 773625733 901808549 177096413 747864224 70381138 483703729 384076620 771810972 613366913 876839466 19123075 30630458 4935001 620687983 562992146 860889435 197490625 904858444 543392706 657468840 301139102 569235735 330775005 904466536 261733482 675988957 244413856 411058686 378130122 510522685 375088154 988295229 149530228 814261552 54162236 368603285 71752768 706933246 483883858 580867222 108708101 582647846 224175879 717496273 449576674 517751649 166662186 863095860 656587951 771094570 303160054 821203486 297276750 461092033 320061206 661037751 262961227 907866438 556500940 740384836 148239633 895208001 49354770 671394768 363917605 999908584 469899686 561529944 15355331 291349009 263421207 635172985 352271233 453980205 46934488 519856462 216780365 777987912 673897176 756444251 706279626 848037053 163201065 450155947 422631399 945741489 309537456 945902954 9459812 129038579 118301798 713516352 664812386 745839949 124949700 955905968 857807203 917083945 845538901 871132088 629254252 885727868 308868529 952581662 131551834 908461499 511536096 852223376 375037339 777245580 628490566 894359349 279303149 401408535 261058215 306871602 187323302 709672574 452343352 830425356 429622160 723085766 339766763 639181252 138231469 463146814 460108542 933557572 791836351 857143768 22612677 958798542 202180975 489824289 30410182 674419274 428448226 857761364 440778031 654527314 442332325 894278104 106095600 208848754 36638701 351190777 106926346 138490672 3603020 66135214 46346464 796836529 83659821 571901120 290220302 863668975 148633076 358402186 153020684 475697354 199392417 408288292 139144630 667329828 192772321 470510530 32735065 129711049 86610997 525440875 365122909 731737394 484885699 654583799 224291408 751927694 289849450 511470700 493034290 819834385 8455064 908949718 874346074 975797793 901657078 942993996 288327182 320651161 198422010 534761813 527647709 852668907 193135247 752441695 657895986 698679687 427830962 574026904 2157003 36824264 16314655 480850999 50675381 879798566 663011453 754594144 203170797 595400889 234511479 418421483 188624307 421504498 348786525 984788782 503656008 747025792 50282759 573757496 168319777 968988818 219045208 599431412 43563853 689339958 474961074 673357043 508298333 819626680 382609959 499358019 97577073 259844636 228019323 849326705 296517886 384195190 143057825 555895364 300800541 500991886 411743081 652652149 451480584 484876519 288023655 844186932 682939649 840320188 59151516 858728300 126415816 938268504 283542015 407032949 37580461 351721866 176379401 941072867 505645460 532476685 1380645 919764877 56166283 507190288 279656119 313343514 42563928 801376805 288195433 875261826 532912972 953493999 757623390 777425900 344627225 390353682 347335355 981293918 396448133 792688590 389811705 757312565 251254893 700013246 100569038 565458450 349782622 383824270 321875468 375757492 231942267 388116095 34340475 872187635 371251422 620917045 286168901 608273435 398245463 713741040 326049167 505476324 90347322 635478885 539034466 912066264 451927335 748649483 500488028 986035403 901177956 934230559 3719438 221518701 22030623 38405847 24064234 638416092 765703 113788255 64176300 202991183 25973915 310446218 11129687 703950801 345136761 551752632 495331847 947266458 923453419 967162629 592224556 624908651 455231965 961322095 610251449 724385052 284790057 649350795 481975580 921321307 624501794 752270548 380911206 409780005 185393234 511241472 121988191 602168022 411182430 480846985 424145038 746419654 365664043 682140330 277177579 298764697 82219502 327434334 317995983 683317467 209404017 350719874 152236811 529995363 5436927 558058769 234541712 381618260 242007444 374632064 161410408 336930255 169808628 749700377 219617626 250491975 96003919 368423928 343393464 877900429 134630186 316418058 127456119 236236610 35701482 893612062 45968787 551945443 464755760 492130062 193690641 345809414 120925220 760247480 400834311 527831469 256717054 793116846 175897429 558922334 233622316 718129276 498870267 985490294 516935594 544341831 196971945 724042691 304004605 322079259 280315724 413879309 205445081 939265235 925591037 959941019 640294833 953188276 37837310 957559016 925352966 926014916 701625229 828499498 469707390 872227420 384467609 465602973 364557962 861813745 403385761 815554724 41371345 631927080 556874434 837712899 91826551 926774877 212592503 790049615 623085043 686057059 577876849 596432916 46305988 166750341 38219510 254684355 203732538 539877392 255318218 388769490 58512865 594308092 585967392 838680250 333459741 411393510 136099937 156387487 69402151 716673150 631687814 772910229 136028028 438593330 284967145 885384773 355975241 376935650 364317311 635468729 183270895 783447805 594385129 893388949 268418648 436469861 31406772 225903310 137876936 653708845 190989695 577371826 484053257 599789444 84310108 520996026 109153069 246874899 111836282 771398685 259788660 418865253 379628928 807447502 75003213 716652353 143602910 565643976 376857754 607855223 517163677 894843301 443244200 864680141 629534930 709592828 190960583 470186814 295497153 743344611 490091627 856874719 347243565 759284037 707944564 770339818 263781518 622708546 20707644 937634504 25740300 778199823 773176645 924723140 657846171 982208462 713562153 910739276 846591997 863169665 560547165 714698531 268974172 426413420 406356032 916800805 10135871 367022933 54258331 907345458 840439816 841430108 284954878 727335611 370748725 746136103 396943648 667953187 201987914 869556419 164251567 415736531 404826478 490877144 71541587 327872994 60038199 867289458 648922336 884518022 327271937 881897338 620531745 798632593 39993657 772589988 725403413 850208392 191672631 914492696 91410379 175549282 120186267 535796862 44585202 273965556 266091121 509561524 231697190 688324097 120007848 562707828 554285826 619556052 574429466 634618214 258636323 304572012 214203736 660876120 280659299 572145837 230813915 558497452 444484313 980979699 789924338 932597096 374477049 950380208 33375841 602397896 202018143 294656145 80399846 108130520 43045156 133632986 30535390 560913472 112601877 384994095 225394046 761271430 704337417 825627173 314579089 475337608 437168592 618108363 135364880 576650443 145191574 643859327 274990515 333026690 271942596 680936907 300431918 902938339 174871861 596412733 184349462 629743876 353119795 723139727 178512709 664295817 132679234 561052698 247032442 437392530 390397021 599627259 236832037 493660867 27048629 257312566 111850129 453866291 411948518 712635877 498243944 579080620 156458914 511448197 213438406 453502318 219894682 262755654 226482290 676007892 450316500 592291901 178027758 472344006 148005285 774409498 360233195 454224244 420638629 616363676 506122066 944096724 34930781 975254191 844410677 876049730 522100764 554419506 498990767 966929446 114068063 718568594 289429088 620463510 382985692 998075819 396341684 987011313 782688680 900586983 157842132 651767195 468588459 774737803 438642338 671261174 264278629 400377021 104552540 662836938 437024274 629397134 608762772 997079318 211524970 643168315 622631705 768057673 610457903 624288663 430036043 552417859 230759259 510205032 67234312 571331636 401072018 867584963 278300735 654405761 24272110 512539110 192169855 746014002 455580549 612595908 568473101 855935513 218895256 310235273 42187050 405966530 27999208 866911067 628116635 865167292 326735684 864919266 759613551 957845268 776335778 912319231 783454449 838768802 88604017 366073403 96282212 633092841 62938228 312894889 85402313 158761778 28037331 659563064 249448588 290173444 182805910 690321749 98521927 206392078 44683102 170844931 147254616 584693178 536428212 895285104 398593694 470492444 332818524 522878934 456979544 655540262 472330271 498815153 360240742 634147380 203782381 999153527 495171831 612219340 72559925 723714035 700537572 756114977 389328141 726115244 492182357 976831683 536717291 958436051 790893345 797760843 605746595 787836224 250969264 431323380 323564183 735600211 134278586 385935079 197871650 873164106 627427420 920792597 199082446 687629700 596983074 876885730 454402396 531118640 313913883 546802823 143124194 834947505 206983733 282024251 204010202 303226093 28987619 937322105 300047416 306483812 169490023 668220000 343741109 716634420 407445425 746045928 129149418 848955674 428365516 850857383 707928072 871352464 410323552 725482368 44697340 519526725 200744639 959176173 789702101 959542844 941690882 965793728 304512247 439616158 154605502 547329407 95589819 677949149 546592460 856003313 768536038 769644295 485765298 860655589 702717808 708086321 400131845 419694294 365107170 888789380 285337323 496056600 466477222 862460592 290387110 788802663 349463050 429579506 298459395 865095179 769655379 887612691 107019288 979903758 957801189 962005023 244627199 592530369 356777283 373188202 357833672 858368344 217712595 269884126 188098148 467229677 99110541 665316053 449671937 668964658 536529033 840050373 584548325 637677497 592216055 966273629 262527389 623641401 441411742 522488895 116077014 838349161 337876630 947527608 74104245 93232016 27265044 520741980 421999322 467493497 302573444 462302569 386637163 608135357 324276353 878095796 709492431 783603808 467221519 771568951 468216015 792112437 120047518 889397858 833051525 846764586 282247119 789346331 556857454 672257406 482147580 511123779 472259502 575422333 137854244 934435782 220610635 806877403 669432205 783268799 580644982 638207908 619133588 703335592 576899554 889686376 179399097 236379847 165018109 459485682 380870935 792803530 112938475 794432862 37696686 857665035 640377000 714943727 142115353 472231298 446658484 471909766 19815903 85939513 36182695 325363490 266672590 862287397 251631942 914308665 185975888 836554979 53924709 106968307 1155489 254017359 61490481 994950504 612379028 959885726 231981335 447788326 259127645 499330434 242314015 742513797 616906359 642252142 577355282 581504182 142090059 691075151 629280696 809701754 596242244 844922252 490295945 843851811 103130381 600017787 340507683 936472623 488254537 531034790 326407204 589866488 234365477 695431567 242711132 621110808 87961831 686290366 225689835 722161708 8888157 683830306 419592128 956137236 438881069 680016549 673695823 868708820 768077417 955032747 53027847 131402808 77578022 908530125 792006349 849407809 543021522 768293909 525668141 786922043 332405241 758229633 465803470 718817566 400796122 647947454 223766533 573211887 228283517 591946385 366313165 971750848 193111711 891447824 143287077 482072946 185900839 945228052 618421713 789121746 186430008 498085494 232887064 714485948 160925011 556728202 434735786 903072271 284374282 509276611 59951853 893256485 525218779 816236675 586182506 962579962 562014603 749748270 66765099 360967611 156396494 704627871 175317905 302719937 150899474 923584690 324083286 380135840 250208917 776660467 183154034 216367439 129408387 693750632 227220344 973496626 607899336 706275033 146204661 697434756 25801666 202827941 45425745 993861508 745102959 973010824 191755751 669750631 168782091 426306706 305687977 739228740 171110740 194281427 28537370 245270642 41183301 423512842 51407464 215833316 76935308 578040068 95431258 274578078 238345851 808368329 684442998 856302073 692315214 812788077 211016188 577194855 387796756 424934438 149005557 171384993 152448752 733174753 367645938 707372137 661724824 723813827 306178385 590778859 44842969 55363751 48770086 744856922 46053797 262696796 84776006 862753098 749411188 881758584 487135843 937857107 221061030 901421515 98215816 177228677 67308550 120339158 8645282 226924561 206907095 487099965 329127904 882528995 654288801 985540590 727622647 922121768 406769815 864671523 430637786 906778664 354223584 751444533 407260898 443307450 64960687 249490593 31109878 197083324 186742105 216263736 166956680 503404937 468738802 725817327 414872069 771796675 447559084 451812369 349729878 486301123 371224291 590409172 305664657 996667870 283500531 910783054 760493596 952744850 335751195 572607611 328332999 575329043 477496097 503826856 205493920 935795458 873909335 928647289 25090011 781894496 674520153 724576620 92027091 942099954 809204328 841339743 687662158 780665702 479037330 575886814 465083417 806924230 736065536 858129177 711348721 900915651 283475786 464925775 187695697 467675812 400508756 516748769 489172500 897638855 807953794 810747306 649862872 944226531 67600117 464147971 70763396 416788091 113762836 464675129 116310232 692978911 574525709 739863734 107702698 216846320 96280744 769157876 645562956 861545644 258041143 643230877 384629789 728759248 569345183 652891411 320772120 351280100 286139756 846564681 558083365 600966797 54810947 749355192 135591529 655992877 402359950 897980385 765089322 872064635 238895041 814989443 163148463 819273990 257599753 838499224 179357071 662980356 462240741 880155598 795784434 972092936 702301399 919934970 155371477 978119218 523946569 775144431 413852302 625839954 339788151 513796718 426917988 807597500 57713004 336715721 26181013 674431801 626975096 668030968 666148649 674337235 574576294 984361498 213010505 339523867 324050810 776297346 728450574 802511519 155427566 642379649 84710095 109718602 54936616 995091951 913398061 967067652 909347710 962192122 514136041 800026570 489005661 666860119 244949000 707868698 172656588 653955789 632126811 920374275 640069368 929307729 227590730 472696826 394660196 620450190 555456000 659722157 635638408 660532288 620575650 871537083 125991917 343148768 287924257 508291518 343282360 867147095 541119605 961159397 638922893 640941587 266833198 578985186 387919784 549023737 245465051 931075234 440883242 742380571 243102225 703120382 311633985 685903667 288542859 473376784 305546415 428318962 373241861 584708288 503855005 868428147 5785334 323232941 272627490 385575214 270551277 723934250 587467502 630105619 69773173 933474566 363340523 611932454 122629999 199865948 121005398 307265110 246589451 970811384 263325679 340046401 44182341 565354793 448438616 595659909 202920359 286143615 40657674 478268792 375382142 623630940 606933565 738773534 374728836 518194479 378925948 890699283 785278115 881482803 744153732 913633791 159274632 823810005 369722356 946550325 122387974 355583647 143675460 349011433 81751162 118284415 67399376 922967301 276083996 503300154 466399135 565751210 266132010 463374925 193064319 756862125 721703516 995417988 970822907 987868859 399027020 518979858 80115572 189730988 8769054 390314901 359778592 448000598 283482786 922426765 398015413 988001746 713080369 977103490 342252886 958744336 768994900 917583096 271077665 608890133 68468865 267770441 68498417 921425977 273921037 435611547 245314764 623524249 16423072 656071859 493030072 678194535 263163133 762775717 629422823 771456724 5604847 255787413 128942961 769977126 339654556 608709973 326315826 390093440 170834997 427447706 30007703 925709138 79902055 630027460 291774924 330370357 239004407 900412628 720520407 794131173 43453009 636403267 528578606 855505953 587687031 608397612 151688741 318328002 192689104 582634395 542259997 620781452 397897263 663986923 260766221 285199783 189476475 947712716 837258225 876676560 24719234 697718183 342026797 508411706 358613407 427257672 181833024 806753631 777903252 930985455 400736668 737182524 428164060 770646520 315837099 815093528 91491164 528870452 200927536 217059244 97036903 693304879 102089039 365587499 270668804 996887408 833157389 876680886 64877789 576931019 435965315 855453104 562757829 658312225 312761711 604612191 291636728 925162084 387461175 734198248 137946722 883529073 99242642 146641657 92586471 330288504 310162002 566842359 372187923 617577732 395493652 984833973 327093301 816735313 697976376 838888420 508999434 840238808 584577891 735552512 76486242 178399630 24053396 508824058 383029275 794146695 624332512 753210608 289900584 292306390 27265956 250897007 61234197 895490358 320706997 359301676 221821265 794251186 777883340 956045062 526516785 575814800 314974448 477259833 159467954 903277737 705181811 963899867 777566988 994415095 484926999 534502805 176646434 324469876 146462886 582714813 29507471 606792994 272681878 664897464 564077970 747845502 199212384 825554309 785738752 801740578 792435692 970478672 81361436 614137776 602147168 738046972 533527773 926515475 475131643 649620244 347962279 591829636 328297 277973116 96117962 696163672 114759355 310644396 81225334 543277776 320629056 744835947 292821248 599250695 363458825 510573055 461756852 598136328 178370047 672061191 176510931 852510555 574082235 845455901 156591495 353887547 359563 267800115 147266642 285515290 140939767 636725913 303381627 624229360 58620236 440616081 75702888 298271784 123395883 371717874 89748295 694405495 49407640 810584195 9428975 116828769 47567420 198181067 19673951 916186750 549049349 797791092 667804299 891346157 100520676 609551195 460943074 519476004 479523174 521620895 351868383 490001816 345858836 516303967 417556201 636737235 622311563 930871195 585302264 655671686 590724099 655556708 100865983 195912257 15706732 131159667 77469549 126456078 88222925 539226365 292297074 714591138 457324906 483963031 108851286 135449230 12343616 803318035 679917748 844135012 738881393 774516976 766932427 793190791 442280479 753014049 93208621 960870696 391146346 463138685 389445689 498841865 391149246 554564344 383074283 659747330 262028296 439388654 284386395 782427697 468759988 689599544 469991054 539988363 507870925 765428431 499784550 511738359 337313006 745022197 315843251 758425283 267112816 527279515 118099678 155987232 36608437 574338066 97149408 346833550 47106034 161825896 60095556 825507703 364064357 745160593 174407126 867991273 811100972 895458072 548612756 610636948 287476113 780997594 690431878 929070102 474978845 942126663 732023038 841336514 159975811 570493390 562737074 718572395 487703956 722759496 287116116 867695913 397802819 911273185 804242576 823522858 462807102 624282691 517855531 770708568 642831436 785901516 319336100 355511359 202185624 249987915 87991577 621733701 521282344 903793344 249466354 930449868 532887571 930432649 130108249 922924755 219798460 898900344 789538719 936273344 688800371 743964307 564878470 789455228 721421085 934881072 233378996 955670595 787938670 814180550 61117065 191875659 110902920 199101416 186663692 813061768 659645926 826145515 214551665 858170735 652077255 695225785 455781414 481180278 318065449 933709404 11577954 161803736 107309007 546556068 87732567 159856323 23530111 577640784 160081268 211851626 99477408 195634717 26495980 545187630 513646587 632091004 499658380 679628838 96261389 716973751 344114790 866968029 255683250 948987954 364339147 843250653 364972195 976928495 593510343 768749951 168781906 857569922 574210007 916993523 173494017 470660017 236723995 656898409 613764555 696006955 127499658 488300801 314434851 912196916 399512405 591613066 299072438 505155630 390322431 462439025 113530582 165438957 70489128 439464679 21985379 596126826 335870495 749708654 710616356 765644550 60521833 153846828 133997566 201764519 100048119 154830875 15225128 446912228 129837174 883975947 532369167 705715274 616857362 709543005 177641423 531642384 361390141 601987026 218769955 297758430 87667544 257099735 152758948 270345561 3219179 637419446 124275360 881642529 378775979 519258343 358131032 483840328 340456622 966319458 453101904 455785173 5715854 488508231 462504131 580207222 483905090 910559564 544675885 880265393 586278152 963899017 701271021 842017244 353889172 464753946 113037305 280605371 122217090 169801257 115450906 182682924 119965931 992125776 525958271 604807019 30479299 565968741 193098171 783518432 618011591 680188534 377871782 699064815 307972046 374595843 222387417 899223720 321705480 925076699 711271456 744333811 730394145 885123756 524068268 756290527 360584721 879217602 729747309 981942837 472214584 561716471 161781639 953553995 214318346 903568564 508125479 550139039 172966578 625609347 239285228 368035514 45795245 745808901 201176644 861965493 186733283 968312774 867176237 948031889 127002915 770451638 181356577 797760981 784495599 995065614 412299068 639464632 177711305 881190506 435931893 820511523 141328302 613718044 103246062 340368001 174363444 487550877 302413822 881404571 400982852 838531946 836454958 944487655 902716024 960459065 85615710 359442432 269326886 558567877 545495828 603390102 212003648 368800075 29515038 794738642 330287657 397028336 179342806 241413945 53001053 863082890 16415633 122164155 32390086 497566326 148818596 744411113 752137 405253276 239127738 781031941 566361936 745559581 557260133 558880772 552688748 969732646 844604344 967094712 27737038 913823051 631526175 729907486 661918814 879702463 274246417 885006814 793511489 901900671 491503483 617186170 400894723 417899600 259425894 637013768 393323651 420669556 393845251 835980002 698776038 860790902 783857656 804962893 75461740 914025792 686592815 939930135 668417605 807512083 281399810 402527521 247368147 726973070 698522554 790793157 170118363 253406670 240661457 684350138 433940893 556457672 361263218 530800931 398995777 918096293 336183723 710907692 23098006 127398353 5738112 921720489 436651517 608774203 194607220 769076185 766940118 982313466 151086028 328041060 97013672 576253531 149368228 748430511 240186674 955788595 137335597 366288349 194816758 443547713 212653044 740381347 544159299 890743259 409557828 409878761 284923068 864726174 441303092 984113963 554084564 586337891 497308613 503538892 223376313 896254869 566088926 823588211 486863321 717250772 82051410 817685326 667326848 774367432 398922904 721602876 428868155 827297556 725569466 914489883 520943012 682070104 104285936 320881446 24545492 694041030 211303886 755181042 636941108 724776932 473658709 724856480 324138116 665892727 361678961 613955456 126123048 710516196 194486664 409598302 62707826 131065581 76916289 280353552 197013562 646132577 529993896 960533965 932227616 950194376 268547434 868238515 531628224 786573702 226606650 269922336 128607239 914861501 621675802 893359789 874928110 969262113 364019743 558310926 274180097 734440933 174388274 406897637 248694852 542362362 390962979 647398313 633571049 920838025 884886270 982032512 770282327 991274129 881825028 956146556 787288075 955366766 318317348 802250837 754720978 911092244 312757241 858276075 138885307 983842097 199494453 259734136 145792214 353407849 302915339 739563165 485183017 701057188 523469032 887627736 483209396 912570889 360773661 625282981 597995533 852158612 152797453 276774925 85128788 359774799 178650075 694099401 252747605 571529312 171037084 429575795 175144891 624270232 271050200 644680556 443927879 637328352 59791718 59900455 38225574 655482671 208962431 463117859 204291942 280029561 104039984 995892155 685113070 704169486 191537205 396079877 52963540 404071607 291840118 666058832 401645723 912845663 361708101 818080505 150929155 166081837 154498033 383282177 81428776 853944248 829057504 995005878 334376473 625968804 472028238 918676833 300991329 389971718 113368219 709050169 140404838 145302034 56203422 476647288 470883316 502535062 137682827 929527401 780948281 922433551 784517018 861145099 341282977 868135013 60010660 385652224 60432110 930881570 841533405 970638677 167664820 973833223 661254654 862769052 334578937 474739344 470513888 647342276 537449154 831615842 75389047 955181586 675826209 888811949 495139765 775316561 663882971 980821032 687158327 949458799 463439211 637020357 485755058 891784985 215198610 497914316 343757752 644771366 443608587 616527536 140242202 820471375 576541493 890885724 148604906 897009416 451837805 951710302 812889678 886077773 488148496 575252489 307476840 818072274 93061245 876613873 77235611 344627719 266707848 366578479 101361262 632368889 97817741 679769481 455031587 650837469 589125338 811138754 407920731 491212689 178516388 354942323 69820711 90411840 65975828 227137001 79935404 866619485 230680076 491209975 453549079 469938296 200071019 818106853 532422972 864636061 627227586 651792760 82259379 298219125 137457749 606167132 1941906 901572520 430023118 750977994 295774596 637425688 270968551 592767076 105498638 698136011 463772845 845692986 707889335 884345338 63438316 214299531 105682757 403827036 86988427 604997663 144031661 759545577 94027363 248337383 148108310 684603562 232077790 611276246 252442778 777903087 55926339 305348001 92622340 205107893 118874938 263229301 182615784 927305590 243006502 855686273 526614073 610388107 428835575 946442599 467475861 791283843 620901175 901145185 753449264 883414335 266623984 469375023 71612879 779349022 296459976 987760982 253601995 830675988 38319685 112166013 16338046 607923329 414633627 951561131 83312938 432189087 331889697 830239804 16844814 643436137 581812907 644962211 294571364 372634015 311884240 528772035 524394844 885210826 222318981 591283628 106636864 761325053 188627557 835435452 389571022 463752598 307401733 382358773 362759235 787757282 666021146 770937378 43178308 245028273 162320557 897641672 694697467 720793268 216518367 476157218 171976986 553006999 178154311 905695127 711496310 799620019 292305176 613461954 447751725 670652046 620458736 929576935 710360303 964110467 802854816 915688972 171473744 744344747 228440648 923934673 245503647 428480114 422295382 891888426 199918257 947394561 139547355 212851309 84080937 852848114 64878052 222659056 75947765 401636988 45260051 709289887 433058970 780845317 643680095 660969451 624610695 787479012 366214918 586943564 407447554 944065811 219772564 868533752 25937375 715382876 502135054 903844478 132387566 812194821 797992055 868572236 39291894 487286734 378840243 544533694 351208845 591170761 362661228 469298094 83680209 222256186 189584315 873639503 727397289 804147676 494190286 851129375 694056437 736889921 86545827 204423632 180179387 773271235 259351880 664307434 301204600 587154887 182481325 688319749 475940302 484669778 231429294 262854979 148553450 722978668 282415259 766287516 206051763 858573337 75870191 996711132 241626266 612506824 25065666 323056744 118632245 838803835 727529327 858864335 589632137 932495845 900740028 980275829 64698281 828244959 416754887 547609079 447901840 913321935 721001356 948104019 612471627 843334191 842536907 982273572 739667420 759230731 360625808 592932812 415566638 465797897 384957775 894658056 397411722 830307661 584754012 743918610 369441134 776753262 563381254 999741322 394610733 460582548 246843275 973231716 526633310 903112380 711463629 891517098 576407956 680104628 445857836 693554813 227058334 278666861 179816306 539504586 140470306 315546356 166463456 928210142 805503697 909526020 308814368 891682505 730308859 896988129 120039182 402124102 308942329 936992284 243169813 477907653 152615728 940555500 680004137 757312873 486731756 518921664 290719171 849772831 438099764 828260135 636431192 772203088 546911449 998002139 72241090 600205854 11267967 693584347 371289473 495063143 207630946 613759336 484166778 554706964 240281551 413502540 3254656 334046666 104319093 969180769 475491597 939704062 173954523 695495524 41557289 167643016 78405822 838499580 108868287 905894758 175620685 272881078 32784598 658735434 103033732 916208133 56023648 786363003 224117276 303450857 130667156 408209473 37371002 871854504 298190420 468735941 207407291 639732902 134311307 240636750 84700971 654597575 177267022 912143265 441850810 907309565 246386340 959917583 898848157 942017589 684260325 852020958 456918836 753085953 533254949 804502879 285346046 827410956 202494873 212476571 44533015 596373351 379103080 717722029 486040209 625377591 64014878 655247800 266523841 854825903 472427882 654298544 605117294 998973474 339150519 420540261 298519022 889991083 330744180 762098858 584657785 933110281 24658399 119143042 1083295 88141003 70293040 288109731 39389248 995009889 415867557 927590257 266354462 749301872 20513163 557669648 264431371 534766625 413300927 531268914 9418360 25280552 9126043 949842188 10337796 935877072 430525103 901572090 648645222 817668260 656037053 851222935 757186938 975407509 487198292 776438038 280685183 978869586 315102663 998096680 552903047 594013038 382803268 911973857 837555870 936368452 66374802 880011577 823941592 947520532 326257466 990093941 673466199 809445812 409544550 702745687 196075171 980569179 158629305 262391637 171226457 898335102 241691556 287545761 259461826 795408943 338317966 511738805 158933728 714171651 362425848 695761426 437473586 930565417 13753501 871226032 730553730 787445185 48158831 868452708 664443922 668176305 568234066 851078467 535325543 588529108 79206330 105249158 82331371 816911355 121543100 521055438 506614532 674980334 582276789 936368452 105387460 173500651 4386079 402216847 316988594 395361874 174265839 826365856 714036682 979370110 923767267 980952681 823162460 964311816 141435641 322799493 282616390 613509996 564007766 607116703 319566086 945013292 15952370 905517164 783740162 809514945 755141971 798300020 257730307 745079975 375358144 551584455 332453866 998479992 819091476 997826956 622095072 964610122 175685445 737908253 68719667 351998141 260348821 955505036 670488978 817012503 567849507 994351924 387842924 618552393 362024999 650003978 297614478 498167286 302122086 569204108 219993409 652667702 28391057 480339453 194023917 278702430 179989235 367391038 229340981 391354606 349276865 676157468 550829839 848841250 48150436 85136209 47980668 450075897 164696189 217820250 121945714 130629159 115972548 686595466 194203343 211437478 135366170 392504304 118671967 933083913 875525124 910128307 798662268 927084458 497124088 773982190 492662632 764024765 501778849 783088291 303034796 417524209 243055301 479455305 132009919 244300186 213168321 641825502 504373526 562963066 168425091 970433648 463300750 680411362 556163168 821209483 192770228 280293518 68610177 704309447 477792658 604409493 82456806 571249439 99415966 886771922 173052705 685639105 53651725 392264771 37835330 512448351 177728170 960829691 440537241 756866069 49325238 75584576 72738393 752793179 562061155 883115406 814605246 928572051 571968784 828052842 584062179 727547114 661519276 961033979 338806780 711111179 451127729 909970195 673314859 946676261 684534614 930583206 623229507 901067893 873168809 890863355 538080176 601841715 562705605 705340608 170804143 828948699 368526063 995120855 607022618 635277383 439446933 878014643 75541522 185211229 108005792 887400758 410762960 464768742 87701277 433270708 303010807 940834229 679716018 869874910 579804306 691550952 223045477 239091989 215704050 753027744 579943140 731615778 221057953 515945952 401807946 483911466 368260952 608028306 292434895 830243767 751139512 787566525 226852798 572261784 89176942 109255632 98875584 616425069 603873262 951712715 334833033 894714344 799240377 847935173 843173457 884427718 395771179 878666096 767642772 909024168 736896827 960790205 257874163 815294030 327878251 576126249 432465401 933024314 375887327 745899988 364149991 996272188 901837580 951594533 407563510 700369236 342383791 448103246 417488115 722664234 483494810 703125168 318827182 510004216 320216997 451575690 329482929 533795261 50090649 466820101 20210281 249452590 140975316 929350010 398774782 736923888 681661175 981523725 940410437 982681857 932343835 998525195 892460949 966458900 208261900 932718897 361487837 554521443 524463897 598170619 362470465 889670566 234531192 905564159 375203112 438907165 122521128 430826924 192099281 246086669 25131783 652511196 323177231 418836516 154040073 864586278 430097539 821509782 329969247 457880495 110495022 986995632 952500742 970891967 921555483 959144537 927942564 946499586 34580833 838688310 306995878 519183962 142646844 938703051 187998888 872931108 640257794 877762125 209161581 928672672 280093221 552016058 347339553 918451370 722906753 982480365 856732388 871737964 42699003 575795990 547792669 984653401 946026385 954106629 521052304 836886406 232117536 294839911 232915906 716386530 537488361 883941958 8530200 662697726 649921857 747566744 87749055 377275074 343066107 759789373 103486904 754869341 220600430 429864844 17554855 303438828 265177356 779331625 44981462 782629854 101128502 213028087 212367837 891072280 149559704 150863453 108363026 450755517 247659526 967727835 800260337 904663124 373332246 721256853 587809566 915976537 354955176 911161339 482354987 877842922 169571380 354643819 59026892 219076608 99721300 364397073 220032128 667775680 406160791 730777094 427568335 822363224 602673441 862937214 428263575 768342477 767349019 930708761 724719054 756322202 488027807 634772850 178444021 575235887 11900158 783549813 151372013 169279449 141754041 816783037 92304554 241525268 66506546 733731863 356200006 807257707 289927090 972462988 96306016 348785830 169124316 835920454 788583719 829018609 396324769 852235634 24202918 777188599 115179996 681224198 33178970 258051827 104133915 494756429 451260305 512536770 197497959 514767644 287848938 670192357 203839554 520593870 113011492 362978574 277929305 520128387 497807217 806998386 677397355 920030257 918503255 976132228 470296354 622352399 466739455 987031528 920455461 956601587 839749104 949570535 791070498 873888273 761192653 927925194 341369347 481342017 33466758 86638698 70188944 179497787 123165528 774762156 156349647 857277025 48000189 590941216 145550835 600978835 324265660 960209711 419242570 954429493 100190229 112058120 88302394 569751309 235548638 694129394 422071298 920227007 730014945 845702338 264278699 771508054 349578485 898399536 739016274 768212563 713520242 777426824 376050241 407678685 77209933 692083511 559750499 597325134 416458750 533670900 396750674 891606244 836849709 989291925 267194536 982323477 130634145 707814791 209181438 226322576 155053562 522113000 341470759 507120806 57888118 202144462 43344920 616247231 100699078 322748042 10932924 953710455 402052068 550017315 498004854 764496910 547722421 555195580 396772708 679810433 667393106 892723485 53509070 241176769 28899849 407584226 277098159 564664361 200602638 706756140 118687241 178158139 173141574 513832028 230797868 767638809 378083911 492518450 11739190 995494916 964916539 980168410 574587516 972424170 699490832 948102440 44160611 564664081 445398682 532777648 452628278 612245087 236119537 675370320 558546469 611487207 429639861 637435997 29708959 450428981 336683171 644501303 343394449 943576365 73726565 717323206 151255609 682758478 480952657 789324347 626321041 911164953 643329318 869359669 139352426 742148231 482297590 992423105 642894106 887972118 186157163 647146270 285041664 363789158 328511532 341999389 298615601 923810319 326628765 527276210 192565928 301565347 212720486 500013291 102151238 472551747 159113370 416466455 73435686 539984388 62727027 271361569 183681115 671745269 288555908 788143807 57060778 911253136 70593999 503867425 500539510 813698474 24779811 600886897 77804170 485629050 192798372 531163686 200302331 896647934 36855618 312469843 137874563 943854909 874849159 953926434 207850263 232555184 53452143 185524172 45464799 243872435 189987230 779556445 376821186 779603898 323036253 934476216 768377060 828820296 298660356 842171999 827587943 888293147 171181847 738053626 541973798 675352411 456903713 727559026 348127488 988227972 873085077 888125913 353090015 404255953 347644641 354090312 177956450 799242218 251934081 532166421 295829026 690584811 650554888 710665064 243270917 323616245 209493383 470644128 60136311 168769667 53489346 381464919 201043189 486418145 93989094 391771736 80380607 172309050 113785955 510233132 282493105 836680416 380909271 457993874 335535139 965909956 588551471 859431839 309694557 995574645 94715113 709033481 586405042 848484883 522547260 574135899 458692993 597710378 450422623 482561734 149310702 635058681 87052305 282422563 125361844 127322874 102124760 369760059 120648553 189425802 185528592 316731459 138599997 165621943 109543563 144325116 22911726 857320070 752673236 925368800 587938283 749760579 295070244 391235387 87006680 462520789 83282064 836476782 669695121 748622452 409977208 675817879 615400829 951601125 248219109 953174876 104053252 345642773 155343495 263986547 102268587 652336205 555383822 873580193 642903657 872812488 833974122 945090449 573396470 856037796 709378657 893006761 568322149 619167488 468555067 858993520 652423883 988351784 136120476 213754457 185803966 804587145 391528217 509786874 284194995 931500402 763202432 789906415 256812157 603458377 254011625 999530594 296561486 924403010 59999216 731790627 445371930 793912364 646537585 751094541 353244050 755683983 478072085 897765932 36118644 262440333 168947979 378193910 375815522 939557960 233121286 730917385 363542939 490039511 395069354 916306959 160945646 740354240 348251522 891387021 721494039 874057531 220006401 973571197 449445666 938725770 728257676 882735417 233428749 571440214 513310206 641035385 466743239 764815455 569020718 602785219 579464557 826791177 142235773 802637490 406203803 824363648 2231022 760551528 697251061 941214335 120812841 475919568 302228652 760004086 363269774 856153906 183995241 260508749 211297521 280110126 52554776 499076088 174527432 788729839 44176035 427768998 130754536 638267562 554591764 647045630 242016353 924204592 15697330 80262789 5748287 596255243 235102218 928467215 605869484 671499563 364309414 759580505 614746421 943242566 902057978 925181397 31540369 447368002 108851189 763658580 119712513 946701190 742936545 763647568 638684907 997768970 579493015 621686156 507835291 902268984 678113617 965248504 911381277 969188820 490194932 886339548 487345722 693186382 240372343 302645937 260941681 721037993 495150168 613715621 312528690 524408263 290144432 724201210 574166259 588038758 9742940 44401364 2315565 286341724 147603581 711901193 603900674 881575634 634590741 747875595 23445864 731765895 185916245 567664119 246775950 857439578 414199621 565072339 500452168 751696539 619531150 902368428 827797705 950766037 182187293 449114317 372238484 665136420 140983330 659841343 106159313 616908597 477073562 658918843 234862731 629792996 289987635 529446220 97682545 878440067 357855686 480886186 403118078 866908665 65018920 502555020 403505906 493180989 254915804 416613106 23443606 600354306 451824656 748248438 645832593 884947338 508299081 658888085 232201202 849852798 37536126 908830823 759522559 766616749 293522974 720581530 456068060 459389374 314618106 375388907 339352355 477079990 37113650 535819371 170865047 309487782 526511 491709472 105921950 239842199 121361807 651089312 275254224 891514946 334068968 932349336 356562498 955759714 608427188 820692165 588943891 826424847 425437585 809434207 531936259 883030850 351858547 782581893 563744243 781013253 459419424 863533782 548269538 919212067 896710707 944902070 674347948 907338323 372564258 966593227 177668313 549412697 388674432 518526887 45844047 498273112 224425161 724080678 523440876 843231712 565251282 596764816 20788737 427146166 81937983 88045492 5995890 713436777 587081063 614353432 537988534 561996855 178758663 443126720 380437595 846169352 19296868 536839014 478368187 877528513 194965855 452504981 352043442 604320535 509938126 779534603 605228151 863878087 307176686 537606831 188756037 572859646 442264519 598871961 160448461 664192584 197329202 561928441 29213284 370843309 245741136 557768554 91789019 520179555 334027298 881979644 609561406 911785420 337843430 491159442 363686441 531303538 98009289 382504264 309345540 395509961 261651298 813436334 461858123 801979764 397843329 740570715 328300001 606311378 461236181 778767813 186149092 264303183 27224963 255416010 199875 581538738 522225053 714828049 454986213 647473812 38846121 829617545 182249982 606693945 29963436 802849530 304873436 819363829 276282149 500221715 76229892 502411389 241691623 593249109 585304998 765948635 439997919 920047199 836242386 954804691 18165409 877697389 267146645 413711299 390435656 391088647 167087306 184129723 182367544 200141310 166521337 721882900 291283700 606929097 331242389 662346234 315840760 946126565 202891233 290934371 128677411 221781120 128222086 300095054 135045035 942512890 516089012 668546683 421645133 679511041 494425879 937777850 250204308 502953038 55125260 592425265 195759429 610560150 202817537 414449331 405201704 850427687 354806331 680332096 35128640 335432248 145010530 676199263 340872902 421377141 144683593 261948169 227828719 933173768 343515008 592580852 167800845 642638085 507322910 993320339 973398134 990958642 556639105 894672233 319519115 399051333 146704452 643020960 572077257 616623836 247373255 287827541 187581364 360863381 169936031 911461654 63462478 431000056 116726060 283659817 251635975 693757391 645542037 737935212 507830236 576971112 93222781 857295782 318475638 560072639 543425721 872554167 422431249 627530654 365726780 622335703 457307657 463229792 407548241 632584684 511474137 948990789 407214709 638944821 626505528 676852625 263532124 341585911 77281997 320078360 48861578 957380009 72970870 200068961 177040479 888917629 763282129 860047353 376041828 737858657 267291884 337899502 292439203 742421606 552482657 912675049 538972745 730135777 167804680 796600253 739486055 972774819 374115365 418512205 11639533 827386131 764446747 788026756 750502918 942741466 58131000 835946575 107051472 702815873 361265973 396756693 270736998 486597288 33640714 162707600 20231762 632435937 599456002 791738647 305716627 793651664 708921652 993789063 723477453 978357658 335198800 417565882 50707100 508365827 455360136 892399126 202871710 543912314 161997944 611890903 165222942 567570929 319038352 892377177 599076880 638753533 463938490 914837063 665502417 818302393 785037599 915137983 423802494 950993952 148684197 707590671 171961112 370886685 8895891 762464293 641390818 698082911 361917649 555075047 351545548 600235403 457752957 701960254 160453116 735463566 9499317 219366131 47603433 222774069 177724475 735599441 663289612 974273185 935251638 987701309 413814932 844334130 367609527 627850967 379013037 698300044 487706073 945323140 888957354 948614566 99934303 551650021 244050058 654614306 546044558 674574171 26927745 202671208 141678879 235905336 89512799 228268431 54295525 595374833 329246292 914778196 220540685 421213295 216668760 826122764 572224792 710338434 29965773 185465773 94762063 648406211 456937177 909257172 684633029 715739974 164214016 552054448 99871921 289609552 261547649 497464766 287783974 426566116 190464439 881686251 294711891 458799719 394917897 721839406 666790284 678291790 393171711 800005317 192602095 975883181 259845491 673539550 517196953 865585397 835703879 856899025 230653564 561837986 454143005 646410880 564441134 976385179 461014519 708229531 579371714 705600443 603902122 777246865 22313688 176546973 33008096 143952957 45177645 289305465 48553506 135540392 6747620 772559621 552448889 922948706 92281203 606927579 234531531 445375520 314495919 561003540 300733189 782854133 377946829 431366269 228058679 501258818 414335400 980324139 854737380 889525195 718732476 811663493 644054727 908199932 491678940 886615605 537766775 627054343 620818523 963340895 214997150 222572916 171429153 699313142 166374799 272063215 178093788 697850249 69561256 884242956 189508149 857624041 688452219 918012341 533143185 883408016 249662037 838432989 12217527 424622610 120909242 321920369 260607514 277861366 149549706 665427914 328106188 526124387 367842575 945934630 293341217 921200936 250137919 443328726 273109716 332241863 9278628 218783537 127805516 238418824 38627450 752665539 633689873 941167294 820386597 841674522 688717581 806514029 446938563 727299049 394856857 663905185 531000560 794828485 779782460 785447183 741160555 971452538 57611967 429151614 355264228 622332514 488329101 768161039 82384903 653908207 344710726 824189864 499016569 696518127 180558875 571731390 411562326 463898749 192192347 757583690 615985399 707459831 93148286 125869382 57828966 256405928 164621362 195602453 125038599 490374165 158419210 477819365 337627374 912393369 153961887 604672530 226191111 427789433 76726257 838918383 673661927 728780824 642470286 787105414 643822976 675998127 346317360 366092014 327997952 976953084 764710094 779736087 272003382 522031269 443433489 500939185 11457377 295050016 196181019 788140856 610502825 879956447 432133418 677451275 360962447 796997711 193659840 858370678 27005618 992760891 309407693 809777463 499185984 693729672 578460171 685709115 493393133 721919477 449236167 761739715 675442242 867406134 680075541 758428193 313657101 601582967 320508601 507835111 285028491 463525036 50184265 72775678 452488 644561559 589322582 858408534 387518499 472583517 255736696 830892673 127324741 440298050 283113828 289971156 32338375 515843981 416695022 936755788 85714005 512555763 400558261 536664272 469056622 691712623 348960328 984825809 196707422 953682586 453652566 564247042 523110633 865981369 192119216 929379952 491231693 567410566 56680453 655722989 214573598 320684934 32142398 504476786 448284631 917971570 163147027 240266849 169253756 282023030 154892974 738381665 730913975 853178829 172315480 871436601 47348976 599857231 117589927 242140288 157669135 308656993 155197498 686086835 318135700 729310273 63218243 548538663 102976065 658412085 536968241 915067426 612653844 737375060 242212529 323836944 43233397 131779062 37568791 376992474 263301643 933777981 479418366 624978197 105243548 270312672 71110505 309613657 175569137 846609336 268361599 339970722 113227231 867536265 857481380 992606284 42798251 902567002 672045803 869028230 708775932 842048461 320498889 817383156 222205149 226016706 8701395 786354392 321006762 606850559 370071450 919202732 392668692 979664789 965589035 985366660 461473771 542399856 78113379 616719847 265411192 664829944 567801496 902679390 404568661 954830917 81475736 498534599 11044488 425301235 262284293 266813618 162438654 561886527 70075728 391855295 131892990 632466738 615939270 795241430 46599569 851520590 836351794 923637840 240956984 533186907 44866847 822171288 641389918 763001352 137068445 480847349 84127395 502947890 372398783 744671673 526832906 663055759 592815420 687508042 331182697 825129525 339566112 411552624 67443851 563734056 308314194 972425282 538308993 625649331 620856965 906111925 520636594 987187968 92402706 973115962 735070517 986191433 142633097 542084499 510346251 733856592 303186282 796714547 692989781 746292861 611698714 946557369 302124438 994373845 114258196 898649929 10205947 266324095 127208345 731958571 618529667 651959412 349578148 646401486 207337368 837435044 314622631 935591224 175208618 185834122 68453789 593743154 591843741 936438668 633631935 724740925 532831163 597203396 576673139 889562067 526280782 730373247 507627197 945887419 624696872 752517892 702910691 958980008 624473726 881827850 4749591 130174197 117547703 348175806 155570908 464910464 354002338 766033914 7710144 332892582 98278846 944183036 815800582 960061150 308399359 688735170 585232133 767528625 694836787 915195291 865426342 879092821 297007121 930375472 267140853 467362862 223420379 761977899 746177901 990661532 764294399 859973048 693676754 910364692 247936555 945903509 726262032 958757504 703040389 852300188 344711439 635224830 294833988 916864152 37847371 137363200 81608380 400404059 283476993 496204538 284832380 740484745 154147238 269345009 112025805 230408674 367045 620129297 75994424 633286235 569408408 991030397 196726757 308704182 130049399 510712953 505404361 807560512 364135714 918113084 371193944 462146707 383652674 526544630 332802458 713605015 235173311 485388777 83285499 190930277 127405345 136703090 30909920 228472886 86062209 711003600 625246578 762153885 397395957 990272590 889253224 966401002 496272501 771821098 242388959 911583889 720839208 843078078 757635517 987731620 580007741 702948212 556226731 691133550 675850873 827696748 590354978 701470215 380405268 551185654 47771076 932193144 247269689 545994303 407154586 407540318 103300122 785152015 32525769 261231139 98284281 193719328 178440534 870742200 220819986 272345928 14497783 837158547 414385834 718795959 188109638 437109212 142192750 932684158 533242674 878486502 671891661 950535518 277028789 841178775 279503511 517973700 435666840 743471896 628607218 666388629 290887242 984728999 642831390 727386149 621318734 870194633 453765118 906310197 508401684 836945815 132065830 375847518 248747262 855192795 80277941 519850868 364293101 982101861 186400041 322156368 311673283 915012132 93356351 165157655 89605801 310097122 306325234 783283484 646566860 911492340 821044573 950546509 703178011 938570351 28342603 714249767 186120143 632922208 467120120 597172891 447216956 736248599 132272691 357569906 271999615 660072207 638357943 714519749 115427979 546019686 119814337 821866990 12137812 800391883 289441465 415254376 387278488 560770083 371287465 624018610 215660701 416151321 48872843 85897423 45062404 527705707 54144972 238886325 207642651 830544048 697047087 842568929 630368664 659649982 20566496 498887345 309937927 315801400 191731256 201294492 55946489 955876467 666227861 810836043 477605271 665122354 367341859 796618155 366796666 699201326 661011629 845886404 7047169 897800950 132281277 164668377 16067173 666249246 587338285 975896294 69894619 744924105 395513344 763943107 413763551 708412959 572350741 629588055 391543655 910133801 236145636 302403544 274105029 935865824 434271145 650710645 469734655 839659422 27262052 796631840 58685108 349421478 164148954 365521768 276764476 514528153 509775446 679893878 105544139 624818471 99843411 398088362 114346356 382511168 351697294 386979044 259125828 773926757 439430804 743713509 406156260 538280784 115571430 252441579 182116653 952503174 93628705 853348547 391010518 422186704 174401161 645267208 562030991 911202190 805145082 962119354 156654700 570262889 199685099 711556809 398594059 808551078 790443303 927905975 758027512 985053646 208323137 683473203 167190813 480569309 210496851 242096572 200783027 280803123 56116990 561075978 453641664 581762176 175443020 336889293 2200254 992126238 945760145 975444509 383714195 958556793 876981006 878317637 328472043 328769445 283905591 697729753 666471835 771090905 70472974 265654244 248137132 254658690 69676177 755484148 481368766 764421480 92919177 671769844 143033202 980481813 76493864 80388580 42573147 616642317 158948801 943123563 270665915 542617513 486585477 898283250 289236636 869639795 75125134 996240972 216470581 932482304 557093266 652584727 149668252 983873845 694264195 980433758 357691894 621651460 52278006 691371009 259454091 321632272 31080541 411638025 278208928 912423179 91732840 102120178 55681551 326988458 76273913 880627194 254763661 357280342 75841499 563065695 228632184 239716942 106755806 936970708 783810886 817370938 756930650 996339988 62133984 586927774 375774859 465184587 108489547 603982931 589884928 827870954 417045991 907976877 803487048 829221455 550094416 607037583 411986466 825692752 126103100 339947978 196313343 664133247 399892426 723749751 280927132 915993114 249735557 291220505 78345017 149550841 146346122 455260258 104965778 414229438 147985618 581999043 28228503 968864544 179312272 920237726 424982837 643195409 415792190 496545800 58598511 330595456 269356057 423308845 245650803 737809924 432198900 882133713 807534937 879806260 724432557 853876649 724074670 940622235 293482552 650727204 382221641 851341545 824095510 922586475 54812949 473810149 419748539 659820493 358345449 896777627 388593798 598970268 541777368 884928518 858722173 880391432 344137481 736366325 462263663 548300009 6823173 863328994 697354474 799198637 124090060 718717163 38646926 282904708 109792366 264689841 182743884 356836549 297750443 951346761 187089111 921513759 612029503 857508905 663026940 888404821 679206831 816288784 721308967 941499877 236638211 611093468 355123037 780969317 565599707 955685896 168678325 726393377 447514058 927356235 405325551 446584867 388864429 663154626 73718293 663760019 593014751 888725319 264855285 742213918 208804852 793575451 763179087 815697019 93177813 815088861 163624813 799699207 196925528 742381461 374365100 971896310 638330137 741282586 683699186 881680647 829015145 925285134 256284047 479468418 388812372 918672019 81996591 573320370 553637834 996808205 732948509 888315652 861140216 975991051 880890563 914267961 271877574 453131389 23577509 452118497 352854556 721780043 672255103 902416214 311439639 614714857 95425984 204692450 24353313 991207439 97688182 570964405 131350927 998055827 397509160 571812937 490447853 705921440 10373800 682805283 198931661 468025360 307835171 673096343 542815964 775667274 613968593 852299113 330927924 923910184 304554244 826218059 412018761 415875576 244351106 697801524 319939812 825313628 690158116 805935293 448809612 699387222 70257832 255539979 99561445 266415744 111491873 858538432 647203849 830183104 64975162 280038502 251584811 802930659 261516054 880140046 255623726 551214080 493616092 842847145 187711085 455843228 176906595 294286447 13058632 692958775 294513556 678308047 147049126 873704763 270557838 373662221 268720124 994484674 655393231 671383881 524313179 525467894 245204505 512978397 163750163 983025126 500623240 533482220 22156028 923799252 412892546 505826694 356199324 940568653 430011554 929401717 509097873 680604593 397563565 822021279 341750918 975473341 912009011 934772416 788316984 875386421 853849275 901748777 632216862 678244250 235731504 536409711 392782716 634111014 150742793 806759628 575176388 765574486 368495596 831169745 780278906 788316144 771038082 940278555 423900015 992943894 347868645 836389107 547037431 732481342 70801710 344797765 109893885 683019920 530719459 740523248 379568775 526619339 58787561 762993981 280794607 409290290 170263257 373590134 352671536 945846034 833723409 845259233 397359203 953407195 738592640 762806659 382621361 821050697 357830445 705261825 31650973 600112150 84937801 119891460 98448036 786477487 120083586 630442357 402053373 774811366 130587667 455353033 185315192 268879837 198470297 662262897 364362575 940104952 714148608 745875110 513308912 765994679 206910356 391634943 388590272 660356182 169302426 860222917 293294929 401952756 197312540 252297279 235405684 270178251 18965293 473037231 288040854 525389211 254756015 631489796 534894531 975244985 942805549 948244450 775729155 783901681 222645227 569553597 428765870 802955749 602713794 720350326 213735474 309995575 290743204 594828628 308503765 747721154 711110580 944991482 178112234 198962297 65287730 168157547 124339517 297629438 113966271 909610340 343209361 590114080 57733154 445700332 341211975 769843424 270467551 844458490 628776756 977602274 31150282 855707916 224375119 703905898 227967477 257000123 70871611 558257971 471361719 944543958 898431653 930295323 262189324 951296620 190520730 612382222 497507313 561222410 175484904 491977975 345667092 356731190 302719763 319017231 207483792 904290617 361882154 398749067 219450394 473316334 235163475 295335606 191546533 684465462 300013079 332802303 226912327 693324927 268740106 629297150 60433365 107338010 17801101 461199264 346744803 360019955 174988501 515384736 270978542 993611854 471283359 525820536 364793636 412971525 226085426 625390335 567558829 887967385 316872557 606505477 469274413 965648939 763327038 803946193 785648933 920629052 648162514 920841601 542736180 875499958 483718699 618946446 12799451 464340467 318332323 840210187 360698200 951913488 290000251 944280661 687760025 719818305 497550200 807864456 290764540 473091632 130888037 315505567 221561302 764901861 508602474 952959572 318306874 637320597 538541988 709362512 365152211 713785480 458854777 821855730 366446518 371514291 146314866 661795897 604680412 927744022 849040569 864924860 848919609 890297757 128575916 272781247 27751346 214903125 22843366 522409990 468484077 607455955 100245565 875841386 434850859 713083507 64455445 997014532 14522654 752329784 543060808 627850328 46486101 49828893 1705708 692098118 617268942 840879412 782039869 902424801 675272143 727212576 619726226 753361332 701878911 794629982 70949990 319875095 212566234 220856663 148578618 490190257 475473083 556319975 322257386 368576084 228053318 461263681 85238808 838132383 831925053 967558502 248801889 617971838 353415110 753298398 515714351 923278047 156191076 662349897 236031735 550152935 402192635 704928034 88604249 437387498 421571419 753932168 456126999 787855748 637416004 665781568 581461066 881880590 196772029 614883811 585513583 731333699 98207813 144945368 144051999 877580822 307914706 708718031 428716375 854711055 854207713 950486897 550515855 754063873 558194201 920816415 695129748 758096902 719972277 790177494 52346893 672947951 103881136 605774585 104112168 962326110 255642451 863466105 39074162 930704182 837455085 980941830 41293430 122044752 32999394 354023233 195342325 195994424 62095708 386197251 90373905 255923408 21132961 540587607 394529054 892458388 349602528 835551296 809744154 876242237 818859771 971195368 390049973 843999237 178470654 929468116 901062841 990913589 122293462 636873742 237522083 762997423 61753464 854034331 607543290 852780816 553163297 737977859 108233917 352244357 33187985 850008571 761813954 977161159 899299554 920490875 612281618 960327967 400818863 883306605 269801612 373200692 276389719 301731838 52705816 248502965 141105928 442493712 365655288 577220975 111403954 127180336 84163899 460550576 201263616 920431194 379793109 819695739 491992895 767331161 192278875 383503139 348006965 585574625 517561603 682857605 348897766 917223988 766699761 840373791 56889831 720820000 619776302 705033523 210350756 996082647 71806575 915412575 901915992 975942043 948924546 961581255 549895026 792409213 256628895 478908847 433639759 775951389 411635655 626219512 569669968 687508538 583727152 718966472 576315378 972788527 196722043 817342183 89781139 655704991 509219532 847327744 398107315 948046124 473197463 508389286 53871809 388784971 108349585 533003023 274077376 887390477 525724368 808882836 793539602 899472614 701206855 831351825 648584370 650052678 548931848 833139851 205172292 372243732 103765148 539788085 246604830 336588172 181064324 560524152 478079515 782489832 442103916 671209346 21979911 827001592 109654023 120961802 112849158 366236553 192716065 433847500 278838925 348545402 297030634 888785295 882575673 930598443 569044255 641248139 446591810 496472403 282081544 568283864 63570787 911795070 408172061 632091387 166185496 887072050 557189535 599588392 144910409 485684517 317482094 396866634 155489786 446698318 328446459 469347103 426448978 845686959 218352384 419244781 292092099 567708649 339511017 647661362 475314448 764383550 711747675 813221028 541452259 877124257 324744442 835033947 204641090 737855336 221707049 380955798 194813822 809928689 433507093 957444305 198453648 648820916 399282832 616886742 362217593 838398891 626480452 737567671 456738776 899197136 551219709 739383547 284989083 484062940 359342172 889413270 572697899 646496018 260238321 791755759 30941608 455736991 70419923 679745130 498877329 650398467 363986394 982363976 524676885 646384690 32800525 460914550 363218468 910825230 444025765 778762170 519251869 571873241 433127915 709776982 99476635 448730732 410709655 643464680 230195096 973331491 656846370 715409485 608407851 751593847 483254159 837339913 17481074 306678212 226111126 629040995 445651984 721224305 655373180 889888644 843380671 891011813 522048214 966930480 181077555 399137580 177815567 617872956 284521557 317131423 163410706 241566504 156912458 682762717 261328415 699496283 481669569 754373795 234020627 936742807 87416380 237777162 188930522 633936834 97737854 486120542 84751318 897022151 66900413 74206372 49191656 572873498 279650634 993705939 311553455 990758457 757706534 867946954 756281501 822140895 146688117 645120925 108520136 202113429 168738560 778365654 184165144 559805088 542369064 637919656 112300854 382989775 221119305 999768103 815596871 881070091 36812871 45207499 2792424 118892309 80164518 748972687 26354417 643207861 234127292 281442126 107316254 761339838 426941754 491172596 147494018 596631718 237112884 888198591 390681969 478294342 268212695 946023253 438711694 933198886 582609096 843388520 697962808 772024528 491001894 986569867 100243211 358205567 185327541 234893511 46878586 767557365 352064013 951576958 855765038 963478621 763347684 909308493 397982042 850179786 341430490 364048779 301824950 849651753 807211387 923547110 297469592 432446257 235484110 752668098 14521145 273771263 38244388 681827861 391332778 658546477 390274605 492539546 316038728 484590683 132354212 633942657 172305537 592528516 272296536 919875611 886061212 923021285 294342072 694771881 128741756 772645160 598039577 677692047 230050889 767625404 670584181 886124698 771256025 811303100 336989873 353207468 301929618 327043965 291923249 663986609 86432624 328474945 311821363 595400887 464111883 602260247 601136782 922818936 694966772 823793324 692775920 705642317 582955627 768920767 330164224 457096278 226684874 346097858 231808955 979543462 677817215 753836128 212270240 731990506 17518819 263308421 78778118 708798565 282979837 994571608 230731394 655521013 644894278 954447363 275374069 285431735 4802053 605789466 229897323 707866227 624204897 702661557 181082289 215987732 15917100 616708571 135001956 738665428 544191806 841127555 165332760 669129396 277069109 489723192 239668925 463624514 451041430 687032672 355337664 361667283 72422365 353203106 22521163 867064072 519014030 676588303 400334197 712307834 227279733 707900999 18493039 191235730 133686792 393047024 20618647 522533144 334853766 659264225 376431027 418111146 393773658 791058128 723732234 738158235 659174979 889604438 240309282 716376969 279907190 941419574 637814792 774273870 26621404 450863615 53000117 114388459 29370767 607822171 519899894 948438827 355394793 640854445 96687838 997339672 446721749 707676613 670019218 937150747 696563901 919534062 422239831 690753692 411557992 422543310 22689335 430097657 80685095 226197835 164578016 183587960 156206674 437625926 333971909 426716586 331977304 361751895 107407281 876311395 109679828 468759878 264050227 942772289 461444302 985037437 857224364 952437315 267812224 871202916 177871596 310647880 188294161 304713735 203613611 321012611 73828896 721016365 389940461 547049788 493492776 655288945 252941062 681349404 57392874 194897974 187969043 655065549 205675404 540709359 508089247 659948355 407458292 688886170 234484319 393412936 314734253 912661821 85890785 889224405 219996822 579918371 419850505 855065951 821677112 938593884 889273155 938987437 371331145 892394334 455170042 578524032 208504623 721202308 545377201 562419246 36623436 686226873 134074059 586998017 211215253 593334101 443637606 730450335 369516590 851301287 536698365 813282148 48537146 188043780 14121743 518850484 178689044 996088782 4666045 683185943 70574367 721616663 273281258 867304595 10570406 15050313 1119176 153162248 76917737 490572891 304143973 573599601 29815522 606081320 106456009 959630235 320555740 681281406 502260610 854163716 66546885 536108000 527868213 680722353 183086818 806847745 589852327 995414803 522960303 780110535 368614738 947015620 281630479 294547489 165449146 917855748 386059041 523745702 395491017 536154937 94254740 610102259 454600302 831158484 37817423 843895450 615598185 893834139 707281279 914129305 628350670 879665696 765807845 970993746 574425747 885343910 755973768 797375749 163947283 194816358 13297141 433008382 424607354 609513280 182687331 936180936 206697473 332253191 272817849 803577111 572501327 594080675 518952327 670484769 515974590 898728576 273257574 946841592 176274792 876174264 617916370 757517591 743382473 892328607 461919227 710175316 383954968 758689864 61717360 681738450 582545001 882188030 795870974 906548580 271692217 311614939 158611496 478761511 116277734 498322787 253743205 754280495 444129965 723850588 510084864 735330652 198559759 566680049 484200388 637091583 229177119 974874465 782681590 924896315 101447763 850550684 657563001 757820063 626009998 717377050 284650137 975731547 54842476 138856227 91535731 618878684 192050788 970523166 278302721 301812214 68760531 332698229 191075036 391124747 137147840 289791941 269616197 730203996 623196398 891647951 645124428 990248314 699359673 904557397 164019946 983630197 180489624 626995886 426951578 568270453 501293656 697414911 298564519 528719372 401211667 802580846 300258355 645991592 30845145 519192562 330779383 909618980 185712310 983846073 689812052 822717439 491253605 767056939 21954237 889136341 514605637 933395155 44824500 216089744 214540705 805223893 430747880 874399626 105780503 585361694 459767821 922512603 280904403 634325229 620982832 642311434 332900365 769803280 246937851 313426637 71147214 887209603 687536512 824390413 60364164 372465952 54104122 437805680 46413603 580794112 339236535 798790653 453064212 486498728 361171171 990325736 403793795 813020209 144207767 239432228 186826276 295370940 17564452 259762438 128382596 172213238 16580503 703840907 262629739 984753463 761285002 811288055 795715204 975222999 360778643 728202259 506954061 570701725 132666304 622790911 515908788 898771528 623574094 637282576 8411331 868219962 736752315 764166001 176078740 280930733 37460444 581844182 562325367 674985282 415945259 801779881 36122061 303028408 67157480 519124486 256648238 862065080 832771173 990484998 612551949 615472169 103492993 939583646 313936458 656886510 73427083 218828716 106313840 942639104 626242227 653993193 17056444 789064445 672992796 689838719 587761022 693241369 278397428 970392452 374656636 954064982 379952460 971184693 530131377 609368531 82434733 381806734 144613916 441438298 7935609 903005640 484008541 935561822 522779730 831638342 586820036 898193279 614661217 969574169 47692389 638459781 448611930 981564482 784408729 884464295 653024172 660726542 590504916 736096923 23503038 877971341 228250390 444283272 87703392 765930303 612509259 744591399 744293837 999603558 933094853 934968145 698628402 871025795 51629390 86697171 8210327 426162480 78377339 862334077 159951697 776989594 561779651 606715826 259492505 747402257 108951764 342628126 184884881 736982321 310119824 771517503 443926940 762489636 419795710 646736331 36108320 67566391 10711356 652239955 442241393 497714107 364572503 365292941 25535769 137072718 121993781 249856350 186020383 524570293 480395820 491776980 268494066 300741354 78485597 702470917 666004986 771805955 648099429 849487078 15902605 717273058 439639775 935973219 631279287 754075395 657190459 919035381 553675841 809733951 722028892 851710358 533435625 989913398 938796732 941835289 168192425 537541981 194071713 779721049 684620371 932117922 331648985 973499436 889710602 955345062 76563912 914725260 906387460 982953219 846790021 859641657 333935848 990324961 765835360 901141888 61150426 394468983 49212807 800982437 649644568 709491997 82786539 680756991 659691805 850410588 723931579 739242132 437946268 671062864 620839547 656432347 464096147 717172354 72712294 955122368 388188463 482929383 150444234 605769059 289107125 540322408 167457316 167936368 122180370 553914176 349400529 783070132 54487884 577482312 466676691 758798427 650768565 978444627 340671272 812834567 260642809 618500099 495376029 965015771 277426430 560968061 412062157 749659720 638633178 701989925 44782546 989906394 12580614 627432276 580979774 738691854 133776768 346424946 207371897 496742716 419088833 537225873 421789515 652740519 606995275 637079821 304216432 704714936 27980661 830350940 332653280 479189115 391501865 481312966 285176691 684479103 270859116 531323340 404946288 845859492 502982226 640188685 31840212 101573765 72779709 761246856 356225221 596693032 1727166 537722393 478583762 897204203 463275500 670157981 257354127 805779627 142039317 153926524 26455928 795716414 721810479 813526090 40365161 146973140 90831147 852391153 750879752 870268358 218242948 924122007 508992313 843062371 633257033 967512901 223849806 322213629 56162994 800836443 739907100 778560007 690455965 921142587 840128204 857262356 728751753 908262433 477308974 882936352 323934663 529022703 500968760 805885594 694801633 902019328 298569557 494472836 466435787 666949652 80742931 710532649 197567050 401082746 90742321 437325281 111036886 975467634 395561606 766026919 370983342 681682074 501876925 657908381 58587972 923143129 441152946 879556521 605833065 823112086 435593715 662362688 304389463 832728892 405520130 903518903 177172106 393523384 254648392 691187235 479744241 797546453 2787354 562230892 144265653 190618012 74946306 966152229 217006372 762986037 367322926 497490013 357679142 496408337 42176213 639029541 351460655 496799717 407018674 851761651 50138106 878896734 631048513 996946256 139779961 770951531 711826833 960306248 847897886 873586239 634745208 874590633 739557986 762195417 573228129 928486830 527055842 532313579 305794322 676169514 609128473 962296798 262926131 621617379 425373376 873972428 768073545 939750849 612928228 973691844 549316110 688640394 176730280 254513469 137275409 595035736 452674957 726690191 219484140 239624756 148288042 462582529 296149802 817602437 643195161 829121849 592125398 724776776 55341457 272834289 123164938 702766632 115667580 852731146 392759995 477437621 182283550 184610227 6071689 838214725 319850099 907645056 484954803 580333645 443568967 776411636 266324446 318860822 293843516 513138862 46121801 824513908 349145872 555358113 274745603 655247493 301339646 711195951 695901462 853699559 229518374 425239960 180827421 591327157 227270827 593953843 311538799 314589013 51271002 786344239 54242813 108219675 94562945 439903234 242090308 834935645 785052280 995101592 71507503 927113220 119434046 952077227 142165849 564938653 902118 79314048 53374257 914202347 737465854 896539034 138806932 996137213 547888370 859291838 171855520 377689768 92203322 450460070 272152288 722987923 344928533 368811732 54126276 213819286 40167332 146811569 125592758 891684775 213218648 872789044 774657969 898860422 11272521 667011901 93280192 976693522 105597734 632447137 24426151 70770044 42751966 384792600 358307818 838578666 803921011 924516286 827552769 958402263 128683592 155290755 49798351 739235679 172072052 504872323 461608420 539679245 424626165 798809173 685538875 845814236 747316508 877266277 365228630 933396929 126939465 563732931 563052758 942873470 708541112 837942671 758245125 925696219 751735571 877556283 118282965 588295773 294151156 463075038 374876375 728525151 259404553 882973714 433333553 441982315 320598419 801907707 342899778 455629469 155968426 239985927 67815620 938978239 212434486 313750875 183749332 369290553 26942716 404281063 108434246 321371070 281229193 390288626 166447547 880435528 871066991 884382822 169297624 996250415 842999964 971707391 574161760 621818432 290672030 816702599 640684483 842090420 617054487 737501923 222617508 581509463 115352832 251973898 133779653 502657962 384638005 756587150 48371944 566244283 459864329 506034070 258129766 779263652 537462177 825353186 701572294 815431225 45411342 307220728 61514407 125184739 120168746 608264950 558346711 935298742 826023690 900576734 171778968 192307128 117384914 267323607 176057734 557432037 515436367 964808278 852620089 963035795 473685235 686923050 152549412 494755248 410639253 557519948 393731822 776477414 144404143 453067602 416185377 856389209 413859522 468064088 369673343 765071804 713483033 936092037 894897387 989423817 648356067 951162719 939524027 994665429 782267164 847833495 46903954 463928294 12985457 21776063 14720467 178876566 15682385 33876942 6580731 903887141 214745833 442133482 236107383 855296958 188748394 405728659 241771074 726551095 602256913 916348172 854961523 922661317 233929597 445818763 101481309 961566959 510153351 909009889 484417874 991506898 875091069 995194669 876961099 919189664 458747855 950173877 461505833 981178911 90039307 584174111 484482531 570092187 408175583 956421195 906742087 923209867 801846546 896984583 66006497 889079513 819433086 854946774 447187407 782577597 43558338 847223460 519571843 589677504 453567096 675466082 643065090 814121359 27146184 851445634 585471523 630135384 511489155 758693870 593717072 897363360 3109897 119450995 107503293 293165492 276281768 551366076 529367771 588686774 253191443 351934593 8047396 981386692 798701409 867313535 796711016 978540454 635267668 688545393 325572915 447953082 276646723 644088448 150264885 332209541 282758214 503262335 425458085 912828188 860792024 948800444 185104530 620151659 223898195 366495687 229477374 325235638 16546930 815852660 7983476 644310585 530289067 662826021 178161191 587190557 484263691 802272358 270891317 493824697 154920951 711006473 330790568 638775357 256650340 689722062 573127001 854394041 330136618 881372098 860396549 905110122 801430171 864619464 215329485 878572097 478334986 695514964 437373133 482456693 149031741 756670198 308294010 779135394 449781466 620810817 138400816 966145499 419425942 632146277 439841320 484482601 97174697 848803863 490351910 833456889 604057074 801557111 410495691 924461529 371412742 969964206 918308008 938232198 936204029 981771847 735655152 823346950 21230687 269184965 124586363 210264772 132530231 133720138 119676887 455893783 143116913 718529842 598188867 772533936 456136421 519279500 349581644 670274321 4036563 619288906 610181884 711002737 670222328 725266630 81055894 982585730 278303932 897156156 329394126 731495796 229538881 731553538 545448625 654782579 376026910 479220438 457449393 471167970 3050453 44260393 38704169 410753987 375499398 508990894 140731430 561168505 513534077 884283519 277808171 755185938 671363433 703991435 588176960 608504511 449815700 499568730 424701674 730498607 603336833 659809840 369769805 739183895 266744792 349816382 298898398 452748370 410720739 535454132 312707392 435570605 10407120 318895578 263602362 556125429 131387980 596811874 466971221 846763927 505736690 728251775 413987482 512172769 253781725 857549540 572676421 829970879 438660761 442863114 365337578 906338835 743381609 896795029 706414052 983789818 296645808 297818018 220440586 873929636 205907838 591280354 296203344 521247580 161561394 842756062 598819336 865886579 15970916 507380725 47609589 558302785 394856004 937071677 357592785 620087055 28416089 426385428 201521553 643638892 350875896 485546764 180769576 849288663 447973584 754817418 200112867 339747195 24296832 395637175 324679733 459797834 124640951 677722506 277371177 320307094 317143366 572704687 131314171 152743254 47615464 802901298 764221413 807223640 404155490 862780845 632724408 779071340 152940023 945114370 736217842 786242735 104133609 437244635 213698189 498381168 76197531 546926505 106204520 970765822 455429857 892705672 259456678 590415168 547766571 923480591 398842870 823360545 611417306 773270870 598385784 875900251 635952331 888402615 395022916 474076100 166028478 461122467 449202124 515236164 182074098 765672738 27166467 168978249 83092578 377438433 225087806 886767763 465252268 494147371 17304776 633563261 578740414 850777236 536521670 949554852 340818897 741604317 91706344 191028804 102358058 528929926 417116511 508607217 462909374 645238922 9842064 280008654 63045532 875014603 173300776 389112235 352570532 739288097 187151978 390599300 263913067 553300654 513763513 693018579 648186574 938582347 671702034 754383216 318092262 695290058 268490355 835445276 574799446 626743265 308281374 623559765 47721235 820944607 798850632 936348886 820967495 903743842 204563050 399389937 121747381 621729138 64173153 493735724 61206536 613675993 48288647 630660860 611981064 675386844 26113723 909636671 293612867 863578257 228429130 721393385 680497407 929113405 775159607 863406670 311353609 755072395 505018961 687069341 67916984 359497180 326517756 745591886 136359731 944570625 751342251 977812145 405697858 692558869 351199858 984469192 197214773 653918402 261467376 781130521 299587038 929050436 266606587 484659950 48261039 834315220 650540248 916964196 70708696 313841613 285691434 843587496 650101931 898654522 254913820 299021851 44434148 888531864 650850021 860872131 675207643 851367829 74922891 725299551 631235702 839133961 40694979 492161523 411657303 676691214 504376011 588549672 364954009 566788974 37690441 345473410 132946665 181480982 94473154 670034272 469974924 804095565 507000163 529395748 133496830 601158112 506322440 731839571 383577405 898243042 473010120 562149630 29996808 999575216 569582518 790366328 426139385 952968192 528167291 887100678 439999700 677276891 518503441 571006540 88511304 728343592 212171124 831164140 473622549 643532760 42925111 347298877 5381424 147201013 1898021 489611265 58915016 175371902 101799746 286583878 165228811 525878819 114012093 848475574 332712869 540981739 453849709 763337657 442720635 651593766 399343271 864398324 588016387 994734949 714437164 863928340 553987084 959685797 724790205 927728093 660888106 669614270 160933150 389887441 75730014 442301336 345606445 691137931 182201220 485466749 89357766 694332961 546536742 877987533 547276591 702942387 156260006 369522316 15384093 356450981 341822196 866764498 262346414 417478533 64634187 190213706 34165843 924961685 164359790 693178143 34767849 764923321 545481484 855617434 556894745 755487585 390025091 543622482 173127129 658421808 555162141 858815098 27525604 302797577 176870874 865090052 825477178 996686122 566600664 845114011 511616861 815716288 113903376 815357685 591893824 858923065 3623405 404117437 268946995 336238601 82513505 691807906 160789845 908484826 508711614 653439531 271348628 516399558 300374950 459265003 252909964 272835384 214155200 449976931 87161064 566705204 249179706 457062136 1957967 449795915 302178497 990023748 122307380 258156431 157744738 237318679 220570713 262903536 161793474 282256925 14916231 70240663 17639328 930409379 472366788 944928023 26978813 753935569 436919710 764489129 233067628 796141948 722472544 977556434 40226315 827128478 458340958 864490151 780857235 981242526 784218522 810647129 268844929 559574423 104754339 392763382 157576905 191260089 151740559 274468908 96998348 557108287 531218641 887112642 250972401 303775905 148543113 895277005 509860130 517374941 425583027 596480895 454879847 608487804 499892117 729415749 237538498 856052515 634012853 917091276 504170492 923365665 616762552 981702385 829551482 967347894 786444493 918260795 594707920 742845024 145585798 386396599 157255885 392804702 288658194 320643850 58817324 125958081 124484025 693788013 416664380 690667697 215292824 758381765 38364588 875690464 494475360 564638831 195024912 890060631 437191632 695885025 148445236 161938934 121443716 340599552 256892816 831094323 705376345 740332273 549313528 668998001 391612553 709928163 203714462 474875257 357508535 814924630 329481474 679145355 523425651 873814154 640182823 866483098 240095340 591550840 329719600 582657819 502888577 761322099 677922133 852976737 851863374 952973889 406733853 501236913 252222770 272466139 204769405 805321106 325826518 863859627 512965060 708403630 345995754 888086267 115253907 450257494 108694166 972362501 349161589 501920051 98223996 214945834 71084065 353009222 159149639 309814928 185236393 710925119 81386460 486192153 341163029 434337177 150611367 851648594 90197922 717951356 570001490 893622588 367982729 971475811 11464223 602532257 430174058 608550889 35999727 608453179 238792211 522083211 504367561 646489460 357126315 735340952 233245125 849324424 193356629 337714955 2449649 587582897 386259770 395923556 21191467 559220702 473790741 891080376 95918916 617387261 559549085 981765291 541359007 689050835 344685881 825486008 409971306 885586584 565439119 978142561 541527284 896704055 496892236 672318512 358386027 699958360 65079071 582079449 106836333 659919334 371913575 728290817 95437139 234076291 70899644 904132772 811052229 965640006 429887811 785340222 47179757 533302485 485265176 946661487 870994649 907083277 345799411 837344571 732449176 889658217 650633621 829351186 690872827 774970327 623190234 750630859 484584906 490548843 468857013 748389130 99845577 613154958 190048464 807719979 775744206 850896623 12074526 873616732 305630833 369433044 306144793 641076381 327599914 843713296 239334929 299189591 79982862 600574081 573028869 650343976 601162554 973655844 608579413 771571657 281821945 616457381 177006890 943140251 840555907 955298445 876628727 992791480 116707021 845892096 304956217 621184216 104560420 734559573 334510878 937004369 243935162 429376095 33626717 173092224 168718024 540509386 154564608 433384525 56780739 806014151 740854115 915305600 862050627 875788604 292071659 771818105 92925214 277189380 252150319 574227925 127626575 507508743 333546785 755303435 644732683 886189161 197549701 710982062 269466797 373428558 106264309 729030301 431697666 733971847 588820967 925556628 629201332 853088213 732913737 926718418 263253187 572207153 538243184 674084991 635521431 938475000 508070512 690449049 155489237 293003414 107646662 164501834 22682640 605972174 95282209 377635663 274197590 496122877 295025236 602529560 580093569 971929962 68565328 264439482 216061007 832996732 51111584 615381281 97874483 948118918 281664877 858377758 349823836 948021514 636532925 889733090 224408484 753955966 62223437 435169479 384911408 470424981 58391466 714420823 501967183 537463611 437399264 791966807 381582366 585766466 63778654 511047540 67185964 351609341 231940590 788923980 594162507 705602442 241316985 576087863 218403525 856010907 72442518 553629552 107109031 683365351 8787212 613291971 546843306 611742679 35898405 754316328 251342291 503127348 343371179 925110283 746609062 802690208 729121927 992165986 124550002 945457568 912372570 941899505 579992209 703307730 226666704 229304590 11231735 411255555 391010132 895690071 459216978 845265544 98160245 148503668 97476552 598216651 209947083 816189255 214671958 844029076 555356081 636578051 629783526 724677475 110209440 891249415 244896629 628503361 514001314 851627125 705197398 990573026 688614871 929310749 65469655 715622857 317955664 755564294 699484677 966840514 449287983 450339532 150270828 620993980 449682227 638226244 52548676 378618269 8602918 646533802 13759963 182408638 58411783 865263171 97536792 804670459 418059393 872228604 103302989 916018885 209589838 623176234 280447426 607650790 13905458 288425510 429251 129968025 124755794 479785973 363957279 414394225 18610153 618418919 333125209 541165101 526283161 913152651 110245879 144776326 89532398 851103573 777832805 994916393 582280129 795104922 411634690 473069649 65433005 99743185 19966143 678544086 293070612 980597743 656092094 747089435 99418885 869359689 449815837 670507497 453025434 455491909 61156066 568134978 156924596 405396633 245288821 822301998 488875694 590419615 538370761 707844894 597908803 824524887 428102063 921854217 570459164 672401224 416352079 858047810 399744838 954733163 400508118 641394739 398864479 714406593 623644119 833933801 730577768 821993503 535464162 705305238 471376567 756480377 587792921 715431469 445499387 759310624 11431379 497127784 237683679 278718813 264969359 378116773 313120857 725375695 151056119 396909177 57988773 228227445 189026402 976066902 101690525 193223807 160617448 860564344 214836387 825235414 617045766 716347903 503627333 912633797 391878097 875101781 163788366 305603189 81669375 220222742 108254526 666810109 17232507 391029233 26136967 36358215 362643 640328558 385092311 933619351 532016375 775052329 181741710 197250667 117256656 290212796 123042946 628042051 87641296 605532458 286043950 940324769 181455579 473234237 95205552 628564235 430275261 824145036 33032511 528656413 473020253 607940959 94150805 333800538 210594297 570507514 500609890 647895664 580298685 840524350 623655760 658001391 198657069 561529852 483251365 651911079 60803229 670979557 289081542 386523433 292720506 495154485 64580853 972093654 929877435 985817209 14692959 764766732 708812540 941638483 661809623 802166335 5783684 797560211 168365328 865944506 174040743 881691027 284389379 823639360 201538609 589753887 531641033 595854097 159107086 485272467 317609433 979003670 338302962 933884158 461209824 699231287 438185481 562832623 46550063 616527553 449649798 659745307 454029605 710403081 25363602 845405359 8035342 127027290 68036258 397684769 13886107 132826887 11166523 159361985 129771125 672862981 582014844 921806198 613535614 652303975 396517975 943098866 339470946 475197116 286919782 308369622 50703312 934727525 813307335 929768741 621920162 692096089 46745765 54728157 44207651 955488053 514597892 619151798 60453035 337264154 176209081 908028597 890830993 995425262 489276638 773884828 30080695 971010180 671658968 931464237 830518430 974128570 414108539 758099237 91014387 322379964 289375667 681511337 578200232 631489553 293488758 609448236 337519722 453201650 299399182 637977810 12784366 263397824 204982616 892806706 495499472 730229553 181189967 405958332 144852932 899697548 91947687 540064946 400174323 530158472 158348949 304012875 243742096 957813026 495166648 846431322 366319451 562976179 109862403 706567981 158506401 599121366 211384025 811555270 347931446 940258345 876146285 949912305 494572491 910158214 381054850 889162999 114717583 495180090 401308922 872950478 721879 903250472 805809094 980421277 176664914 386298885 181978707 307647056 29912697 139289489 40266008 628906196 369459385 857468753 579438350 859571137 788113742 936173265 280553232 315791066 182998886 246574988 31870406 382081054 214226930 235582110 46061695 765343522 72165304 139004266 118574792 168470188 140827797 145754723 26716002 594213198 56332798 290486181 174060222 352330111 78672011 379647152 10076691 356828404 200435955 814594146 568721118 930910723 514207895 984076282 133582119 269360274 134324299 600650013 484036412 717023428 609279378 948303208 804394813 997617373 699818218 882822791 814848015 861653272 333991952 546041621 499104709 681931968 508140830 919057843 688424816 865720474 832995849 956487164 223837009 813642594 658295909 887839597 421605736 884334311 258597046 513097823 346111964 585463661 554901413 631400262 51740531 107789714 24083563 548119156 471445842 961421716 824765248 938272449 882602492 928064585 635218328 868609795 465533215 774483370 510915108 644986419 17026052 652903772 364973704 415217854 378030695 752035233 44173185 218930060 8221039 219070966 100718264 304742551 272322500 563619777 141932397 682901156 353709796 638912634 406269486 834581152 675145433 884938255 426570100 721894540 571106347 782189776 383186535 958192461 55517253 827905606 256953203 579391098 32392664 385845403 363285205 518282832 475220517 831343676 631409505 763621110 224711902 897593043 416897134 783481949 3219086 713508935 27331184 866148997 534095022 566809417 555973332 773244414 195755971 725146978 454344121 891183373 480407735 509620722 319284134 463839744 195318786 779149119 716789270 835838023 477564576 654035404 353257534 629536828 466642490 594747788 18742786 949338672 75132662 553963168 289524903 844734388 237634317 597184425 346156013 564466825 411699617 799453487 323008904 793311432 226971294 581910759 321095962 959371914 116799849 389999112 99338409 454790792 381314870 808167199 704018588 875910193 1792802 625609676 568722253 660471644 229861619 990865431 877175564 909416923 86124266 450117598 190321302 838529962 47595186 675504516 291510055 728105468 597764648 884537742 135206710 915025847 552008274 691993975 469874093 698650479 297228038 926606214 102227644 170013998 26059225 359369857 39236243 719454535 1933689 407294017 109311973 134769281 114964224 630953254 68796926 134231328 8952633 210875032 110743287 230882911 42426686 652356556 334834931 414754354 7521814 532270893 269779461 987746835 455742114 878156840 683265309 875476145 832478214 875355815 87107674 321959659 26563935 740758824 144712867 318918316 96914882 969707984 461838582 472022269 287611314 560249307 144824465 856472308 440527764 724426781 361006948 943626297 621852445 639794447 609093927 655551003 275761819 622751753 571788615 747876713 20289393 630575443 304106989 419840495 120796849 391060739 249666624 570766073 502458065 597913675 126607854 389725799 228126490 557845219 384538983 859643858 406936385 976581846 533358055 724655259 320560753 808860682 247223813 976706112 654952865 692404962 17310832 812603377 502180750 511733785 14419355 601072343 309083529 597733436 158880610 977308406 566094860 718561655 351359483 768252398 271722479 546945904 81557293 922448107 383195198 829568051 820243839 858722871 133507338 516196712 48518994 841340403 488581734 559377874 210255162 790847725 23675329 725755293 555310377 803232744 146293059 840750353 210750027 820901217 381196735 838843726 507101298 758402426 555127093 675932932 237760745 423763770 60386682 381691176 62243191 98601283 77378000 746424101 585319683 762584719 478616624 782745673 526506602 825209709 283423302 866101484 645140794 942343675 221361606 382583176 259611341 412037784 323024283 873644384 2424868 602802114 577974316 687060241 447971608 451234692 63437853 574378280 373274409 453161068 77167920 264286754 74363451 882948390 74346349 111335734 28891317 916072286 358157826 975333950 786588971 969831652 687642504 948056567 187074524 551884957 389830119 455500512 134190291 765658388 89121456 497012528 356139121 974192180 571339941 829478429 85761073 856403021 371007964 556949520 123373769 452431738 217817186 824072696 821157841 986748305 699053184 708230795 301489047 348495726 253166737 312428167 165735260 897843004 462426406 816372344 468858099 758977789 404615526 832994067 306953451 862008916 847626536 973307486 586394894 807668538 591830928 844380517 205935347 849751945 780161092 903983431 815449912 905375100 673567002 782557983 504803498 883270827 207605664 573877523 339253633 617973643 7660321 611431490 80600018 288427928 249242072 822742452 88410458 110879116 17558971 661997477 561470892 622532595 565010341 938025068 149469567 246073520 40198135 132933878 63928719 455789577 430938126 701124716 574004344 786140795 99117163 722747334 19546106 499214659 460339370 594616642 321895753 519839087 387983584 899136210 306934552 989066178 179850731 613030998 521392651 665893144 383095177 451663052 60797962 846248730 472937477 961576293 341216961 465182182 214480050 275486110 56398201 96638819 33363769 296060025 89801859 444518961 47794004 851910980 24101760 844825204 174945487 954115598 726553567 949864683 459505925 701244034 100878469 130335097 106414507 747448602 341734437 839235619 427996008 651722682 358272913 807882107 545266862 648363333 622076447 811078273 610206580 677595498 247011980 860043032 405583913 976348212 316392700 394421602 12659409 494542770 219433925 741312994 355239541 703701196 272192210 765288609 169185728 733057113 153631983 737262273 566717579 952011050 315957585 757046505 637221241 998793371 471711757 710047907 24202 243836151 152341838 191647624 27317390 406060777 3644782 521602899 453025912 626786653 167327103 962770636 793309670 992601005 391980842 975757634 834362379 924212304 549243175 880103983 192408452 488123835 239277569 834838551 769303330 856732631 23860707 643115268 414173454 648133903 443459041 585544114 153816030 197989902 45513845 917321438 814875459 957195918 78056268 976861617 620484163 874402472 738181284 964639935 912263571 968775707 350627938 679354222 54405157 911189655 5247693 274623317 216377291 663098956 579216045 929629681 686565095 747233552 331055100 355963846 200102391 643069209 289521490 960177325 779076564 880331719 697944480 850695635 36401999 341199390 141526222 352954440 41642206 78163860 17985867 276397566 234562061 400917622 18838954 207842055 94404056 427720278 206983157 396605759 245166021 825848372 242452718 641582680 419342561 676523093 224764381 333183860 287194772 650712279 111252639 891709111 382886569 485097727 430378398 748270736 104613773 580551793 457976260 628585879 110814571 351564741 145728969 266447674 112273240 989644477 902977282 949206232 574947602 703330585 198154246 977082703 532697386 719410738 386337513 918897624 535089232 700990328 222629665 654677936 17369195 984052016 141858857 191103042 154605512 255154642 197464066 478172685 357788197 973844852 21670257 956959539 654598347 735684485 318060508 572583063 75994667 726790364 78847447 106327820 104150501 904446391 388001040 594809154 88269291 107139419 21126460 142085514 119383702 624027349 37888788 351686112 47021793 547517880 51606080 134520451 131180832 636286033 442040303 908360617 603576502 925056521 327573108 514452060 13782981 245994689 170823295 833968780 346355290 530541951 243237453 876060045 85822885 962654996 490504756 816178509 653726471 672477125 550316265 731482931 314547784 965588551 198643543 577409280 367190725 484872017 170389405 555260677 512292329 959073116 725497640 998356358 25478930 830479651 344599511 860284625 769087947 902447870 452018957 583560906 107972942 994916935 979293331 981902931 285138786 297107914 160280885 369554593 281309163 465793991 410603004 771409870 326559712 455009306 376095840 924629504 188521450 783915543 143917552 311950197 133911305 147858687 55426657 734386539 374419377 700438538 109570812 140968101 90679010 906493738 407616444 894757536 369060676 778046030 770429396 781635920 622817758 863208560 534153322 888286843 121818657 508498983 272085439 438787430 303612396 699226581 493787247 516634024 451883622 898157235 491127987 875230814 319671842 353158940 94236608 217943655 183749273 297249556 202603494 910885364 179467384 434723263 37676280 231532635 82701147 658227615 262214497 449403362 445993095 477799211 270716634 419666616 47968702 174435931 87324609 156801273 2454819 157368980 79674517 730807791 273302126 993092574 89371916 179213867 54647982 120684992 56661000 996264544 247137508 264158190 109143539 797027090 586443011 832644013 209159024 634032823 583252113 589295373 133821688 244605105 4339020 364117696 322544656 664170104 652010385 949781125 626063994 727014828 437659411 960319473 893044311 953019764 23701060 76272812 28389823 84392796 2640428 950024719 7136520 574793238 455659020 551367054 475582473 868297441 165525283 532164583 391551828 511412647 230719970 645559972 175610932 458050211 27461797 829966764 413057980 483188282 409504994 672340650 220742974 847253255 287121607 988543726 443214820 881674274 794073620 966392462 833456027 950914638 230807914 654943508 618953250 860413911 502452170 547764651 472593103 998161368 421492644 845546244 184210159 961258914 542762462 554546467 233166231 350586847 169573714 999212390 614120193 898497482 501753444 565808459 241240710 418782657 269311606 483931183 344055242 672950219 262040840 805746777 339435337 669334338 165870844 294368990 192883546 918112598 782263133 906284555 242807688 981389654 176078841 985496690 321207679 762276172 522181713 731155564 16463833 717049093 100005297 226853779 152419874 750398420 719203432 802084740 701661851 721182157 344927365 763546480 542693366 772209425 679143821 907852529 692559995 767457794 512001083 743042771 400329239 569593217 332838623 505398786 441850305 957704771 557374848 984816638 410196483 973863257 791229444 803860343 490676903 650155238 92029144 759488253 31353580 741015237 309615787 759179810 5077439 518274981 484432873 789723808 571226816 973059678 856325747 930967719 362582190 429318843 274068884 515867341 325516592 851274794 837458635 858100841 488409484 881336137 765014995 850259108 45185096 851497137 771368844 836714184 309409464 806994153 104511432 994519331 287208700 603003401 585617597 953375014 381642237 447389184 306952865 538591746 414220008 977027832 427322662 698922751 550441025 642639048 163631749 652031834 573604236 715668065 447163941 462852636 154618144 612996086 609028203 950162706 897031470 998960879 114489763 546312757 393812872 529431103 261370739 919129827 82500147 465914456 376438452 484027938 113819098 583381772 18497599 807910111 225701746 493139971 30247159 808198320 597957681 610495558 565268981 712212539 638886444 641953267 63510267 262230395 204473332 456109132 249169589 489943170 125161625 606166425 474032965 711938662 434503403 879098023 822070198 852458686 657121508 959075303 225268967 343606910 271387728 992627476 25749501 759938816 157787884 673677132 334718863 882794429 578249918 732902021 496292555 696877913 84801725 244278834 153155599 877822177 783531617 963084624 882795064 986784990 935720467 978304172 922673347 949720255 249656738 308230574 246335458 546005636 412764116 500759255 158180319 721526334 580527518 813599109 186764391 865961414 172806490 878006155 172665510 251814123 26269032 625149124 29221361 136422647 55094472 245812854 114634000 384885975 177024301 451423714 104630023 625759964 189993135 591792480 208204172 790710059 431943229 515087251 291502306 398194315 66773611 398774533 152141477 511807286 319421736 776465036 407778122 518355953 212408120 729049562 552798929 613915983 324433978 958730658 652967606 804356090 44824380 75738666 67295824 635053263 333908720 951086544 276097647 647945847 382689921 932402397 226293299 787256764 306005330 687482537 637884871 719862546 647349219 730314861 381286157 896336930 652728288 922305136 905207748 972283940 35656378 212621723 43342228 503840827 321828880 738012589 499536972 940449733 558873639 585507381 70209669 324492200 47367381 914330089 63157892 577338944 534778085 568432097 464451831 788706855 437739960 485812264 19157043 648544910 523567686 993648489 424391541 648423395 526132442 969715293 786413438 920808533 151873675 519961858 62591635 251102262 165080781 497457585 455318887 863042649 112373298 165645672 68577989 572309721 300801280 344328980 174774308 853331962 668929350 785130279 396134790 829542099 558016598 640821610 281347542 564103953 303172513 686808708 63952266 562408280 392954602 999403779 496952428 514633314 279651154 504473038 498270630 969645179 640009938 644225481 46475335 308443666 228209712 351707371 228857763 241948331 195230877 954242553 36964712 586415357 479111792 933792307 325524725 484976707 266614744 947135681 359697434 749803873 38876387 95558073 1433029 133430558 32290453 490276714 49810949 105075332 71486761 865506800 583200370 926300079 402020217 790719969 21271724 905723580 661133846 732092277 376699844 656460573 118523100 725425497 471997190 549292920 394861982 718073286 186230695 359066283 332502580 388005416 103082673 243892583 61074059 796686546 23162943 582530004 111569830 377744583 229956350 688032506 670347871 857165181 578861226 582571474 528332946 641029690 217455411 475733899 131072091 317739780 101246534 517426257 409436356 611603867 217058658 486836832 155931473 578122690 439540515 959444819 807356114 924144343 589164839 629301926 604065162 747798385 734643603 882727574 561588626 989323406 962322174 977782380 424898907 607431771 396305455 908023353 102321944 721515809 610983142 822960868 637513809 725931094 30566506 546355477 156985192 590719583 585213541 621325056 140751104 400075638 49978416 178198156 1821935 888208473 606771900 634455238 200245447 712320259 602382780 931121608 158148339 378862375 175244375 753870234 91927982 698426690 300664931 768660720 715175305 916820078 585528652 760123446 47601952 543533904 439049944 463692691 224876659 600543211 506052586 796882014 654431906 751644926 380261433 862387491 263175581 410712118 326612763 456887939 140881200 364789830 240055256 777452897 172313730 458867556 158816822 998157012 579894033 912189314 25191267 830767536 60913334 504713217 389348816 418201146 310380178 707177915 320030736 517253976 515062233 637642895 373429432 486271366 12378551 120699252 105089338 262991419 66310730 627459368 569131273 835415608 493930000 898637752 621187273 984711450 644537754 755760085 641640504 956833983 956807649 960502011 580021127 974355686 289066489 739936587 473214718 716239431 606131734 711198320 345854100 721767389 14941459 823986399 215970277 603304807 504408266 546691467 60652176 569891937 547207837 699622009 312858913 964990445 951561430 991852171 66237207 933904809 366712944 506994097 314640759 958731288 266497656 539761372 444633015 739952861 248731306 333075397 30795793 283354419 169646176 649849128 180127360 690454955 544005460 835209350 784013688 814679207 395199568 718605906 498278152 646219823 76556149 818533868 437620493 862280709 257731230 625249226 258735147 649823496 409908328 727004430 485562552 644651937 381883109 713199845 358881887 777711109 391784308 403790992 375645862 613719758 217465718 573347870 150114032 604033205 582071783 993159967 496280426 687371426 4860554 171017428 30150375 382152547 67259823 618183704 505817277 914919111 85807324 360186886 2688499 825523643 118869855 373380837 369686406 699775397 395924345 540331910 342704874 470144115 177997454 800124569 36439566 397318790 8029430 678503904 611679998 809041844 207809469 919571887 451086455 886965276 810665213 961668857 714908793 825614948 475187380 710068879 588242351 809839385 136425981 749496267 639757785 695865586 673508805 968047122 73998422 528563578 349866093 615499896 345279676 793688384 202606105 955203203 861821114 883437148 846887521 894627063 39746889 913825092 441137775 458807430 122976491 682822743 364551041 844170871 190220328 560797094 523512392 551906034 201677715 601186435 8459913 174585490 36656809 513943012 256045060 882482964 807242131 993979041 513104453 782190470 8622382 634098876 531689417 775865033 7839409 816699216 774846347 956966060 536123093 907485928 317625912 602781517 586525624 953182669 708479356 971452409 777453476 924368109 766347490 790330305 66953314 837734713 45294906 426507932 53651321 723671277 275523966 320354406 238980376 818710179 534041484 795019145 677609798 692474984 273422963 664316238 226332030 356250462 97731236 875209785 377551181 449319474 81084420 240646486 73477384 505299902 113474182 890283492 185083697 993048996 796719414 918237849 446197128 830419556 106677578 768317358 61314122 370175132 5490285 78551378 78035692 678705139 273806240 536870401 453087565 655825321 631387734 726882739 38870811 824666772 193111609 194914170 45367556 552852744 365459520 717034281 694984764 959630080 169583636 973884794 907090365 922306502 735939542 912174756 682033567 873498429 623583096 703096638 523508900 992141981 604152218 605480902 568817666 941156755 478978972 639712069 162861118 907812560 317796777 460346055 453738756 961272254 482487326 785968138 170573173 366602832 179973822 869810809 28391983 649693863 319775320 960126765 615535776 693114518 397248300 858105695 123097775 900839661 517247750 962995683 31941931 668896629 323052702 529891505 89145099 971892738 802303898 943212831 452797485 642498667 83814017 478116756 389956720 645234969 164443814 562793849 538905077 542168719 414935151 784268652 599321772 896493547 136498963 480671510 167364173 484513104 400585118 471745251 96481338 505063841 371787153 773946640 306541147 595901773 458978558 687823518 601306236 803744007 181374327 201451591 188431386 698346861 98182948 198304988 98867698 153114203 66531785 740022971 554971232 692850416 312736564 697286786 623858817 957174437 347841422 640321203 332481034 396905214 369950920 681826792 390742170 496124292 264106752 471793900 289591786 355440187 105822348 957550003 180882517 733514876 529715510 818562607 469336797 501817673 471036930 483410940 322447627 511799144 47043832 789677281 147790514 736115183 55870329 56777557 50818297 725649655 667618403 693337107 576483425 986643577 672638490 700954369 244412712 529383747 211951605 424280610 193201704 731574914 357473992 473446804 240738707 619520254 561907487 900942285 736734727 742323377 540295113 683603461 565719766 765105124 172476843 812990072 510588631 949383945 423982621 943446908 640480928 825424076 348226732 960262283 701492638 923617412 522043394 994601878 149478287 186791273 35568516 332777266 46417531 725516113 687859681 855853316 334552478 344533176 219279988 588870140 399991466 650933356 509142115 801660524 249281216 297631998 282416074 954493065 127919583 999995137 516928344 728787246 161336095 175431398 46454909 463507335 128106186 221499771 91846484 682417093 448168935 667577159 146993226 164556847 47103266 705573246 410263512 528062894 148234032 178926603 148968428 947818323 870608723 881688984 444248052 714727362 600585759 851714626 58463917 449650509 248614383 511777571 145631084 875540190 388720256 687204784 500265447 755340978 11529145 414065628 146974481 499338852 25326870 197441496 152468764 567188287 312867208 553113540 25281910 871600681 43834481 980648912 340670939 592644052 468800468 636609065 297850722 809639956 430932393 664501854 341916986 790687074 508997228 582164381 391752088 835084048 733912187 960194810 609359219 851639269 729833227 844450859 625810178 756720959 316274568 973208215 463298533 970858732 18285087 654184245 651654305 903654505 344348425 610708986 557000065 624556311 378760331 617370433 290308821 714710412 31390100 409751264 169110690 747083866 123047992 830823502 726146842 956088076 258972987 350952427 82453076 681286828 559361859 733184997 669196718 788791233 250456827 521856216 42606536 381727107 281358253 865089295 413064455 663937512 74547863 376327502 165164593 236484849 99497248 659399106 9635219 446251216 208037115 653848866 387601915 751307504 292681584 579521914 149429333 819844407 263683844 564837695 294458482 470635623 28236969 443228673 209361190 467594653 32780629 789214371 5037447 587488501 259802287 986215499 61180250 817610477 25049816 276057626 37199645 722016063 175525514 365938597 288407473 856675013 421169975 501236820 176273573 743849784 650617175 941476113 862162991 913068622 357117290 512117562 146817526 611671417 439049908 888863853 420330009 869127656 657878894 849916591 141916962 698046982 174924198 301144449 118470456 900905309 440028684 699623188 51743750 866156941 336049232 380855086 249114134 444344230 51590064 887598073 167187297 386548501 83383107 618992115 369290652 971775820 469448704 568660804 119655342 495870247 381654940 705492968 475544556 575989972 128923787 625269789 482822578 962543040 788347170 802892019 335777352 519575540 199336400 712871626 593370037 733175800 206266635 565016012 484439696 560990987 392776522 967976712 613875139 885780335 417229168 901487947 429455055 808790603 748115421 801600288 795315506 990396120 316388792 665939395 206763525 486673477 309602464 673241510 180126837 516654135 155280078 830871452 734693086 924110956 622452669 903324115 489377490 912497693 41281053 984394925 81792702 105513475 35727369 419405291 336133678 665465329 630681369 857849386 517247580 990966870 954029653 957202187 467783297 847462176 628953193 710281562 691845799 925657390 854241836 900723226 197204115 962385527 725647451 739817546 669829326 857142940 104439106 539080666 529585973 917205229 40107106 885668721 540577875 813674889 409491639 865973361 118931349 483910955 459367793 492553759 175959478 606303439 186379942 280619231 250875990 348944060 170578581 173095276 149380336 399580443 197195012 807209740 504564756 826992164 400227582 793571722 391955986 436331302 407671448 803565696 532646409 949965423 788598988 972609741 945296136 945536364 623740662 871020511 215780139 598650302 520760689 880256004 498784593 877866982 351046884 638425415 165552639 433232380 16848163 81622890 61467247 564390908 32715701 259214930 168451690 190818731 121019382 208333141 149099940 389975659 141366702 745684205 736661144 966080418 910961999 955258514 327806660 356968347 230725082 492422853 3874840 641667674 479996750 989454737 34530217 434659517 221647069 682008778 97479517 684846635 159634553 734665032 632883706 939454088 507647781 861290844 261651719 782457328 10027362 535148209 412406483 645503701 549105698 670269670 142382210 350982223 175214217 665519100 457230109 775089576 694918865 969291839 173381534 425826473 278534737 521077484 208653540 329300334 22666159 394450112 217462591 488954978 134970106 680026195 577354522 817033274 698412580 799400447 356210695 959278499 899405680 965304590 701843681 929604553 90815897 746845446 29849961 856838731 449976543 649444316 580652656 801820911 20609653 946577379 90591569 828968925 340341123 470012194 149002566 314587558 93011495 512740883 298975860 301357813 283141874 972815849 899219298 909638034 158149546 350511180 306474164 691053150 257800658 492523494 197953280 378567911 377118110 931622548 619500866 714004998 388206767 557189465 151287476 202106334 44837331 659890603 277495753 317892339 79259212 573890198 151382801 449453493 122011033 859814255 271235066 462282255 23210850 782216483 333317203 697090985 367840589 972603602 931011425 952569202 799572368 847697603 284887845 426072624 10120111 981969632 229670790 332913775 187381844 593147053 18683630 106336821 17408932 443291977 86442200 545065021 144890755 588750992 183617918 364062003 171368794 282775196 261980801 366522182 128090188 786575875 276291320 743939854 171594052 271749067 80346409 743159403 277862588 582919010 258763 984717263 148482627 609783948 119809362 665538063 577827713 822733995 9855859 775959374 28815621 798363539 262013578 944814629 151063666 661248852 589596963 709610300 399965097 672972195 17402602 853256331 127621335 703524303 463239296 627542474 577767954 964942435 655198986 725052414 414663808 877796973 654151618 813247899 373553675 524278861 36566937 778898748 44716729 880966264 411318870 598740652 74258812 449288757 234263479 482801843 463344620 815542745 180184315 704929387 525717532 780535026 119253234 196084280 180405821 882806632 737105045 850873722 770959616 782212329 163025188 616767894 232386854 320182988 279500791 569518831 495795972 742390083 175700554 176377970 55036562 80600999 17801285 549043017 448463029 643159470 92441488 841998706 640736933 912904639 588344563 899553286 774629439 842740919 671069370 807361862 653603334 668630203 587985498 755814776 666622613 973399876 762614564 919909619 297620553 656043395 508371974 721570378 448834745 452006185 76174828 529445136 93093886 479071016 215288206 932425067 541724269 606000813 353080013 771533318 189479587 402068506 318135410 897671321 346297834 593591402 498136522 551968944 229133670 598534459 216428803 896990052 276741037 284092960 22883810 870405134 421999737 760303547 350848544 444531586 212285661 668809304 53414694 255318582 3753152 554899675 98997608 125047305 31362698 150104430 25102988 224040405 90757939 135362571 76597565 620365902 39228699 345271488 140484869 797933047 495763579 638296184 405567719 464363784 434480892 545392640 532408066 628942048 126614069 499142842 233007977 569766515 249871418 932692459 415775742 694551001 264076293 535295104 350995115 432126806 382359098 827996228 687670060 988228804 938835227 988969841 344165055 456421859 455509344 792535174 587690735 868548357 505185049 589514493 491199712 621996240 570380362 729114364 532496460 579679064 343851885 824429175 747284043 756066490 289115171 748519752 354065057 608798047 336903559 866895549 58887260 721579975 572552699 806945943 141450899 643620481 431213360 902225428 297163198 613187956 606667984 647422592 299603059 611139680 528492660 833582662 659613963 848017107 420511385 519504351 439953467 598428851 334133853 532461952 219797785 761700317 168580715 496322813 25739619 333926946 152961147 327845201 75656391 804138898 428593329 859269271 179555356 334658311 293043408 898252695 566142224 860266848 372424247 949445140 263328581 443641289 421710710 707551721 135878039 981030420 804878198 878433131 570045133 860654047 241456427 266156850 207881266 290887121 217728153 845032238 563316682 680563004 147818483 846955736 782070620 922051951 666954841 971484989 919795011 927043727 259972220 907699342 536086445 701669770 635043666 807636814 699100923 761407670 372477028 693827406 571146272 658899644 614700208 867958091 17506398 531692546 284966295 473897893 82901670 944177924 763906165 764872366 536696980 672752256 641964378 781981381 624815701 676458929 122502957 834034962 429539631 938906161 730553210 884558501 473019086 926421359 375535341 899555652 551556276 868956043 643884751 980320110 296635694 349976107 236521589 675059221 52298827 330024394 282126007 880491684 533887445 592039978 32478851 169366055 38605910 135225908 38980931 818653134 546227368 983186266 722780497 873281275 129157492 789865169 174548874 987651999 961229531 967040996 679764507 937770525 60904596 388197954 94507843 697355363 84135215 875623676 78763975 987035091 585066351 725262505 252651119 980184657 361304592 734537906 109524948 551336908 300359835 542390912 135175854 277588289 137485377 175935033 16199813 939332865 917444596 964042021 848647264 977770533 797908243 964891059 89539577 554939234 262467876 602030600 44865550 525571537 341748903 469278624 97375996 416261281 343231292 917468587 817429159 846607359 648309926 709648808 218294499 940879381 61042533 486400677 470311673 975738426 609412213 858768694 25287686 377888335 143109610 461430703 103097401 737891974 625296632 647513801 396449940 468670262 367886298 776608321 23876903 264519950 37409997 90933508 36046468 584772726 576010475 771261694 760601227 810652720 374979973 783529727 73860875 360850079 215950390 283146295 143360966 755076066 621149604 824998062 269586367 432323109 325248434 855541521 739733792 807689261 761776599 901593704 670824580 871180974 220827041 536417605 314218383 423702432 43509091 186905998 32147919 143261783 70545638 754833609 257365862 830152242 80096580 306933902 58832362 703771112 660952165 888276683 532880111 935080777 856588771 864080436 343890341 651067332 106839906 888692773 657438093 687561109 307342944 821993903 760582521 991143974 228933695 951483665 475237561 826990072 556153360 780296142 775826154 808820447 155607583 172488071 158630231 296464773 229916048 958577681 227407727 762839716 592208825 794005437 546840590 552555402 242167326 377697477 104003041 174668252 135930870 495405921 307428485 877309694 566635117 690759548 687445355 750392022 652332185 946101902 98279683 314026318 132598831 603644136 26485232 823763961 401250981 522494259 127879627 702030271 28007358 900911440 578435602 871662052 781954622 881944616 566709586 665272226 180584957 870951586 497399916 790696888 470979006 879289567 442196927 463356900 170161071 838899311 644895001 967660804 672688258 890320965 703479393 973083244 90672870 342450457 40382406 182405052 97758329 202598599 170506593 267097338 146828460 333082016 19377991 239441355 187142412 701294225 387891535 551369555 510678476 543438468 454789074 935992690 826395258 921396494 408573369 777273625 622788281 817569619 34985908 909204558 572274328 590738400 335354669 780594562 299351931 917524920 450603152 719928184 606901480 744918209 695192735 893285707 744913894 901624232 648424481 846905692 222434203 976451381 766422803 772087786 505773838 864896863 609577395 766283435 629265105 684088207 65360932 806117180 51979271 339114459 254570278 438757003 60414178 619984123 501507135 922263708 296667892 806547837 554952309 570712796 181863353 878258660 92986099 597907597 484733580 836602437 598486188 677481238 27688606 168432845 3698432 549754752 214565920 362536000 296587375 742380841 181363723 515024657 188646406 697679446 217397473 709018549 449503379 486163871 292227391 919846588 293139519 766167326 654912006 736313487 299824149 637614313 79398254 228458082 219198539 908507279 669654652 961136543 740900124 909220553 402931050 993763269 495512101 806148517 578115232 854389613 402765346 942953901 318385964 552929557 328930237 485400719 159722173 804223131 301546490 475264087 425674871 911931934 454298468 986455714 463540437 480423867 321474513 556203547 263866954 389135199 323105909 777196383 754072261 996899660 699440004 739890286 301055269 673333440 330794356 385166173 164666724 896768036 284006363 410889748 355467387 682423118 68371033 143336286 64813832 917038033 115768493 263967525 48676885 615349177 161140241 285821457 73393214 679319052 230875536 533728149 228447650 795162465 763389360 939739498 419256160 440883293 82689123 452849912 140555805 490914785 323049773 391140105 357242105 778661201 501971790 904462610 521596705 546643308 470651305 527891254 447940159 992163491 421316993 760699821 617392777 987696815 72709962 451034965 360133079 660235269 193015427 801578610 693798136 764414836 273527944 965756736 232642104 842923967 574447508 679578016 353867511 750020952 9183352 256800644 225454650 544383044 133305218 632094938 68726520 644753419 231912617 269551552 138773012 842804087 337099489 831812612 372147785 767384864 93300212 257413024 225185075 758536760 316389461 786328453 408401374 897346338 672131584 691322209 588660567 860855112 788721241 893255226 819907522 893697027 42693544 440967886 316108294 988067893 898112694 924120779 866606810 902183238 773795255 774978688 626327359 773872127 702917007 931610568 689941504 760992561 483565908 598121346 538890322 654120543 530557165 535478984 140765150 287196904 2963370 157324157 95557234 372351323 133527621 399501845 378054880 860345569 449459536 554770197 189109090 525080170 66591029 449853749 122691330 336289423 175791623 520217252 308802001 603118332 227737928 988397344 883676561 971148632 718881131 852183100 131481847 889167413 709260612 741872343 381908600 865708828 384249720 454363745 350412644 535378641 96299345 537112337 327614109 593314714 14612357 888884248 169370560 412942650 75725857 608736327 283480385 627317625 491652497 867170519 808033039 864644096 506362141 971454732 448979796 991237273 691611874 992118535 117487178 677462490 546708455 917555926 575736551 831006880 822982910 880726348 590035191 959843665 566144207 918704242 914433643 965644904 471041444 902662271 180971851 406067394 14233902 788013087 637722558 868722170 155542438 737676290 77776041 408555495 389008530 839780131 401501432 409941972 90130792 471365691 248541741 750784122 698711196 804007455 761946269 776617174 455517455 735032082 472066031 795371924 35452339 770621576 560155286 610352825 544643617 640911144 317655161 812650852 80158359 569526288 376642724 849817193 470932149 504740345 372576310 491345511 454431046 714289656 499301462 778393600 473081522 893436958 735761114 953517174 759712885 936575335 173518190 189795810 187066056 569269855 243616736 343316033 124122906 995033121 304598686 727709970 18008434 880353140 698851557 989541562 899128019 975480928 872942405 966805626 388035669 432100959 97128271 602030900 179520729 739634516 37839242 540293739 128400082 872969591 478686645 789372466 581980776 806462906 560801939 602646270 366175003 637738434 319527928 935834100 153414772 224431622 18460800 203299847 24033472 58321781 29118525 526122507 299693381 325514862 105820807 953325920 561425977 846946268 187238550 319930847 168632434 189791121 158139777 701128672 221563896 825424475 372528120 539074548 70231464 871212795 413239120 866628664 571217094 824886481 262608599 727454670 9284817 324039325 178610380 317074708 250983432 610949201 88362110 394548290 283856283 517919975 307789219 785247923 588910758 837824748 495279437 744155550 466189438 940568894 397661450 798441053 129249748 850860112 473012108 563540529 419144708 624035926 376901241 784721568 208387617 566474752 293380504 827976151 746790787 904150658 367122790 544405240 404915378 807175228 623140759 765024460 560325441 898626626 516345752 724572349 216550603 942920505 401127154 758825828 646496311 790491705 224009540 582628748 311413536 388975404 388706885 887163454 322169421 638514132 89901556 811127917 132281098 887886846 177714232 281632137 275775986 312816556 3073369 995633059 401497209 577444718 180604474 343338520 303850394 415686915 323857073 430333665 175573025 463111198 45043770 538115635 492941047 842391628 131798920 509316458 401723053 658202239 192027784 473655425 312953879 357150161 223217517 946175880 636828741 970783997 426811808 783003479 766600190 912237522 879264163 990093137 385090968 880752989 76202614 770942687 159572569 963611104 677862849 679706402 346753768 445214636 220333616 875753133 605550033 800058570 352662970 557692628 181422220 298260392 24949711 415319953 136222916 739594699 323273306 903799387 821568028 888108045 409314965 976524944 547583052 720858687 385933568 743204936 23897455 688424051 138220580 301020413 177690767 723342101 8009058 725320809 539205413 676776980 623794572 967759432 752950930 788981719 200383176 308653411 278411613 324407840 130092209 990106179 146699148 995425609 321163823 502806214 433582135 868604135 727574028 757890697 25691277 135455269 47992433 904135732 564879649 936225475 203243550 248163957 13125460 77344997 66245339 918707281 431784921 667732294 87997227 265908259 4270819 176098386 59074836 291941778 245572068 579569185 269128905 665079570 127566522 953654990 138319174 448918955 9739913 560816851 141742851 928108566 171190814 652730472 226664513 385768112 325643716 967251547 179313659 214000063 116105114 836954336 833100280 952283624 670963991 731592623 668566408 751139960 622538731 900757988 895838828 895940798 124343186 620250320 32637962 890785867 821185373 821380337 113686242 804758966 448099929 846683076 475323016 947602754 510811504 973042287 756452428 886747623 286432595 739107964 631045769 861025771 464610049 749467277 538183426 618503950 237982228 398270111 47385352 206056994 188033812 240208396 110794784 675739248 639985301 742702182 410321023 667025693 289698173 595022747 338921264 376834228 48839331 345971511 167117256 383194138 262085942 912267938 45935062 542599391 153240972 894776004 224282033 871752785 105526915 417648228 273446236 352912514 7132039 473318220 213492682 808639294 362026787 933084133 808477241 866945702 528924417 959878591 414325315 433496259 299708976 549913574 205780231 883167853 820919950 966146780 807862117 889946368 777326382 915259209 485175873 851779359 345915828 957886191 519636372 823651633 606561424 621527147 80262122 874959222 862798526 985956848 670774385 948365293 117998009 525854997 26372653 726520839 687150930 820350066 275410042 313784828 39760139 394386232 317887466 884045311 291157238 716219044 81028614 192603878 51383317 192559567 11154572 943503292 552364946 802514868 188496520 964687878 775031878 805195743 718579823 760363676 433980798 816201878 225150790 936365012 173579842 255489216 184217592 854882677 811153972 932822120 354940540 449625523 398780710 702459348 420296438 650981394 457352478 941083343 595828200 637469369 524901359 929592384 291585804 909438064 314513687 730655486 34920243 952015340 700734138 936718648 236694312 358235792 182051562 311330809 200676233 784904113 351605215 515382465 346023081 628555367 17899450 111458563 27401020 960907444 123184775 580111665 200757549 840646893 737486091 775110810 692617780 765185838 228561802 747286887 190719292 867863199 787547637 857903972 182335638 637533366 61384197 489841533 218583438 667682590 454112910 734689818 645191852 675136903 377706205 624573733 535102727 653360708 265267712 942655176 193666388 519689729 287066895 411012086 32396520 807407258 513473330 531681507 106465424 212096003 196302982 594062650 587291341 644637032 606069011 624698497 419517390 711262791 365008282 365432081 17015378 452740398 104785767 121159792 119010535 297376253 10952749 324811287 48630045 573453270 481786672 908721215 338603128 500858676 125463351 865454461 630761219 762293344 652515691 974347733 520366153 742709632 292405491 416800740 73224911 926291287 297835825 534001754 59639601 506470200 482496716 905014938 903061378 912193813 481486119 901584405 885512462 974270039 153573356 321869931 40583470 796606758 675172417 694129739 424296340 727647698 663363508 717069936 467748777 947691989 368004904 759571462 111240464 290098572 71717596 785643297 270521201 791811259 513138568 860380142 305022990 532622045 125129020 313823674 72409511 164939068 137983856 616502487 278358480 970140731 306185961 982324221 275639804 554524986 44423751 944457882 536162727 810368697 192899161 591333409 134763493 663107383 357467741 597824698 375794977 570592014 496326735 883096997 221265230 848333703 350963420 977804848 679385021 845246780 435241712 847443130 228465066 600766934 512166376 981601065 637213910 853965407 186124497 380295845 97663057 438033129 31220540 807556311 646851215 848640217 18020858 220581208 194902937 560479999 210397830 495752734 454570809 554652664 459087425 716420275 187540366 297557404 44716945 447530464 182033443 215223750 116017450 333062144 120710046 920111086 218212520 290772946 152559853 337871853 12770988 508775910 128510759 990044315 62226170 67751623 53488334 479593458 255213254 296313661 267096954 967255761 902047767 981344474 583182176 639353051 540291016 887990288 880718972 932961016 707246499 965991201 47391338 714029712 706040538 723605652 706229619 798977663 354586964 399427015 11602064 756939490 174333300 445320904 79691051 984114677 713497207 891974904 8892023 214734154 151182533 351850133 332172745 809196976 30208879 112860337 110656253 741511670 386658385 403271861 366893432 895223212 83843501 547492646 292510412 847601118 764481453 969575166 382330450 606919160 404651008 685301328 173166125 192589510 45338343 934339952 124301115 249216685 37806565 543757230 530849115 618958214 282524827 784450398 202212127 544145218 157304101 313645939 265963273 795859589 407182427 616008392 256426924 279199428 197460062 509032846 69178542 950355630 815089648 942535146 327269004 568111616 1570606 183060436 95707415 164681721 123406045 772350602 586289916 856457553 329297948 914629414 600330844 673455819 580331253 662406921 158806757 673748803 94361503 993570655 94970081 317360047 295106899 592398180 193462529 330793009 296969519 924415982 363774146 833798689 383230103 605498584 136089834 637990014 194652948 737362587 369744023 548257479 109367642 687245064 497256406 626275717 310678673 821901377 191084795 516018703 382296654 960456652 543535691 625900356 202387168 239910828 10686422 288317943 114864016 755692859 528239607 820651458 488936959 506421584 502731109 819280549 74791292 302999933 179055341 697141389 219707787 794397905 322673864 330832924 20844373 868469147 399364029 726217293 562402351 680246713 366234736 529813533 226010505 627004579 218313369 563502097 301710535 754395668 6054208 816569970 294456887 699782878 150572455 897508378 4915203 556683923 272777365 645847728 644583050 921390652 4235823 689057292 282587607 832469562 280558350 994377431 1608006 840665186 729329179 994175081 688672256 984687332 573152329 880446206 203277298 635237740 264907271 546579396 259660958 343495485 132899359 904156394 466388316 969847673 341464915 908084158 228217903 277172874 66331858 460908226 379182465 562977406 189945299 701770135 330219479 973495283 946807957 977509200 424668671 561516436 396752071 710069516 568757332 609708448 238211848 969434006 656880388 880590075 705430444 907860474 655533415 911237870 723864879 823234977 609526277 655182718 574665662 858694012 321587332 429182403 418535028 661279142 452502040 754260883 307348030 738258531 549848107 665571968 454906846 903122518 853796289 995295119 239816125 308220087 256548967 945799943 512124831 550101572 1197801 795764035 161619266 695997376 290432508 867595131 530802541 917905690 428574013 794991859 320458635 820740289 786443531 895281851 868381387 882188884 486253573 779303500 642807833 905606803 12582905 321524534 274163698 314938246 218553510 513843786 303623945 391569472 251834935 299816087 86506975 234309751 185594350 353139837 34244152 675337191 670704344 981645740 780340700 935694399 285991669 700135452 590469861 809785554 475979092 603867358 503047927 702738159 50027746 333875253 118207597 527661233 268963215 765378981 55523837 267448758 136218483 151776488 78070163 873422537 346839569 865555320 674589363 920445544 783496667 817235002 539040175 958499958 695322592 854745525 442534148 523142490 34833860 302722058 287584864 772952039 594394396 859621787 90594099 667488989 124985367 836332997 550898570 822908235 284541769 861327174 855763329 939729086 871380880 884283912 368238346 855392146 287820618 581875700 333309692 344945844 124788891 324235184 258761021 452164264 361503958 689226118 665135725 971970897 42205173 209272081 46457094 250441514 165953277 350561727 213014969 895355933 157151071 271838143 107206284 671722626 217357157 639121172 199718131 806579941 54910947 89279615 54086648 523607107 272295706 290473293 237569844 829128692 342398954 482931988 312741658 822054642 297588340 388663950 325845433 678972032 94474608 896365948 143453946 279534522 119691949 931084152 376138246 778406461 682254784 691468200 11166558 250366670 151609739 489085344 327399146 677828417 608199439 926572578 106117938 220152940 188865861 954618457 507770851 616850550 123208018 937374024 722394667 993849216 312082077 756873648 72386101 876561216 222641761 235367313 41805265 51298021 1515113 409525856 235974698 717600515 522191745 895515930 516567830 604556418 384387756 608814728 408260888 468264214 440479219 477098324 264640133 849682207 143713379 893282017 849160653 920843524 206267019 292840830 124885139 179317630 169269679 478967406 105114788 285258009 45950844 606093135 559273955 903752540 507345991 819029037 25151359 498761851 178871662 331754734 181212104 612668250 415688388 568211318 225720054 620892287 208485924 482284421 379907250 577494494 270464444 715625019 239377207 268807699 124619068 887001685 229899868 847430890 504979644 910111948 691782647 935684581 706105921 740981755 74207397 620862291 257067189 696926400 420746817 444106667 346495576 734278180 510265265 666294466 659533711 754630217 286959227 467913974 92109453 592026984 482009010 482076697 42543625 629988050 532653925 543083166 194318694 721753749 202119341 698562451 599519592 725052829 34253478 258415814 208789188 502640316 77597124 666306742 1566362 991470556 763111149 950113571 53006827 436608243 143266080 341089279 264989612 456676169 4081974 572075723 201573476 259224265 249706617 574820273 398589278 982311856 801143346 917560642 303956700 453141460 283670863 310304017 94353679 136465458 115960809 130313431 33493957 553891618 51987897 200474272 8443039 438929805 284987952 983140670 833979319 921111278 899822632 978780685 938503823 941983640 529626851 864695917 524125217 539217954 370155930 936437552 409672801 832756766 355215615 990237896 584002039 887820701 584229395 977889366 732013012 943203864 486524859 506028876 341310559 520284891 128067816 757740431 48303128 471387822 367918248 456167684 122801398 507206567 118667181 275672641 122200085 246232745 167905633 854463231 814277261 969017242 320109126 364844630 132165099 445794400 49976198 273430143 7045962 755287132 552163721 820308052 694975306 936523553 416999006 944772117 438166718 519048153 400741942 418793689 323881441 942392604 874660038 959100341 595162217 957650368 567312534 727480700 623302462 893897739 799277666 889016053 66745583 769709184 580590198 881734387 527102553 915281118 550161815 613762039 459884509 806997547 359765065 373767194 270410682 719149956 175447393 972428882 301957663 792042893 494850580 984752095 858379109 874690679 448009362 495944682 203262865 864595263 72112556 657873520 328649515 376436242 181803476 614593341 430988138 834748099 223846598 315756544 208899820 659726264 20591017 745940935 193358190 575331041 425131966 992199216 302241803 481672481 167071675 770650877 232542463 929782252 432108580 617510100 560157661 921987894 396723087 520421364 435853983 916589093 765111016 994175537 79278587 870396171 243921221 540396727 130388065 174340336 80305851 582751432 397119717 793268531 660168838 923410300 879012029 889896690 93477342 645811168 109141975 718343054 603502838 881342252 5033046 53244258 21162206 597251209 428967983 589779316 583251011 780010402 324486949 635660252 95940937 987551781 50774674 67571975 16675973 130845162 15678441 68289019 44978960 582932495 275561214 699514517 116840971 807034699 292216338 367592665 142453231 971207078 629462878 785980999 501820651 662518782 649105064 983673818 896322252 992415826 724656090 994665155 741772175 990939887 780040236 957313832 94476048 830952464 639372919 814017890 241624784 526951097 314485752 817691708 25938449 312203664 2066791 818747037 246125692 980063333 396592298 777582708 415366948 669055266 579776294 708867232 436899155 637598505 245903001 384960427 26958451 281788881 132632205 507225900 262123983 906150183 551856583 690407265 195336132 689367479 506116916 593891779 28790613 283775275 117494476 232168309 55541320 786297246 506117254 854093886 64822971 755720003 179787334 222145180 158641845 623263088 463365947 476252231 418039583 798701509 508688974 974416082 791420665 898675889 275327699 349642319 195481500 962459425 288864764 925981953 69268568 938732616 642048844 853606627 769824209 976829665 81487329 619722567 316448467 330377180 42649061 648952958 427965192 882274767 222219637 471470023 393166445 876321468 115754046 381170942 129482300 695286523 83979905 249409704 99249134 372046556 150359291 658337891 205335255 467699798 175199630 214231800 24815800 119187937 14295201 889926152 731544023 947360109 122345608 601170572 495326585 503405943 175217810 447172263 272035499 473342988 277601405 722325272 689171378 966898139 856957531 962868669 804847738 854264193 559302980 832384856 788453934 865382787 735974560 954399384 362529437 802024925 255746118 269925404 148512804 720935154 372394791 932838486 834271832 882635844 453392774 471797835 167941415 185734225 122591787 898852059 851923654 943157607 19838285 147913069 25230978 213111281 89452623 361732627 46058012 730096955 372293776 567592330 201360569 400794752 390972913 989953342 634329303 806013877 72053833 313865032 111211287 677879230 91175453 262000598 58327463 94172524 12886158 633558313 185208362 508530666 472807525 569264816 48264811 297037537 212686306 249416946 8049150 250940352 109304254 436986592 358419648 913039028 459109926 797943415 649191212 683104593 590057120 918806133 753344398 767100995 133441524 515527343 209153855 594256343 379257654 836884539 772049877 973481105 389387992 813383914 576096353 730807307 234237823 887813796 59590012 981876678 60433071 764480242 502432629 518709464 298328193 405981128 152860523 402859377 98992431 356270750 255014603 690936582 641533588 817468143 356989234 587482300 51201612 263571208 102869068 235818848 228986460 833851041 739947876 950511542 531956188 822081131 6584394 536700403 437978870 969828532 841949520 955778761 122717676 748946986 476374217 619547815 473200793 677267221 412969302 491524004 174722450 840598092 193857475 989450620 611042089 836375780 102050341 747416302 102240843 975530472 382863595 940549034 600732080 951363513 500221905 942576404 172650962 214492676 40007647 687996700 130633082 135147746 84481371 645275796 417383691 474272054 212598319 225936902 209876830 549693389 117413149 932064330 643257253 911289370 142796509 164619016 39481775 879228194 246752713 583400069 357087981 559857254 366791362 975084917 43111161 958525200 75338321 534382319 332651621 738633336 477357085 703309781 349020155 535046237 4019761 126759027 65375089 306488148 163616275 814356407 691713037 970237506 958751352 986134118 96229539 278306857 93682253 963921132 690887702 894628471 305097690 495499519 397862488 685742041 274054130 509880031 139705773 730618251 227928998 362660763 271203979 306994407 70518164 199075503 112791742 924029665 270517788 489811221 424573587 774276118 762423048 840210358 503727478 834381922 269263988 740672231 607127414 928994167 704274766 805515682 765729569 809829150 602836806 687753541 675234932 762754182 89903374 893859597 99490570 172554975 94364393 549633881 533894280 600803919 456475554 589490273 107256893 266894819 42143251 769026968 584490806 856086950 190835939 226452631 126826806 403658655 184803830 956074087 610080517 978411573 395330999 852682081 145353606 282476431 2451435 772078686 661901069 858717313 778874295 778881992 184534594 757572710 671083012 701023876 10855991 149363006 46878131 484471626 434799623 633921105 278770588 862477155 835419003 839801284 524616818 565329380 426764351 769963160 98867825 987717719 280211040 606841681 48679862 907657874 136508900 682667832 522744834 734472852 710102485 737447304 679620613 921439685 563723456 728073722 210985360 809445755 550153856 869663436 552939935 848925052 576701238 885428217 461850555 624692979 8558332 609438230 83098250 441751168 368068084 884135447 83061362 630284311 56367036 436369999 110384335 846857930 357313192 731402681 73290189 934830898 809682500 879182364 599121815 693524296 586621230 968058123 73168076 461513378 378448784 708307347 235900624 499775192 78959238 809157069 121538363 537591197 426135310 623796389 273410708 329611758 152641444 284674378 13211968 478826088 279475939 505133299 311223920 492153259 202372107 429624734 12411139 382760312 219249112 389628126 238257199 280533611 270898206 973018127 654541056 954021321 278841145 300894096 23331342 920011173 144250543 220688524 64936819 82589279 3217323 298019860 100245486 264139265 221910834 403250491 203289442 652920269 383939679 596466511 252087125 863136639 849657287 872123339 535061961 680452579 208279266 776223205 411007700 777734365 317643946 974069582 134940300 884999243 165621881 893356488 40649152 758743970 151332262 882062353 310997388 356118043 43538178 330601714 20150018 462075610 301090326 544367388 93768137 730451627 40733886 991524142 202395080 863550419 794070092 973122330 793427572 909780194 621645484 899871624 854565969 855526794 460778567 933707102 88957104 187990179 10307007 953049053 620638712 858636606 368479873 378447175 344885295 516172839 218412992 532597955 119375675 227437302 21874287 712604326 42441954 455853538 254307047 354810577 338758545 902727685 688961253 877803311 145108308 208567853 63473528 219642106 63853873 227240141 113397520 841440110 316610843 825649440 155339849 400498226 299251022 639895085 628079968 821966353 26758558 467278411 434418751 868848470 357665905 650205030 131630901 628830739 464564130 512906880 307009964 682150551 38753232 79000158 62776586 941577837 5734742 479163932 110851417 976892196 836327227 841938816 534781770 755140160 84434522 197891603 67110865 756791787 245701786 996141304 839637442 905631442 639375240 990486859 578068170 903714168 81869187 448892827 238814113 902680074 868287770 972968329 160515563 477986869 301481240 639263883 472566917 832748228 780015023 914394518 350295606 594038813 441975882 919593020 568229329 807103383 84100054 717201027 215271200 845248654 70337697 587533489 347421176 809156209 530691528 645800651 274008263 732773420 648819230 938223494 702102535 923479304 440366641 497239644 172456222 841965628 47841082 195941795 70687215 508559601 461716905 760199489 76788848 85894559 4425187 933954350 54591657 847053829 206383660 348141144 186359711 918943587 545834365 554282691 358042341 381784226 314745859 681732206 445296037 536873242 153727134 463465493 369345260 516468123 386359814 606789363 312603336 784550029 578610600 924278717 110165487 319668504 10806017 518722759 160411445 336051849 129868635 544261528 38144384 70250262 9457425 195471952 131916084 428623389 141240977 753784398 252750106 263950972 103596709 819368397 759038827 782560729 493893014 590143591 467140087 985478929 654506366 769601457 542986510 639247848 332890109 718970746 113273506 675883925 662213455 945064606 48808666 677133378 565575721 625288515 8196712 463431510 302056534 843273383 546432553 878808003 288795952 325024364 263645758 812901670 8665098 992612659 242511891 856213471 254244332 378109322 171454823 494667987 132010055 377228279 364743446 696750243 94751061 920707210 623738591 971729505 931389607 996332489 388552767 616042324 156805584 666357866 150804394 740045064 217352354 585131327 373445579 790253113 598779474 995241238 875757422 997725318 607362653 763316214 602969307 895517448 157004936 554753581 409024534 888230868 660242884 753898146 209341080 652358099 210001286 574525664 83558348 171977671 122447360 674661123 435137335 755459808 483916221 723157616 504038829 662085615 155007823 547993257 13940726 194023823 168131475 502848395 453156138 898683255 667681813 796749842 50682630 673204450 356437638 570327172 563746580 883171141 123883876 802414749 562272027 650416798 126050096 354969979 174977229 361651546 268459295 673631004 575106548 846849910 406615418 926168290 244911361 810682967 576168837 785344071 238136331 753068679 360221220 715579631 52439844 935016174 508841025 518508385 474307992 782107687 734737396 853453316 336692868 577867109 456085289 490687724 251804776 853641610 714157034 933336510 165874112 618032866 299287071 966341315 809687187 955057866 665797034 880835648 171944237 668731643 115387242 266268641 164762937 655040220 394539486 875503265 703323204 770194362 236791248 644934896 10306677 106205696 22611692 576621110 139453782 918660691 305934237 914588901 492903634 754773356 4827959 372165006 293027852 334284292 86775535 382736740 34408031 914061779 488644322 692323269 241525686 860317307 667288058 749167311 396787971 414152783 134114895 643737260 414875455 917782009 248221367 615754717 518763918 890657608 744054968 752574126 215677701 613889207 278466271 609982950 193084163 836483418 791510804 856375563 635690883 763140729 572149196 592261766 193906253 339599921 251094843 714540974 100709400 218231078 142723487 814314697 471358997 887487018 170514916 244246143 139775446 257731910 166573436 991501423 796843988 800624826 590090085 702956237 211836051 230555095 164086075 367293717 275354331 594521767 498394274 890028678 878065652 898671436 286284108 690554186 96257090 928234271 598510425 959634635 444084314 489894629 312736066 373349709 69599151 123271270 24333042 42365729 32560125 71973938 24397138 947277951 343913480 949777692 259181448 470874461 144874499 665260493 479886479 955247451 36835061 888991997 509583047 600918805 161369102 873027776 57644894 778469302 315191438 868881864 32864999 786816139 390659765 728698171 29659784 46003247 4635634 563707550 343314625 964338394 316111914 522946040 35050638 741615312 443468154 939542325 827176540 836978167 747958795 980513607 86642345 216352547 84259216 655781365 629673833 686294382 120504956 237124051 191550290 204602773 62424054 526864686 377552272 629139685 26005731 73547024 14432216 439700880 363128123 877549529 536064936 567984467 197391597 659115945 178503043 406921175 17958610 441543738 330638100 925239795 110471490 401676763 96978458 916198514 819974023 850945012 408523437 474113213 336044092 546428128 396646151 763947413 253195235 456323982 36849983 342443427 86249086 327528654 158473549 283684639 172361344 422958676 115867576 210247559 62542686 78774928 19911487 453509419 75949794 707721722 282227805 456767625 61225605 527583679 429475397 673063223 142789993 676081877 611134633 669137814 458830181 691229337 335641146 422069400 288966204 946903338 902396912 934154136 86027087 579260360 37659446 60123526 10674223 583034469 572522030 640325435 55165929 125356609 2062366 550342756 84797797 690639214 625089833 852383547 257200315 752377102 718032435 992595370 433070602 553211929 137998556 323484419 119625611 482410804 218631585 840792413 266221738 894780992 519694805 917980603 455443816 591281299 226549704 235553031 84426736 358670661 56000906 560677074 93037226 625558448 42581140 893374778 329601080 858391294 434442141 459105662 276760478 583625414 147787132 778360990 585590212 888343315 504058698 869029818 150979091 545609006 414711066 656209050 602448978 961310383 448485105 796168783 99294455 695556886 511064881 923125441 774427708 931123963 274339209 548563959 456400657 705149868 678026853 772060694 388301189 859348171 295285608 421453467 346459277 527966371 310075556 666343228 19521787 352367965 232478133 960409750 315772872 650110146 117866470 225846306 2648218 634569191 128428211 380599589 154270870 302727707 241891067 495363593 492833 6251164 6108826 101175007 39660965 603230933 472890531 583505175 395946952 628127051 224932926 456208753 264992857 750456813 856205 922317893 691378072 976326774 144376039 525637134 433442382 828413314 160251746 355299747 231102330 664644367 142156288 540449303 42071064 705971109 532063829 999002739 824651199 867297543 597610446 711230444 633108903 682293663 281448194 602451389 247001912 984379555 931594882 994771649 976290158 995799709 275115528 307643932 189149859 827571247 325885609 651585202 567137625 890621477 529699138 757644797 103183726 597714235 565295244 632653150 463549367 484703568 463768035 506663990 244191998 517478202 471848085 904522843 93136433 591669060 539714833 977731334 736491861 949279794 751208356 792931976 602735908 802415988 200932296 216160280 42358462 769321629 577164046 938090032 232205042 671968854 268531398 670653921 601247933 898373416 836408283 890981660 273648535 285622522 37744758 139434880 24393011 454755855 387812849 806422530 242845031 580649694 193386505 856837634 688933633 875065460 115760224 384288115 127013616 247287022 145368 115920403 71986781 81614697 54808916 476171820 142109055 478665343 430346942 570677525 382817524 629534928 442958110 463733209 75515713 566364531 382734727 950670266 225909755 706713978 547462323 808867154 693124480 913512478 649565129 949964127 646648902 882255686 804682682 892384068 388133159 894945180 498332400 924801824 843619930 938395904 671917967 925231761 617383271 966373912 25898903 251625301 89793829 792283875 527305908 585406403 198785590 327538971 230827774 471658306 222948973 602041311 548382352 958902501 230777853 441901021 202845037 728566980 274491270 695356760 598855929 720423524 681890875 763645796 171251908 401385631 88069939 165056026 97195790 764650002 652852057 741000669 337031686 776993855 376391445 921776663 775634803 950827547 483045283 672844922 149706814 801610017 240654791 551372977 362283436 376504054 361473667 668738435 215630142 568106410 383081864 650558174 489759152 555248410 516300675 897558302 294842132 991697286 279371631 377175290 242199457 885029763 407372428 522424665 361206805 905739193 244864673 535886753 223500553 497785560 316834472 810908439 610687955 937477895 884732012 900425865 587029975 861116886 365934120 634668746 301337548 600106637 126839314 614550249 509061059 561118282 223098120 985426767 309123916 407222688 332440208 567982345 426465738 795971319 421451151 546391420 346143222 569880801 52937004 748408779 159875074 687344546 190046551 470219363 153114419 816879306 166986556 979960426 289007046 523070540 185844415 900548933 596885693 816914022 54404070 804736407 213050625 925536767 108572688 450534586 161835453 483117900 258169414 282747617 4875647 92294214 49474715 792480094 91328627 687124330 466421453 533214051 472968696 617419191 542250324 986884750 890200184 892156127 788183545 895821185 359442689 859056073 742395506 789045543 593801591 878816434 110835933 354119804 249535133 464568232 169851972 734223549 186890263 439954760 144162550 413195582 373665807 515159715 43805943 588698520 237707299 862329656 718367659 808813378 528973719 996877849 693253011 869433008 684909932 978483278 458701480 917816801 147942779 340199579 320315791 471536323 424315330 511262153 85563386 344337090 121654026 677237568 439734276 847386467 768466982 825591322 709849413 925125573 779209648 856094237 342814355 434804644 348752012 834383186 384714867 693647541 414197712 847701096 223761320 813414460 145333838 424984641 208338710 819466586 108805774 868226137 158217962 599699252 353526409 492552678 315785404 674792862 243458726 358106201 54327600 226636974 57494801 808805025 390839963 538668071 207156874 759090096 452890371 475897047 214637907 744118847 364828959 730328712 431575167 754420384 362848039 482228994 237843011 401551420 103567572 362637275 144545885 946023710 36479442 66723483 43756331 312771147 208799444 353826217 64147157 615801577 521039961 627745827 525118351 749656074 748743743 799543855 710129240 722918267 51425590 207224547 134415841 750228765 427096998 877067998 408358119 773348740 296778222 830991217 511840430 624056642 163238155 363688171 37556462 308977817 158669866 400847155 392115855 648418240 321918967 562616853 397921603 420068081 387401057 793344880 781791701 989444656 603149770 696237017 259138212 861585549 52179048 891739648 19265196 757490919 137497343 940032964 120457498 142516382 74728430 422529459 164868079 881260030 663016400 940068725 419869941 700277846 444229431 742192236 39308850 949124538 504367996 864413738 348466429 731390754 135536371 304767941 54600381 912645152 609517074 754900956 133102050 136768974 45559543 989288357 23800198 89176306 76787779 639027053 573249010 744816345 109144892 750500925 649720395 740800781 475066984 765200204 535016318 726310763 478292240 783440593 142304573 182799119 1213669 738662767 322439420 755975752 436240611 439687411 113073190 368210823 265090979 913204400 758045991 830613590 239157101 384158489 308717036 519111925 404929738 590277173 373044588 520888352 255459375 722119828 258260222 942718422 483282436 799479421 692951409 836069089 703894437 912401352 399964744 857177163 545348795 986088463 853576698 907317535 281187819 440384316 343035179 928409345 853259906 991106708 217265001 793922016 303365671 847434166 146697955 504720450 486464357 779614083 670682894 984104534 754986829 906740867 189572105 602933779 250019450 317158104 98587261 973635470 262901096 879199276 308755469 374483586 27083109 473968850 224604272 414031748 110552922 300254392 275717383 611967925 542602452 783814732 669868171 885037185 735172367 918105058 247614017 419483930 146880154 395880205 331281994 725515860 115537379 740547271 727273416 934077564 387203030 858886649 630013054 922899746 255670643 447842408 81970036 317942600 259986639 440068228 362705361 583237060 326334963 731962222 353366543 473451091 232454033 773975460 484039070 870908553 126148340 443063311 38024702 479256951 219241130 401906460 152402328 830911319 21148190 35664481 29134289 826838969 421525716 710184439 355197484 734078832 347142956 462887546 420773518 502033820 280571534 818194178 386443184 561876343 342371886 554804990 376820625 891487031 90231504 787657480 760657638 956392957 179798451 407244354 29270035 859502610 856506373 877274783 433350969 652696934 146088019 465081373 43958956 415602529 257051975 629029130 246832548 805459399 440232800 654524098 30474879 561402242 188609091 774903629 464539510 927230251 55313729 788486007 326343919 528948917 78295656 880995461 11105441 429648085 236624020 820733247 759862351 856032106 111978659 422601689 95685308 527741070 298238522 846303437 23564789 941690566 371886237 781786424 350302347 939508293 844119564 943045834 510305808 978710884 93090476 276194425 232383743 514442892 122813596 801698468 383662216 523661669 248880329 858806012 606470438 981402841 359343046 656614772 153755148 481851831 1859498 169939249 169880871 482245560 60909243 270259421 114612615 301175271 124448525 164114436 56167249 596141190 55413491 369059505 367792403 939064953 345057474 676673459 131188592 682556075 542979477 636232541 41994921 454878434 188087349 729693557 566867180 918922689 826370412 856341681 337425743 426868242 289041827 943090010 344915561 876013091 510134076 524746012 141728495 410667659 386316971 630860960 333876713 649377023 51367686 953233295 471755987 512465532 308146167 359540020 94381638 753098568 406516454 834828309 777056182 802455402 40971670 811127577 596128439 981772268 896225782 950834611 716137701 974481178 302224431 541636551 320033902 358079886 112504709 892300115 334399801 651674800 80950416 747839963 617047609 708392348 553277397 784063187 452969724 548853863 179363525 974152210 629902799 899693381 276549563 474362049 377810410 578749713 471725980 791580649 94584692 99461045 85501880 945673642 32635882 973281999 923177901 938796556 581060995 919159298 113777070 776550104 157096876 360635434 34676716 311959993 169497928 527370640 374941815 816020184 582150069 720876914 647533733 812296064 592908978 971831434 662109549 907260385 74994950 88607971 20895985 278041079 196283136 207588179 131278994 386695449 335021606 519775118 107065331 428596893 2252413 909786028 548703338 602789069 563924507 568437888 452243014 637741907 260063273 347213213 326625567 328810649 83067139 757422102 743192793 878954614 251308306 907463645 231830973 548445813 342702839 716159586 686248364 766157786 84555193 349158710 343351783 489135220 81368321 607014569 538509609 647940026 103386839 216668883 197310080 352665984 210763969 896731759 520934255 741303661 144007414 840863089 296587059 368234110 287636728 360129024 251947779 851298876 17806319 909177514 165413159 448700331 66649834 700391856 137056894 236478363 43954686 288758637 226501543 296020467 230897585 766082181 718714182 979310851 510461974 967039998 825676490 912475772 216780372 920488709 184891346 248970983 90854380 815948725 200174044 673369273 244538443 974889131 513706131 799646853 774624474 910911555 807247866 977207561 158384782 300589518 220596774 516714308 110184234 144182533 72866126 883989916 798788230 963706170 102911367 560195313 387333982 637777012 232432825 666304269 56272077 69147026 44097048 141409922 129523904 360656848 221467034 644784955 427910782 773075107 718290411 993834290 747482549 760109551 413833439 584003039 413312616 414845052 20257569 668489532 430709860 592048333 73953196 590369480 532558099 931643948 160989621 541521049 295628456 966538987 576973504 966051089 356530378 634067265 11763594 800643305 108221767 881439937 263518714 893591222 736606020 957547313 592365696 812278841 285420233 975092222 963185507 985923435 330278087 518432003 307788481 758030225 21825714 745119186 485069180 980365107 145129477 618069958 106546831 811941775 524098716 860624238 381301671 950392081 369071366 923283445 674432257 960053557 267822481 578671792 7501900 725578314 148720931 940500514 417951233 451703879 11064011 582177893 552297471 585240518 431610418 717579111 142948314 686750599 332752475 492618794 133252015 518189621 42066986 220869475 157625825 862188393 419504674 453352274 415593268 611091247 241301433 478580797 64874312 292416849 233830647 533128736 69100953 252271789 121839532 864883848 311556244 400519751 81111085 841283164 417672027 847743652 637610168 654311927 259313540 877481990 364890357 416712579 137679657 880734769 845071894 968019537 463882560 924569710 282046688 822788476 392447356 570995827 531689301 628356665 188622938 902604943 545917222 920358084 672640860 952892588 268520285 492340336 310211107 754389403 485382670 808304210 309859121 766152847 11849124 618766682 95119073 253064643 137752071 454432723 195712461 836302893 103368248 360617566 244053464 658340173 350707957 708906433 68615998 206709735 23087581 71511415 30966028 250115754 104945427 799818961 605216988 730479798 379612447 540418286 131557886 860582634 665767211 985551152 252093422 811599881 533401959 835177038 720563986 976034846 943566421 971358065 770051047 808823239 33909913 387719717 147009195 398189575 278333623 969785685 384944414 988661061 143194098 434743434 357436236 511654560 200869755 779755320 604851032 990617332 490116269 834724574 562543243 772170011 139118870 578775395 118102767 702016157 563038920 584693859 514898201 596790661 419365468 725637768 402242845 676123779 56997061 535315951 370587243 378785127 254006997 630038324 288334466 689777974 620524388 711444316 704340259 846071075 32216771 974216827 856012658 869595931 364608293 750274289 11001769 707197656 331099601 594147722 410999069 598993269 535814726 946346551 887112009 920184336 429033032 930505452 133069374 870986967 453734303 863426524 518454192 603821822 324403573 566839501 265864791 887274606 776354394 950832478 237886222 789335661 129327168 787247937 244905995 592063653 53183050 704561024 317757162 751518075 481312516 616775406 85745106 580104386 473583243 714312264 632096877 759337761 246271879 487951390 124399139 384568675 82743923 964806696 360238103 648044167 304457543 320683902 210013683 489522785 85640964 264060648 128859902 949250961 114907432 689912412 684946877 887253538 724005185 846248269 46722298 163366077 23955585 377003525 91094289 730676259 4559746 241846856 24292647 876194064 34957213 355855990 193980981 544211291 346476199 861643568 723249350 842311412 472243368 528743298 160712085 597293077 560141995 677357803 139618554 729839724 311962455 938793105 383291041 433917182 430215966 676843153 448367852 600658497 531075637 825663947 455659849 937799228 447845128 665749638 71515688 644228825 196789495 673295228 365020254 738042173 604149092 791268401 285550973 939293871 36811219 347066574 28010010 584996196 340774604 474615667 291983509 718378719 14155669 482470570 313202995 478965360 140226945 489353878 13095702 772568016 581611884 749191966 726947628 752700526 463089742 696207461 739859 985349529 738176276 751081368 180254674 267768804 241783014 729306968 393034771 806314044 801184343 885801671 17674841 335435746 43378982 676699464 514327296 600691455 226956423 486739591 266405451 497261376 402212326 575950811 5927391 539078488 219137161 471163092 469859224 760126550 347291666 730130099 533502871 943128095 903012130 912434561 841781984 844134412 450117350 958886292 360030285 765868035 221963140 747130517 589829293 632153852 453083257 776299134 230774015 995601950 173586325 429741443 405111427 894259611 174069708 476012597 348116233 484548094 280282640 728805551 437101167 757340165 92909026 417363577 303954587 466708649 233674130 758040986 380782192 537939165 245697699 300800923 285538040 556849651 90534934 380398487 222222459 840873504 661667543 929081548 535333743 941016324 138678071 297350915 157723835 793148421 594937192 789652438 356505018 892312690 658549288 807047191 496334850 684813427 118413425 579435608 323364025 905516698 459648860 493156848 219180495 535063240 170413770 776846170 125918836 372418575 219063730 381946822 43891741 770266701 513206640 650739126 517888299 592748519 367700217 933699699 680781401 689423401 306147500 589622643 330661999 989980541 48950741 519072853 268843828 853530261 155695475 505812450 188792723 803394958 414388733 898461854 767705630 926780718 677626216 998817743 498984853 838971286 476751050 481328047 476642507 518533933 463257384 585153525 92204907 658587579 148025260 646163819 418560567 564913395 274439879 909209216 820616836 915755672 754278401 800782081 21185397 486321818 306172431 422371112 174232389 869523349 766993988 859435345 830733175 958271148 680127133 687843331 207115603 501518410 338654646 919357263 675885978 823201919 408485107 866275442 802742255 972455643 970228547 993466742 179207023 517691575 81585778 925783801 29883607 65537798 18019785 968299792 792269582 810518118 503063199 955918909 190639739 211353363 61907747 421029626 270657106 700278573 616720007 960359393 485340258 893400373 637421267 798014827 786923759 844160340 834659401 959696588 696059643 815619966 72686584 717112421 235898019 922548859 64750616 811595412 679680167 727279536 399066203 677473225 132158272 630145230 521993576 688381226 654085629 752257436 202585183 381415726 60833865 384333425 269996580 683514640 545336501 962053572 608322571 993749883 333892798 993970442 552065804 619902653 559936898 862511370 156138931 263564310 184109423 330700856 265876482 683123267 160295823 404813169 86853830 890961088 250510672 583223867 530270874 778726662 2965958 956408403 62755838 457850240 185569625 629346907 475474430 595029408 438785049 875515417 564830027 734374055 105726643 361693182 261210077 885914551 681939902 909312032 295893320 946270624 863697910 933139014 897174683 967089775 661036376 683974106 91082872 748766677 336815579 344201743 71279426 861368098 240642647 514971855 130310811 565323306 531147759 562312403 535945195 753183818 685566106 748831056 747732262 916912053 250676172 459349566 10264839 45054650 10186910 141847351 127777397 822564811 307129887 353893568 54016945 199409381 126005427 209747544 139962344 478210858 282917708 546437000 193776904 900352588 496277260 523868878 156760965 382173936 287227682 932299587 203442419 786579297 76185260 323602918 111275873 845881402 382584062 786994219 696474506 988016843 227662357 702923510 67387336 268741625 21644471 554459469 95301490 267626661 189515861 501186135 159583736 383124152 241074838 371444042 358180012 906465452 708294658 899465794 727710390 747015812 346933366 801277425 274191758 509537709 353813395 742163376 515182680 921666757 489502357 794616364 85544917 256424015 248953384 730986580 167180393 828772443 632663016 943597788 887501269 999487791 320852312 660519453 42714786 372361075 277448343 803676198 271595802 771585876 610931830 875285608 316917213 383737915 254607714 557404289 26952570 331675955 12001375 549386984 17726494 999646520 998653993 999432328 896013875 930932323 776900716 934479320 577085107 833012254 544977027 743879815 377208240 782934900 452692421 716687697 227563790 591973605 512677486 648152918 274812264 536063053 203225369 925949519 737032347 978389129 690495620 771085296 423557197 954008182 402360941 752494515 726034399 925455328 298573014 916292481 252649917 435793629 317989492 454388221 241206384 531557699 32855052 841798512 454083770 703180541 569167099 944158993 499945967 889528004 83422752 230257752 222119097 701918443 439242263 710256120 699856660 785161514 428230195 868003717 668585765 982133906 584975893 790659727 718419330 966146251 806773063 906182207 162544636 509874324 443584458 872335908 773151123 944451825 459848153 749647513 22943998 206775505 12616916 372485805 152039074 304925950 257749307 642843270 21731199 243846025 62335257 267544805 260270758 730360995 205120001 431801917 400448976 603750660 161732316 178454912 17378392 111845878 48229347 582718364 28906298 834538915 669999530 957613826 368883986 402275428 391632346 625254610 439844589 799472312 11292811 282782780 196219036 975358872 214993836 341282477 101759946 962784606 261101290 858658531 296437263 875985046 671026487 813501089 511852589 831841878 671031074 924843481 138520117 157596853 81595329 782531330 229457177 470345432 466402089 851244221 327124590 827200386 78700679 382498624 31049133 463200415 434074049 971585771 668688175 687004753 318580755 552112137 216948623 422825963 113541750 476906620 291983075 981020568 219758254 610029395 32566340 602291879 290486531 659481153 345426109 970390535 415640467 745112087 199172978 877473841 524391899 982605494 912450211 950452015 75365047 142659555 74399805 517369718 420393615 733434604 89095809 462087372 399851382 497449004 381587572 478422270 416988676 912524291 391746329 855480289 683356372 861728481 368731188 454408561 428151240 848284426 519485248 850155600 11959415 228985758 180606851 733164512 367883733 609158943 197870693 643289114 259529535 329118528 194420719 533875392 487068940 871158482 711288568 775673098 369208216 636180318 624938493 695873212 72953847 233970274 159308946 483095487 228625917 968878164 821667840 834496962 437987269 573845836 24111348 50036813 7335567 305661835 155072049 440184058 221284188 250713326 108837698 723040099 103332587 807380832 100340020 901896168 421518843 997366456 370357713 550171608 426610537 879933387 131221402 751151385 398163098 540543363 131394730 346217045 51980611 381115094 351460747 752541229 605849435 684147374 509640450 790470034 124473051 610112443 217118153 607643031 28387833 248875310 36860458 900798775 134835786 149710412 13598403 697941228 423847418 686146717 80568537 544932704 166279862 751146450 260804602 637105582 571178966 665392405 331191270 989169801 906988940 998493978 661297033 966256723 676551799 895884676 845006626 876804193 243608345 373156421 291712789 542246135 434687360 934759149 844010783 925462822 903204373 988173742 581339958 942106918 525506781 530924916 245853611 401253304 49775746 795832058 704724316 737895830 80151631 690831292 583291030 993090234 662929035 664365653 537016599 597521056 511572516 872772649 498066473 879082739 73626817 930764971 838227646 909447192 364481908 429191595 368176098 769357795 74795098 480782890 230206665 873601783 728671802 896816294 328412391 332925953 164632936 222889667 130126870 972721793 756214172 787524706 398613901 440495823 263707684 654540380 645427478 843211064 489072706 862378438 223223753 246197883 232632741 896529961 144957837 746342753 473057144 865082370 852247826 952730758 538337113 736757626 609528244 797743871 730430732 977433372 165566350 825465063 797826171 817464357 311790644 340318145 168669775 910040282 818615866 895309107 21321421 875357911 272445235 347838005 30408387 40758127 22136048 326101045 313679391 381553431 148972419 403112371 82811570 562000806 54723509 645904030 447541152 848458955 13337550 577973158 287498606 765326624 739651556 954944401 468912686 572021387 217380280 807153028 141499609 286807373 239910475 650582034 195400724 811154730 448438076 520945415 290036372 379106092 1311673 307635870 257652653 614803701 251993250 360626393 204627455 588779176 207171338 484192705 248155040 945058849 942109854 959312300 850973506 918809458 767446636 882019021 76271064 876418302 106905512 588926665 470793083 892638007 652964238 965321138 361131140 496673113 394603091 896169868 748165447 826592596 318266761 436018140 102904851 668719141 178355976 289084028 144921971 405365170 394542672 547164842 402680620 611078257 24259124 302208883 248819241 350350851 347088843 699004992 548522337 654780931 533906971 774677310 299749922 883653853 171218812 560108872 89554503 271946483 220780914 840680846 660522615 805789291 667999456 805949192 517183567 922830412 294139566 546809063 10015919 157061975 2279639 877542819 47970619 688373067 45567297 587618217 85932481 945484544 819709388 939737260 382194175 949249522 897991149 900537203 762360095 949906248 298381819 440388014 259205858 319330746 44705371 64150474 28291265 479166236 319053309 847462798 836232258 919108479 297220805 345704347 155187756 357096805 346825394 715119463 507241959 963676767 106820867 839732324 90146209 155913342 141478381 181387716 1542228 482692133 192124738 833827633 811991061 913959345 61443719 825220079 110134180 796402581 391512529 746106614 673139156 917946630 9081327 868006694 284910326 954725866 798139461 839000199 787135782 925525052 874687407 924485830 447422137 795419207 401833418 715721274 456630598 978867017 583677511 832516516 733399212 773733283 642672000 864609597 403810807 546208157 128958532 240468928 203477925 207823968 114661790 804657377 178054846 349821965 86634934 741972071 348096559 705718249 422206594 531396737 294603187 962790750 516014501 824561700 110702570 894138102 211646865 907152645 336269729 848535558 425835255 733394098 526467661 864983286 749353757 955780723 304089983 611541406 227465417 559910747 165577311 498318580 44705535 88743544 71112228 697221298 454801240 534111088 469254089 918438201 750988751 819038605 76736220 516776201 288313979 691858297 560977204 991091496 935378551 956057351 890934956 900576168 768417314 769736737 673803123 689146883 249352182 881424472 789510233 892448975 490158449 524024268 439538493 959375408 437465572 508597448 224742593 361150848 359262768 835586137 442236907 857633592 516920703 924184019 781933577 907561401 536100888 607189115 413663664 954923431 385948897 704143523 215935564 897838161 895214230 989100439 857787626 894794692 882162202 967092617 644340269 752975151 349357999 614674896 486736019 780369859 205346273 316679335 254835496 861595990 365590179 411648763 330126802 502849771 254436536 353952150 27563537 580644987 221045660 951675400 58032690 408636867 366841942 377642152 296043043 450207194 81710626 142426523 46997454 419129039 173385829 575411213 46275337 875593680 520762794 704182069 453117118 921356715 281647593 635688942 9066357 32730219 27205229 640229915 199477221 332055790 287166466 652425735 638309858 950502488 292636793 477373750 366016799 619373234 475617231 541710591 296400608 505294236 423471095 569282009 338651084 463092471 256954495 862636763 644242697 871074431 197678142 322485468 259472151 692948832 23334314 288048252 281805894 840468149 549571200 888691905 637681938 852341518 754110816 784985915 672563287 837091084 837079818 926786907 214340766 309719188 298723880 665075948 561839628 930053074 903383830 995052725 205534418 347680000 63233391 496182387 21824955 746107399 125420247 357972311 45181486 916234358 575355075 600747851 337414952 849843480 236290356 341944122 175359730 239724523 112014942 953772963 407797804 557975908 191280607 962698357 816338784 825220954 668661495 798455899 363585059 707994107 319877328 726631511 402665137 796739407 727586576 982289231 778779273 968072626 357623955 806693636 334611332 793706791 295445026 930210768 441920132 559465733 183563667 358098436 84102991 725242305 359248713 577110319 111832491 903850646 142843408 953933141 843933196 858227298 479714415 621285974 125825307 300130763 140825822 345683712 73281209 775537426 362078210 512077261 9135701 368713815 344598619 606208986 360057165 591868992 295891753 954077081 795912029 839346865 44189663 867902749 847895459 887267013 867157559 922917495 218471835 396613855 58155485 397465284 196970705 842756237 531668969 592349132 552918333 703326264 638376873 994974576 808235967 960905499 818349871 967496602 8809721 109906419 50227356 371144546 263691412 926736657 723898673 998104198 182289463 637158457 430338131 523030115 175658115 407851021 396887056 517797366 467516746 747608983 565566828 854093981 465506490 975754000 514956338 894701202 519362559 918118934 202160361 711782641 7872528 699432007 699303944 830293716 282323347 573703425 98199910 668838151 155383957 227720300 131256024 899644281 587072628 744689636 410552831 585356818 561465270 751059113 131009337 412500871 308608884 763754933 92945182 954231397 163395471 430342709 83703481 689239355 126467011 611672323 183319585 364057457 70026808 183480100 58517446 226796499 134744902 281604161 109959463 619807486 163038771 446086152 385978817 999808805 105023025 637214942 300153300 399610865 263439805 677129314 281157756 369411999 341733885 648264902 510377925 906790177 439668126 483010582 159464894 786985762 120115476 518781273 272915178 415300808 302090164 626353085 511503017 610322885 509740476 928268399 448934411 802557510 555762766 802063202 238170603 428445418 379399206 785822521 401510918 465606209 283016671 761854317 730678916 778678322 342431917 588531928 517028107 911381346 170254698 412218381 65998721 952761919 275611752 423167278 155442423 782606818 124913408 483344819 331924732 386602901 324754531 700579510 184427829 332315145 121787910 869318782 486002188 768946170 2784140 185453318 56714438 725113674 84623546 468226112 175630014 588879856 405767348 703001692 456166427 486919098 267215296 515241457 124607087 579489431 134708204 615261142 11847542 239522421 179309188 705270034 689709591 846631180 120926628 383775515 245214015 743172220 587342469 950286937 789667120 815227420 35968929 849019784 136777429 489334801 358672152 482433184 398082884 521430964 256776599 292396307 261577114 833386594 213023101 713468482 691700760 854122789 13916551 649140652 572160956 906370822 701888133 883165149 632376064 970718181 955000416 995927094 452320934 855929590 644975162 835429079 710027470 915931804 38570726 497484680 496458530 559911517 269624401 625141860 167041691 216979277 193269891 367614266 155664365 448272489 9617820 101187617 96644610 983960872 43710240 983810673 583943708 652703231 327668414 796821675 69866054 715848124 130754890 819837800 223330316 902529150 572164637 827323628 193919493 649427343 517889456 631568097 323548163 999791824 338517718 656447737 167249554 422520041 90170112 749541788 213629050 926426246 914780209 979339008 35007222 446056401 194168444 558332405 309121727 891730162 233466807 937114801 8736495 347815946 16084030 440683056 299649986 439979234 179632669 712096976 50389516 577634302 276753391 712168707 80694683 166230645 18315401 635874140 393713073 984592133 105987250 806244033 486715652 519509740 306668867 395185258 183451921 812080617 765955537 969732739 145719433 757636458 385481466 790159432 639813444 688199838 630822714 749714225 478324752 598606649 534292741 687031578 285443213 696312959 327427857 733966120 717533459 984919732 70138391 665816676 598195177 974014705 811761123 957049840 273547550 409502536 229021269 417900317 381384015 425140732 424115225 803380773 455838917 507691521 259155917 639051154 598280999 777945311 569633539 587977771 422965840 866622418 63575472 732353031 156036863 286968415 230158662 670306628 202501341 516016610 462730984 600778357 351363669 882468611 226627761 517972634 186117863 190018796 179996919 574275757 420520817 629350799 65359288 993612501 147761237 774026401 98673299 317909080 54965247 307116774 164427000 772525698 584681589 650414898 97719327 386247348 254415389 358263149 16121838 870080282 353269923 985863279 158256116 643647881 430539697 618766567 287079548 648227682 205818582 740816373 188774271 782194914 161248887 324676609 122203314 258998093 22468052 345346215 88003737 877901940 613424773 777866938 66552627 513533724 496949475 921070390 715609920 723164222 129248143 740129205 566712336 627995443 298559312 753835040 47298177 302778188 277544681 460016192 316674486 858660218 321367195 510363696 346137954 471132008 50500728 994594836 224477512 401791145 261575080 819364669 81359257 446216631 29105274 79063364 62362049 716261181 25590839 181670171 13198628 770981585 715776353 947039361 8926292 736466935 444861586 736250618 120310613 898883321 740429003 936655306 625585126 977503755 758875416 948882339 441792695 627673546 520267275 939595031 839632109 915077517 324805295 354382063 115912362 186092301 147991565 509443549 413140564 670545227 523372716 596119956 156948444 984690668 62197197 474076660 70909415 564929161 514927721 978876673 80131356 287788223 41347926 101141835 41067471 345219950 27288726 30893188 19052212 519196228 493669444 931345678 580103473 642183142 12873008 733063036 676457934 805092671 294703232 545578252 179306271 259674925 40747178 418782690 1976667 154201618 20832569 790223963 558355463 632361204 492336317 988637032 396726785 844503454 663490808 681412684 546687470 770377488 237905469 250897535 105726975 135421955 91413622 149562361 106501461 134783263 116579213 348649819 222113063 923749856 278642400 524902361 518445510 594775699 331258487 884809687 5432302 637331745 87718193 602916753 379400494 400071069 328210612 719642083 558531085 673470980 80816049 519973130 281025978 929786657 352898452 896468566 631206654 919195358 44502684 842599905 37695326 527177093 345731856 722059853 657812002 932010447 333399932 421868084 34425747 822510208 217276368 414226787 305426323 788207077 137258985 801080391 49445351 944083196 604592318 653198947 355869600 948790500 351315300 951611440 905229146 908840723 833824981 848686204 30591730 826965104 477350541 649132303 27330764 769295044 373291290 674485428 346901893 494129441 97983188 718846138 288990732 515785349 29478377 253954701 193434044 334350143 183036946 795163145 758394028 844999055 41721892 891062926 592969685 641053041 554948075 572070691 22916474 955944739 468538022 867218579 826257552 940724653 603053070 962178158 393198540 605790087 400507001 496143816 349851102 838161007 736525350 913273762 687158526 931236325 544977938 697113459 486084623 836833080 241456356 986753647 635203173 801797170 281444461 775934368 435501745 587390076 448426860 984822851 770146693 964972601 128789146 655255045 151236758 903293733 25006471 818958232 671346974 748556888 73731111 894041116 166887119 461514365 237672465 646242367 317348601 698082870 680654333 848399929 241617211 759316027 515881826 766107993 475127420 923505357 654735056 762672810 749167107 940879745 378753707 749986728 146255542 261770771 104878762 236433562 149500836 528093620 116295132 584103913 405909204 712731864 294483817 906400733 563228886 601154079 398017515 516257969 479394177 907231042 832111286 987320399 568573091 809949559 29585142 819279570 291979614 904863846 830201763 872429874 473246981 907719637 557815917 771226747 101820860 813339106 776198235 843641350 498690271 701271708 125589286 151463442 7615385 44115497 1800846 910907166 333259478 410206218 303741911 754826631 227957038 969589267 375836636 984861176 517172466 563174794 330438056 934041372 442599342 765275621 170009405 217565851 163138346 798863601 9497059 430785712 125212340 201376044 50032816 121004022 59372722 566101126 190493855 927950967 540152006 766494804 253752053 334869551 210872743 453945870 366922360 871385532 8165646 407656366 269453288 846339239 184794289 628003753 578468208 798826953 781013063 926052626 839686878 952565787 194036020 467041160 267146565 870450327 483486631 792924567 110527557 620847372 420224720 665890009 179308799 727833327 591679705 726995247 572927598 821789062 552890368 784048299 86570026 764603951 643496758 701520516 320791113 901022564 870979161 948280288 109259300 215298921 73027934 346200971 22504304 791255665 113979455 177633101 33517604 176418713 171186701 893063753 525897392 575434659 278162705 935492669 603596862 670739648 281295319 489402026 45366431 696039970 664367266 932075427 875701459 941644785 67751547 156589441 74716783 789557321 398971110 771668879 24693038 634644166 477080177 523107564 168658945 244162123 31682332 93634502 93052160 913449911 834556769 847121854 551345714 859975710 524975943 572655734 57629766 123912692 26099364 488232140 449340300 471207543 282605283 782974417 724096894 862252135 769028234 871478471 662737995 865662454 522189671 565168274 463416092 957447398 46333946 237335961 65727739 397321764 239426322 564733284 308593118 564435192 289975385 582775334 210546708 874294862 486641256 702725901 234431333 500776874 235445099 466931116 211008036 575295757 163651794 761220114 540028927 974242645 267856470 631861222 329393029 738396681 95095947 135271001 32804804 461822002 164585053 569396638 243841855 993040170 954658054 972802957 428191363 720295664 107848261 544476493 428150247 867553993 424502653 687698856 81682371 869018397 820958277 900121740 897482100 911162940 241236980 736164647 458918132 547160287 193499928 361716142 138015444 750145356 373664835 623676790 394970354 564782282 500608557 556055333 372154453 626422171 290859591 309850762 248208046 271623063 248800776 552796655 296514120 927857334 860038665 937905188 699369269 718649936 245869695 959120674 752408836 800404577 83138682 207141018 130298730 826356523 609000202 895190777 838585946 952129982 793850895 962471557 75433743 461622284 423290028 843167210 815614421 975193778 705744066 812098426 119025373 268397602 202069859 728868540 242186900 880738002 805113045 815965405 549174387 766176961 571444369 853439215 663697347 953046691 951305595 977406735 730966830 966239996 850497292 963756913 270659067 324650975 96956968 697569965 38941031 702642869 244264788 344312798 188593507 329527971 322074489 893024271 131360309 518257304 258799983 515721016 223304113 247540081 233190764 414804658 350435632 663938805 163983198 241112697 153820462 466049317 297170306 330943699 300691609 444730604 239607100 868903531 701201741 786867720 301775722 958896594 209597097 839740976 404922437 574181085 563737266 909944215 227497309 916111664 674258078 722474895 50783483 358324098 70446923 591720495 259260049 717217602 126880904 729468463 106813009 855538722 16931747 236563208 111007802 838715881 620817010 765840438 304871727 751225228 742227304 968746375 771293816 965324742 809767339 925285296 548292635 993873639 492681433 564022665 361466610 815798193 281943683 356042496 252204486 897146153 66743089 358038835 157304630 432782002 89124866 116212032 114537337 492043766 433183989 624144872 577050062 876307037 340410259 576402832 417802007 470726085 262754499 869452337 313097457 974246667 597665627 928560642 152356322 657637736 577431880 680875866 298710828 495727367 95608304 647336671 472691639 884720547 301465202 525326138 357399924 613783889 138351698 895921872 727564271 894390501 328041538 747255905 465554970 590655459 447194690 536881077 127891994 310509608 135918911 731692036 138944366 942616655 624177362 642553174 191494367 868630806 228865197 290808111 119117658 551958858 517620012 726827737 310568745 393463645 144145624 649659757 267984863 941973098 198150896 978292843 960433490 973041596 147669699 428593013 275655192 356516476 95123937 767904422 428911316 883626407 539110654 686326454 90963548 381103969 172514258 741457829 499937331 734252570 695366917 909249742 283497998 631510777 128414778 544512874 215696777 479941898 99255974 205199123 72999444 724647991 246569694 887711710 829300302 885107726 204836209 786476590 58226521 544504796 513063820 674609770 363914791 404758888 177206480 528145166 452675601 655996065 234803042 833134451 166880007 957006235 899376041 958922520 562604775 700645104 698569668 942082958 70261117 457359424 386125469 684363974 166698828 819597802 703214026 946621056 429065546 797950544 57760496 215718601 155285820 909912678 453438470 923107972 814202766 818896660 582954374 913093114 642265518 706142941 392859369 394978773 157548415 475705679 139912498 878890983 767475939 770518939 175013968 373750015 319807192 732634933 703565746 995056859 429109063 563686128 196714197 978491634 682701576 708108983 457230779 737853645 86489923 257098668 171672131 618680869 47264721 670457630 323164123 966772064 655132401 879428120 626164860 785932850 620871187 961936996 123984055 564054966 325380205 664882436 323641648 336685043 24279844 436074390 304079411 731099906 709566337 828156261 814784116 845210436 749077403 897917180 388042284 628755863 512692231 803955267 74466499 855337048 789196041 888953502 255646386 675784541 105135520 835617815 122651121 317403505 205723705 299212876 265994060 677359916 72173718 317980794 94918185 665638662 509106335 897696259 662877822 758234445 375748101 730430664 173485790 643498023 451893885 782312307 217195434 345498224 74341307 809819232 736286538 980369951 364806429 701670883 183831150 544132804 44559735 247135713 52504124 745146134 78847608 124252167 106284479 633261580 491690681 915284037 845389157 931074573 154522164 549297459 52441051 65715292 39352151 849817294 463480564 775914801 572345313 744724898 362038592 754227699 3603212 844852556 139552119 390035869 260958373 424257771 336306811 789589706 701730360 803474530 618484126 832031872 466769693 842662326 108727320 619184869 97517771 621944765 518137712 846750812 131642577 161146721 110758959 946837150 543466274 562438978 96010580 877733255 266504061 273009516 11045209 34068361 2441578 248586538 162393920 496144695 193100037 998857058 374549095 432258063 260450155 700470833 398679330 910974843 837518813 971147617 844901547 990675968 514453180 733428290 703658659 704837610 414238746 629119610 627557280 971652238 148991478 720267928 719081781 755090464 552515692 806038768 432228413 560473471 99462660 323524932 145162168 374153788 222864468 999514464 72447841 283997167 11207076 995358346 924495563 949290655 43905433 342448783 159957978 621599806 327335903 719752351 325529355 328665761 164057561 603168999 93223638 258274430 73117598 308386586 231600951 564770152 10756223 278194371 118462584 303507716 7579554 492270425 447483739 566732121 526156868 607113903 594326203 725600012 197425590 353959495 42951668 58893603 11074896 717879482 265037462 538016837 356099460 895424507 604165509 702623026 482040294 654865236 620834812 940346987 897278628 984151045 365718253 513176050 161915441 633161962 475158343 573538647 489273940 605534516 402059921 739360144 497653845 916785800 659662589 675937031 579059478 755453564 366881872 704248080 408675453 919156128 688680758 805797260 576743439 623778891 455680160 641193272 237578865 553981434 498073705 542078876 37749298 858408439 607216983 915216809 288736586 735161036 87233526 403895746 166569142 745176186 299439391 911185990 232809153 820185367 707843724 953935588 874707521 900614067 571577844 723631803 4581222 391209296 17807778 678020565 490944962 888469979 508670441 534684828 455805120 602397276 100586143 462453369 364563515 717553201 568131856 651306340 248724517 837691822 261589482 804955976 796111326 999389464 361410358 806399100 721139944 829932952 706945440 858928603 638848207 822713442 625246614 713967157 13779494 884671653 882457748 950783243 934201226 977595953 809255151 898838614 748462914 896940952 236577229 975584621 934062309 951730557 73873570 986797956 423096512 699523950 384899906 398600263 133418921 263796753 216753615 944746873 330595349 853656121 32751295 341376949 87407587 907845568 281319857 617189098 180483227 438696304 147825821 564265343 506240276 542397716 228670352 906866866 663768233 711193848 241942475 928295446 131670705 843708144 168592186 681138652 120320837 479188073 264884031 970181418 790269679 889314387 320772817 490810535 364730078 517184350 461893398 643366012 505212973 976483921 11593883 962181965 675879898 814995646 547418807 723698891 594105690 610761558 216808933 461604058 381485294 934993114 251164951 937842104 419477009 505421760 348554871 767628292 357766468 660259245 504561367 517127758 328072808 982563859 706132140 939283746 329185217 585113331 434050054 562623445 19056511 191928919 89913875 779859541 624974075 885222631 191345853 524363420 194688575 706017487 588251689 754739070 250891361 731166289 145303342 781965849 474460597 931662009 356692677 894121041 153791631 971076832 597264952 838906661 230703449 679002421 295638837 993303023 490399435 806013258 276789428 588808528 432656070 531056656 429562052 627364268 625200561 978673666 647143950 853889577 783025231 808443440 275883671 307055183 41627851 522521382 341385408 777252193 581312149 950864735 62201002 184034951 165802150 169070082 45937207 229462889 76051650 542013694 513970859 728545832 208606425 505186407 195714125 603854867 285447881 666836121 265147893 634466733 299734281 939541595 299466256 999734260 397556055 490593849 14677304 486099251 8578796 500028827 491245341 652034156 227334972 946656456 772167373 949538403 504120328 610002257 292568958 554131071 181087152 490597778 465298927 524954168 58743607 285889563 221247438 619991277 544967630 614294617 581201974 639080793 275164139 951278948 673738602 777596800 25960960 632500202 406907580 993086917 175122256 186899455 46833224 773579286 383580839 563705824 1617393 199452636 160199278 654890217 411040175 577087557 476189122 618326029 260476779 298342236 126829673 789147932 354662906 483808540 190661500 570859144 462529524 984657771 827745983 957757107 585030337 642178150 588960399 673150444 427208076 935560702 801687715 842552369 716492314 863069569 805348378 907135736 15527448 518011695 292722713 818994250 431371351 680323580 167398921 696310852 512010024 880475302 676865927 693717797 480472086 508616639 234959429 616975394 129567197 272875948 150428068 270993505 39900025 651382437 329927525 655956179 529380060 776742603 124865466 548197124 175969334 491740525 454070663 969035415 286084936 858161881 476502654 513018218 335183836 916941513 67041928 585758158 318719219 468390349 15930136 143378657 58728042 654289183 78059994 823448319 505100236 968334915 718515956 957487156 818564889 827586304 158119327 382385708 66674883 608862682 331274068 993451916 869084692 893617767 300216708 341533858 248895996 594279590 100232971 225518372 8872802 564503093 35871090 471100864 10165286 261147809 10057298 725920112 514992863 712113500 212132533 396585270 86940895 447298278 394013034 755634999 106245554 392897875 115341134 250641875 97252829 380214817 38461906 90318821 35895173 635135799 449539415 816151058 815468161 887217410 752976465 952744921 894917407 997250266 795349898 845253893 839325006 890040322 623177056 720312796 340356023 607384143 237016638 366723430 57492176 664421658 24772475 105604006 69589053 326475122 75069151 597071250 423824782 979281842 82631975 226956695 64850145 669624080 558429027 959762907 931474772 942455130 795779882 857094953 51416308 442798996 136419606 391783731 91381437 643454302 97250484 172939126 49972343 558241227 245690419 863936340 230847521 712813187 146783431 207787567 62617436 443554007 259595903 503757608 488484723 589680429 389502930 521617885 179351968 408580118 372192730 740382578 154960837 787124609 328145924 492982282 338580882 654624085 37932765 534977240 6709852 419165327 64825198 176130719 38899301 72758115 28912787 325375496 324940775 651324040 446259108 579794873 45707680 425526290 354220953 445621839 420062418 616936304 465812471 647760994 611820308 970002063 252996447 787461608 349461840 358468404 108671492 265630572 92651286 612277088 471533833 789412280 353141444 670107681 275617567 352377199 245990109 783174017 658557727 707027943 318218802 844323820 473879686 885464414 751341803 841464888 162332020 346835585 107618886 554328526 333785439 893274898 628313405 857317201 757418447 812349007 345109042 567435071 132277704 614679704 186774104 440773145 407253558 886739739 356714289 823081600 734183462 855382458 174454684 924766575 43047566 102111291 49462492 308436861 275507821 919869587 477998824 857107549 744834529 801265663 272480335 478785777 235601715 459057126 37118593 102433975 57130424 501418513 84562223 571557180 564588759 717487549 678948501 835609659 575647593 616315910 243252777 480613109 252850404 665663847 664792669 829240095 515364809 610806483 413879398 555318838 159629944 379994017 207159378 950954033 346126117 932313108 658718169 984292900 176711681 896614475 786268308 799320478 164242316 177304173 51419155 483859225 280387322 923719531 895780983 909427159 491049357 735616012 279203613 401383714 275435358 489927000 165825960 814972471 442391515 655734361 401388493 598581647 529484869 680019031 471106474 542702695 129760089 201759800 106588008 264410272 21212926 100122951 7026633 382119717 213401571 774961344 490925858 775606490 123723086 725605195 150913247 166693809 150393876 167490269 63293800 757143512 693549636 854196222 390834718 458458614 394913741 462345986 32786023 331140306 193754931 926804480 248401412 392281931 187312948 731846818 411761444 512177132 15958512 994910388 323152403 470007216 265303864 880546827 77127246 357601334 34033274 752284175 201838450 509437389 348639449 749903080 383392429 503269057 493156008 604645717 188249462 530772153 523842899 906251816 286626675 825760488 371258931 555923606 459762212 707590590 111051120 592979331 534277229 830190736 270190916 588264599 77869054 990752542 313225772 374525230 58715277 273755924 118087644 650308895 266787889 461453840 218999560 904053227 817076731 951550655 879018712 894363478 507660760 921643680 276236143 529280247 223264879 473642998 342950095 656757085 157557750 782045591 248513366 973596874 602953302 839553667 674793389 964100838 500480570 973961062 583854565 716598130 328526631 947051153 417250172 422575719 150859629 729859585 137261255 936735013 206637277 589120172 69710738 274945252 116149267 126217658 24886441 860285411 712053816 928250252 813770908 899236608 300669052 889920825 105395010 277084446 113685442 660436602 506347671 688485404 580310318 841836803 628435070 933871507 471432292 630232535 199618343 622524182 148426926 784274069 467515113 517141550 255033424 348393762 257625938 351798661 75743561 866292819 594948614 937439144 41562816 47836692 1336713 378528982 18346372 857193839 350441057 455847418 181353290 598070729 16052644 31679344 7199186 120034951 15992209 972871660 591048564 625106789 425724541 792258928 158627755 697093234 563623875 986321714 665368101 966645164 449442406 889043974 770149434 802297893 716652484 725770308 127090534 261306363 240017059 862860943 844056751 971527831 597716931 611207506 246680344 882586177 820142300 895416086 398388714 492091134 63141740 743552866 593332176 780410302 158745261 809749232 155644945 695402480 616513638 846662465 500653346 730281742 326620260 902362555 902193060 910373529 14873680 583950866 131046605 513147784 147924095 626186401 625211178 767553910 499993381 672068385 201564796 585187578 52883222 292956775 230563399 462400864 50709987 549660423 142717221 446627543 123386749 830441478 180476773 748286432 384568605 941888373 228247152 959976610 189832235 218533359 189546779 461022678 66423209 223588864 14365181 687321702 302091560 678123861 73790699 426101101 153310833 456196912 269624228 767675632 92564007 550284447 201149634 772384532 573922437 839472587 149640034 440658461 197238090 356975627 60011988 245551633 137265925 579495461 496325795 937522553 573449079 979833310 643372950 876502221 165167187 301138118 104336985 895902371 13200044 810895471 101155846 379990808 274218354 800400317 657517707 968382307 576050903 852336312 75153904 522091036 236731707 899262819 617290758 747389986 672566453 773633449 72565684 247854617 58232623 906365029 777359129 918831691 840389960 857857636 674284474 764298527 282557393 718274798 673356114 690709478 504414906 815428012 39994350 122844360 39293492 603318164 416121923 443601931 48502033 570092083 122720144 262223484 54936053 794293860 608443854 862727701 102554041 537595610 441747612 586859291 112743920 697308596 514823397 812679533 426019459 626641389 195187232 409884777 356342786 927022590 180796497 287879527 273558009 889775222 483859926 716521320 455795889 679830452 292365651 933333350 243726713 674409835 492607647 809797157 114777572 623535909 223375181 769331394 75991948 664650109 486170422 974765804 526753936 741006110 412214288 553278971 477328557 977825989 698063348 764293740 29174889 631603274 41891918 785210419 48071650 438470229 129901959 903736788 672451148 824505448 184060775 926769665 229265267 978465516 816414452 924224589 328956328 609966475 575324973 613483950 240860359 797568590 660079463 938306361 605557847 779052617 463471808 522662725 391050873 714633870 161598952 664464851 100613750 863824595 213460711 517650116 265183787 954659329 250512806 910573756 578232141 817406338 665020150 774865370 428966429 686394995 243028690 361864076 170104541 623553170 324294211 432342038 44777463 431997735 362062186 537243136 267357160 407267418 390547417 439640605 261594085 928985188 259596189 738914686 378125460 475213353 153516624 414594030 284583138 303227792 2676501 307584189 134253963 830212958 64333238 628623123 333473484 596301885 408986622 652645559 547617253 987300244 144707474 815859925 247380483 271386534 88020400 409194988 273314440 598942128 188156154 397504298 267245166 740856462 25848348 80015533 31764703 797528437 787795581 912322502 623390574 996481374 183213767 503200788 107325415 160065799 66836157 561628346 443376467 552358617 269077549 826054477 381741624 517352150 283541575 392635793 162516527 627134504 226223897 746485160 652308377 765721744 8297675 226157527 34328626 247358702 83345287 630159762 457549907 951359697 195450904 815973994 580404426 853518728 540020985 810515476 464804061 801177286 329647984 772335375 406553447 662742418 501529826 990796067 33329699 959148695 679617545 735192920 119893038 671361402 437461474 585368106 435820432 694457861 430850666 648912070 270558808 481908387 239056130 417758747 290334517 599172588 201175636 606490062 267217715 573093741 209021990 828990783 157087573 950681795 91267749 409987567 88659936 810319230 577470471 578771415 534001309 933069505 931091672 965055964 206945193 795612235 427513037 875173188 496925015 783984934 629323971 940990755 453128799 917826719 193865927 308765213 57297427 86840567 60384332 387340372 178107258 723616044 391721232 800449843 597616692 949586921 555983244 975270454 2724459 77706904 27864266 953823520 633404837 747823516 546276184 731253414 687394412 787243207 130233888 780129065 500234417 954855050 287319911 728274987 578543719 862237697 349023522 938908253 899688814 997974270 539716312 805111871 137675313 473430831 235532354 376308564 256959474 449455673 39187136 129039063 53396593 319688184 52341418 70426949 42745717 681448638 368714685 653780498 375538056 841734585 230030643 975409400 251957555 386068838 89783684 658308188 599908764 959319261 212666243 665917721 165371813 552205144 212461051 932338566 581925430 880455442 370026938 951150298 492107495 959645270 308875539 894028751 329386664 752975535 23122857 738386986 546402922 873380105 206809522 212326932 159140394 482281067 233511909 526272882 416624850 705906562 368096992 735158980 261853000 710227576 313941472 671387747 337751286 825894396 139135822 209371850 108889671 723134611 433023073 942280703 235750485 808986151 213335820 938181441 776594942 803805117 639309448 760454396 271129628 824237220 142240474 722887344 520597313 875139217 402970280 610939004 132076253 791297024 201095703 656002734 398467848 811197705 258186056 542599732 347500573 815876364 621805100 863891642 541652887 766552326 753604800 885411372 679409737 787403361 680984852 978955980 589931514 674814041 533192428 892189058 320828532 660724089 321792533 562546120 274828750 729978709 349132694 548925682 169090348 390631139 56173127 793985444 408983674 409383804 180898636 262651909 191982137 822449681 723064661 972821606 892592182 905656651 202487822 806122283 464742907 844033234 397054853 647214930 299580885 841556387 155798054 350025457 344246437 949187001 270346613 404812784 69995736 229807838 85442911 913443028 845858529 876622710 426621540 669878758 134282582 619116067 242087535 995312601 130004796 574516963 245703366 426474522 151441187 224887041 66902479 686836014 422513553 700020635 619754389 640800792 581799034 991865104 291686411 695802779 572279073 841275918 375124814 409523253 326993994 614514125 112000747 262113222 252441746 535431346 515541332 732443539 613914125 999075801 842929193 902303932 45216782 511950267 393647246 860559658 460032357 612432621 140932828 432875058 86465591 583447211 580207052 824784595 682970806 959897949 347556627 998570747 675495558 826525562 595565961 596563625 387911904 762880012 428960437 805579931 66975279 310976245 232806249 428228800 56833401 482101081 90047040 393940208 75398601 275599436 59238459 559506499 360482188 630316784 376404418 652325538 455314503 546696303 251994765 375270483 332711165 975308109 717380594 728319148 545196775 907573813 199627398 929842381 503527637 505754725 406903389 587635602 338327295 591886831 462632936 656221684 615517373 908178785 582677927 848967539 234884681 258973953 114660404 175356954 54194089 89189415 36347838 619903140 102970580 134653670 67936356 423533968 106075775 982769717 946500143 983591174 58399607 288813725 251310455 563964449 117194290 118694995 1659844 864896316 628353924 864503043 651131036 667193183 565724438 651505709 610820648 803258170 106948118 576053324 407904979 522966793 79124249 837762729 430261148 678004752 493042007 514596258 173698745 693101738 510014610 615487741 332288117 445101863 315579537 376755550 310035643 553009681 155063812 629300491 422650660 770004630 182875814 285418571 191457237 616504083 27933487 858826665 504884742 692951476 612703444 867227017 637968587 842857107 428843715 654094939 18866294 716282971 207130776 459366622 341652802 480338394 14668189 268055568 211217843 427153215 421757233 830084716 93161504 493555574 368692469 973045698 906269284 953147470 512764778 979697463 105124561 653864920 213323751 311619947 135791475 470167887 16671317 170537050 20701997 165812750 20308333 871519850 374892267 395209282 164920996 585520551 40160551 822254017 550416662 858847633 409554794 953654499 291919193 339736987 39769956 438716758 124289988 852401674 111318518 995516394 19747427 384719653 374427551 566352179 15139773 886472283 776840163 916570133 205207772 364246680 22356551 132241679 88298432 932409523 891726783 930812628 884294408 920193077 618422705 818977721 789529549 887430311 746806106 773164547 622207802 791501711 725752077 801052037 164977948 301057189 19526652 388185595 383887065 801741492 217792715 831223532 432240645 545899621 288120479 988534363 782398667 886791276 442773694 614523938 449381337 567276765 7515357 526331442 367035787 879214778 566526078 872359952 408790042 780836861 402298248 827037703 585974195 706758314 682900824 870055658 719511361 940121610 873216807 904662868 819499019 845807297 695544465 957324381 945591882 947046401 682501674 925625776 136237524 896280511 796102454 821129947 547037993 678746577 609986739 839040082 700320514 930173617 866416225 901601699 186147111 936691923 434341986 479592375 400891117 929138818 784516339 854941413 404795817 417241336 413651019 486273511 67752882 455485944 259980611 313514647 45994304 755989234 417299478 470661446 208044678 772266000 51139939 213793840 27001538 874154419 272575219 984459891 15261223 853338311 518792474 542757214 155748850 943105761 601549934 816490622 454418961 948879742 23422452 849077585 785867445 895242128 860414552 978567622 557144008 709975708 63447322 784792586 767623289 961436948 582670279 878718778 717836265 765357927 748692800 960493953 541060065 883843743 672855875 779167539 287594239 899515652 548600305 855318558 430681188 940061348 469913909 546390812 492854603 576181405 396829746 402041331 117879437 412295044 361493378 678434008 158961609 441987213 107413266 147077228 96349079 284761026 99225590 603981891 343505943 778486756 743668538 837524875 310130903 619580105 579295216 915790338 808079069 901279783 470589313 631287515 171671964 589668939 282841197 932590634 16015553 160226841 49710577 889166252 763713581 990016158 368601019 439899302 40446004 504421200 459232612 839397662 808054295 968222314 60604954 487054445 274989875 313562031 190497998 774425886 721394291 938256445 904986954 929040591 272824455 558673817 37155822 86188558 32163217 639300160 9096945 612623230 412814844 992569461 114882036 166772934 1999607 917950297 324070955 549552731 121124187 929549389 106269562 738384583 14198783 423080060 162032073 536419553 503057860 599725512 259184873 700262554 76718196 697970634 138027878 783180103 513377473 884731986 573094122 612072993 12996394 463734974 141585924 901406579 557945760 645871496 400636135 732079435 321854783 947464034 471451179 776342687 653575631 971974624 308105041 766853571 111241911 579906197 27278880 174512972 24216696 369347441 366275169 520860778 181429435 531915883 275394434 441598223 9317250 26149933 16773469 487868763 268193537 457272903 396169309 807345861 553822040 812587013 238923382 493163305 219916633 766308704 759894758 831092866 232812174 709836719 538719611 900149141 735204536 842290343 682488602 798482016 229591471 661597227 51815957 604401714 39494360 401085281 117648302 964580789 819130798 994441937 444151590 667569643 56342930 590199915 253499377 644586102 165767363 301721577 27670472 496936657 258746617 780854996 101764277 235139344 206620281 572548222 249700178 773013182 170929783 171272214 35991192 244652126 164405819 491674631 121619984 435329285 61605961 667806290 143392843 971758229 228717367 777183089 365185639 476842337 252317641 971807892 846644664 943897778 723045342 732053200 10298081 822638839 362083070 887974158 89453058 96685090 960575 849544557 437114068 892249424 271996459 657723977 587447668 838468052 250887394 981536989 143589673 853170120 611784246 758573968 393423606 743477296 100277015 799188836 182765932 753186709 494662931 530696743 170533044 698086945 676786614 926112395 899526314 985539672 408250780 820688716 393124653 773003722 307684747 817666409 668174292 712512421 76765729 616163912 143475290 755775764 55236428 975913330 806118091 957939816 91840966 461112046 185419382 886893745 402929624 636733748 281462462 875291655 780976221 920515236 125304733 987990764 795907806 999253381 782727867 808351095 328624760 573522605 52912289 496923451 398266731 586107859 494635858 746341046 695893038 978992717 745092551 843767421 784806299 951000138 869434346 907289945 322540788 981141081 913405351 979601007 135236272 905782524 307359417 319470012 1230751 411702508 87311041 393811388 369423624 718850609 207219891 883207475 873882468 996171654 30574441 602458552 418627109 601283714 280475712 721896817 45066406 930108874 117387233 305587535 270592451 491583976 228107404 844282004 409680789 784921547 693016681 832523783 94416143 116824231 66855177 71860740 18321560 790031870 168065681 174109302 139955961 794349064 549915288 705175738 362487207 682047026 196197296 397819602 377692285 404397979 232958013 983916806 772907622 876100833 386919680 646583033 613595317 779029236 77193654 354299338 285009854 904957880 60301722 171021901 77880415 633310696 165867123 551519159 313110191 767521400 411466564 690411389 175350739 381505914 128756608 581982601 240992133 905497559 394786978 942937332 879702379 986734809 609879571 692922627 204191467 211179523 184380751 635345195 88662088 711354010 595422548 712255104 544882066 555799952 149964076 806192282 560714349 789592226 775743819 920371457 198301094 306080844 188017736 867199149 548620807 943411216 911195308 953682813 434165405 602766200 53387886 415997085 220530571 304726215 186905059 958095311 540548000 557894280 487399831 605332621 525613706 553558323 335141489 927216316 247785341 341613970 161370677 701681018 71729676 192368501 178900430 327714241 238900842 329645839 36030479 147497875 68132837 147879380 107894154 260461757 219379138 794560530 13698085 899105637 68666537 919296660 535740045 630988781 107492604 367319229 32151383 687528041 163530038 534055453 14187782 775164912 213314841 912945739 343526564 486771627 372348313 570025743 109871883 866911216 183193775 893343254 100366892 460363994 149164446 919068928 445571106 779570198 298404690 358079555 305642515 444320800 410239136 427674088 198935757 833119644 347502933 999009515 314861856 556333222 549845382 897818783 621191368 754204787 296556627 860811521 257752952 560511361 198937393 825835796 440210903 917701376 857080332 950859316 451709580 833459177 178852936 548042094 285349112 791906570 469022558 478620685 290851883 482635458 369204747 578127251 46817033 748154608 628342397 837261323 705979974 986224065 923365190 925539209 355446409 356019597 128636625 218438644 174432875 997148316 897239911 920764263 342342293 749982154 403163526 896405215 718495969 839089436 188148475 892613439 83645064 930302528 40481109 980862786 159058185 509640883 363568111 906634586 83637531 649358628 190688203 573520492 532559713 843932744 465824940 581272268 572890922 805554774 518409607 655821684 584642978 704510254 554522300 714353858 509557144 844960485 409722184 859558678 754109592 940189729 245071303 924161358 805150436 996637299 316556020 373773255 317216588 803257666 633899119 664864700 389798477 973649211 375852139 730000948 323197433 505679834 308369303 565213508 437386867 645322728 375648667 500599706 423322706 693078862 24731757 613117902 467227862 978215371 658846581 927639957 134508134 407675950 296686674 461485039 183352340 327302561 200393888 389967494 206348239 916254122 856730433 897369064 69583015 933554737 906325222 923627691 285958466 372317655 225955306 911474927 513072649 648443009 268002426 974980408 100551107 622254262 382445009 947974546 861190681 977696590 733400048 958799107 563670268 891019472 888986186 926189392 806120638 893021242 537955312 682296340 282827155 560874413 340510132 624815885 222289313 431083372 145892109 301369457 258125571 676400378 415378872 508896921 250286213 264494303 219608956 786703290 179727357 737344169 483924994 769312357 333921319 653825970 14666794 208134057 121709936 587920663 367491803 624517928 93451213 592314709 214309446 275070757 141391723 855084942 481453773 835579572 401858460 728883791 47003462 664611222 383526756 415120820 226520783 423748608 188448033 267435695 56410899 709942957 474329638 626046440 33426048 395910846 229324198 504291998 198573959 361319380 45290570 570817086 501231953 637329559 144584919 441389500 122250187 728996514 503846182 919695752 436714043 517513099 271478671 822939914 275377494 455274241 279052403 676359330 632205485 791606717 57628487 368198445 156812753 205991973 79558232 465377410 297615607 421849781 394397582 874001898 641518248 716594159 269717592 336372254 248614202 937336086 52701153 710035150 409821522 485025784 455010381 811649516 715082875 804669120 567310493 936677226 707360604 925606609 159744853 672509080 28546874 456824286 34198997 653597337 423442649 547728786 254859580 881903371 95107189 724592732 374279863 419630559 284542365 851344834 385877527 635770061 133692034 661611439 214915580 454567022 333278423 369169493 196834490 428365846 283640486 910092823 365964809 638880085 139965783 577819687 73703674 596267851 319282141 500173753 146557649 686222071 426126927 544161190 268068141 469615692 197270380 471483904 84051084 123396244 40407798 705144050 49665504 825397161 37596231 910380753 502803840 538723969 160800202 745362638 395967722 419543717 93444949 410618344 379320718 399953423 103968938 246845765 30378230 233872300 64061251 510755625 487199636 509877646 30741372 42630132 20886008 715853216 601349307 969470792 792223709 858174702 474758870 924314292 615823205 762939869 752269887 983612034 673623525 770606721 698380047 808523765 226312258 479711904 69065250 721118912 491108977 866468074 606487554 957263407 936794293 998396004 723619548 830748982 619398031 732082034 273125930 323734011 229875988 998970732 397970739 617366433 320990330 537597743 147449854 180058315 5648028 856534623 838489274 981700902 599905248 768495714 715272261 779863070 65703936 740007224 610090834 806529956 543463233 893536139 856033834 889459838 801506344 962144320 779219248 819067494 454448962 930073918 3165235 435308211 123470098 655502875 18323437 973519498 861989027 903769895 493324923 737033531 357092789 996898122 279861259 877595938 198204796 910383047 660050459 917967711 368461246 507437711 120667543 630335880 344388724 631714751 45223405 221151569 112069954 801130458 573029244 606929855 64561454 511837513 81193409 232950879 207178432 467545259 157755045 629197561 587890247 878462536 76674172 186154132 18366302 704623574 169688572 544879363 440079278 903034808 477245352 522304866 310595665 555760066 307373142 862578341 550745650 784796451 373580841 954799323 349955647 866403170 260343290 357091357 28444404 793034482 338158854 995433307 396889924 991917848 512892557 901256363 52459260 868371107 404587082 797784269 305210725 908932831 487774665 966667851 808048918 997117428 551420898 566310705 426262761 560135103 449144961 766873432 648101337 826835442 235869161 351909409 320175988 412969313 397003316 539145765 133933144 940607950 6844259 852973748 403835187 726334857 229207389 824802994 502312089 706434936 334201061 562144316 418053748 521023231 266201551 903508133 431071932 632829639 630176458 926674990 797803087 816613557 220494751 444507741 165586477 484146251 209739490 387755765 20855093 922541877 602766642 907551877 893768804 918638680 746792779 828941550 492134097 745602587 86075238 252424375 244066353 585804145 454791120 884297569 259419667 513775058 150732197 520021743 274622425 934937369 361363597 519593122 83745790 417325523 400119514 521469070 401954297 653549985 36182136 106377071 9798047 112481776 10283643 60526150 10772797 924096316 77608262 287494089 179613543 491896625 89540786 713004334 613358227 653530111 509534949 599653703 185074010 681909133 162461517 533370983 225823155 302728176 49447582 983040261 411961353 963427845 368119160 945216041 616201035 622991771 609556272 788786347 108651597 631981312 449459359 777641709 771512584 810150680 28322970 224010907 97860299 914509704 809144471 911639909 472051396 845328658 171958133 812608048 10650848 150971797 105204937 948745370 211559701 376875981 222879684 666056219 146792695 233498405 211919856 729376582 568749130 597351697 233308347 941005502 667039451 816354569 524552407 570561970 212399636 715274092 346768151 981903019 99097795 543185263 154035108 585147064 5106188 944071948 499634098 832566238 591871770 809725290 588443351 916774305 888090481 963333459 623101446 944025324 231621207 922775226 529782072 743566291 553940768 877513623 631737067 970919080 699735 515196258 203055966 938613657 673177387 733683196 147146903 649496008 318831018 642298151 597606535 981806990 678373279 804055003 234905262 563162850 448299499 699962207 403806946 572921515 112737008 377559891 240590731 355035455 353828959 545788271 428243623 895123919 482146592 649108164 444621243 496101782 192347253 378988641 200387040 214597035 34677410 795143598 650381717 947326994 467745059 476395128 66408020 133276437 81193294 858768315 619441209 755761683 34656694 392702846 298967532 561122809 208727530 503057491 330318465 841866319 398752944 718985006 469842650 480485215 476584887 572877550 117800626 930336953 474464764 669553663 641103525 940689170 73675806 211072522 156934077 874269621 668781157 758521480 395242978 618447713 449662746 962240174 902351755 924088290 95042274 372451837 38554418 992179244 835483613 913710469 627372658 996252404 76986845 310834202 65265628 650769316 87155451 161314225 60459281 221129279 55683144 203947027 35044997 540752131 373253095 682858465 61194883 653603699 322516508 720805457 94772609 260990907 238806206 472497794 161893583 292041856 45342328 537923443 55094461 357332351 275928953 736131553 133877104 823700389 53008561 901015274 379961003 409565343 347341026 943637663 167491343 543344445 405288089 722245851 98888627 906668296 250769979 936937803 437377381 612130025 71851855 695116068 468592289 555871049 57898694 418675268 173309035 559650971 430514944 878762971 240031081 671267703 392677772 978445538 353359872 461207128 128875005 187009266 184662862 922777368 695873566 981099633 710707117 762259435 198411734 372904510 34558940 220064832 164926798 872517814 437281447 754671542 289868132 577386821 433576440 720533503 492012246 811109730 411424628 763360362 568653177 913890223 888208953 934907760 897971799 917392958 144185021 812355084 77691268 953374674 543444434 589450510 557658786 973396141 795436638 826017931 756388642 818292757 595462718 595863681 85015437 928571538 252600422 575874320 100497142 617814494 275504274 473768704 418989745 735465996 61548791 335141764 172439085 482844435 279989085 706072150 48944380 185095339 106850070 747092139 547218296 891720983 28471285 457978544 163144614 388394098 72312430 201751939 44508195 433500342 313631311 542637819 464595295 515749324 73649398 226947793 80198842 984260939 800901630 837163010 376491297 456239519 436380103 538571889 218295482 447737180 261661175 738162840 404771743 886787944 603383381 810999574 158672874 554144805 450789998 583890337 294662320 850529380 160326686 597834449 499040406 842728698 360510710 571430591 459580191 949735529 127709720 208765191 33540244 146024330 131675218 135625086 99758270 259792631 64583544 406316303 156921387 466108666 323057198 929086838 846721415 966044850 250828113 268950424 194308943 917741536 333779758 781039940 677630060 825345590 18858741 47903095 8951621 471765652 386401337 773572786 415968050 570131354 271132724 540800158 510829719 826111026 310756398 421079798 349269054 852693746 236427318 610109035 480700966 886345884 254097006 552943271 274553779 300654638 263500967 637184497 258750982 531021882 464708381 711189114 704412427 715029647 558461470 902910962 53797797 209039364 117612904 571358139 187551712 953800557 758988677 999803259 819358754 889940657 376759273 783839549 558406269 916564344 732437056 968473208 532074652 669524533 656861089 959638101 346951805 791119979 108953293 420564993 97904201 223078867 220901437 780333457 763334037 897274409 491098629 956213197 689338215 755321181 149130807 188565371 145276904 752800776 688833553 856069648 515574453 602314335 367042189 572882302 492636084 667094767 35142867 685698631 461230816 881718819 751015584 980417269 189077054 597409794 118588271 351942531 324723200 782556074 723449286 872717035 38839223 629787203 50928929 329645029 46072853 804253400 139261772 834469015 382268727 854157849 122983934 795141598 718751837 957587076 844453157 926379395 87906742 561152033 491949246 726285022 121611866 338888942 233231466 419198898 150849819 166647315 84923475 590438569 212824625 816730415 717719922 928393562 645817185 660303728 539692878 752240080 205396333 578883702 346033853 573722067 413432961 591432007 537652424 897750114 851607840 861260821 784159010 855853664 776231312 865240176 549462560 702420472 423902281 808586908 33136392 708572329 278570834 742183383 52297145 861938381 726772770 904253194 170465584 439732768 357326019 422206600 136011384 694036343 629491413 679417973 238844910 354524424 354426447 612326540 39301122 211038026 123834229 450549506 369222255 662170419 96720818 785418795 213425706 329736952 24380224 475645798 185204952 438022500 4310430 397910007 306696930 374663622 312422830 998688192 321987035 545079193 94550305 941796997 265805706 511510453 160638128 168531343 44786276 930891127 783559549 984662007 888737411 958587818 26327494 955505281 470530726 841721063 839211790 984703539 289621396 494092327 97260512 530453624 733715 343964340 61561050 437968639 104285931 343377921 151868520 177518460 32301796 836032655 717137787 810376558 297848822 386448084 235637102 734845221 542760491 689521439 683202641 897053474 305102238 385480318 168355402 892983688 330509560 999763773 847822396 959946216 359805323 630851789 154278617 612001136 287485031 489745458 207241643 654553780 399734904 673269835 281820041 895087165 349043198 972656685 218608853 221798580 96415248 823535544 139075699 620303030 387281985 986162562 753441596 865401549 770689481 881339355 855462277 993631725 607731578 829471722 523426309 678683050 505628588 941449716 551620820 944723805 276057365 845105390 670151020 795535692 265295900 593631970 439861505 747084700 734708426 809235561 443503384 969085595 263845492 359349974 255600893 498954346 81390326 272597967 102555083 245247635 83643069 771073702 370241151 791269406 695338367 879251848 740317863 772474093 244316299 877553471 386092869 624386355 492894922 945892739 632939877 918841457 287578452 626562030 2731359 545240153 415660756 950035651 618287480 788946149 1580340 748422974 177369230 411020789 290721723 667677052 505619346 905468418 862139110 955247097 14879754 604785426 480707120 647795317 563948156 648841513 11229303 928596184 435886838 650985923 186515460 659101488 289606612 714300662 651518182 667593931 151360124 318414183 257239139 900457213 33501461 56475557 48450572 977896256 501229761 759369706 594071739 843292522 541891909 926486426 751249107 764626800 216936238 902103409 891886438 922884340 709832211 864321744 771932745 852775156 56306192 567355178 383356648 871154190 323689164 542062559 24160236 628913063 140842955 525839427 50539974 259313953 47587443 496396391 370178861 924774436 918426068 991350328 956954933 993112723 678123344 946542574 299078660 905395332 663395469 918452446 748754393 980349335 955582466 955702217 402297611 957906152 481013998 887622806 575849528 761920218 544261009 680059589 221724475 445453237 331721057 477223350 453781558 668833325 588833316 633082771 329041246 901815974 856325185 991494780 306128271 778391230 731927001 883590956 209266588 604927894 494523552 724013910 294677769 906139470 353972768 479219883 315869396 592935132 289879772 651566933 210589441 566996585 53106644 715600925 512144937 889181789 626157129 891536731 840619892 899918060 743452011 976060729 557224280 580187647 541071069 814869286 385532605 840667790 272667710 567987139 262715659 984307168 942595772 949759877 656392173 664216659 634121159 898134496 272995525 581544009 50560299 320386384 243141646 967970242 201440143 656548152 202105138 951079339 141331405 960057754 288495427 519502595 285904479 675239853 361571558 478195897 23043643 920400819 428642253 430108036 145267291 282522360 269374676 946939618 843296835 863352467 145752543 767492851 340663477 415355674 148646913 537379174 449098242 564325631 426273760 901166848 870230858 978620000 952620687 997715755 364240854 636875992 483367736 954815988 639062620 680344946 588250073 847269102 487371845 701596859 282410460 668102991 567463761 657738857 481287916 613503998 130252061 234260389 48318545 977068447 560636624 761588553 175892954 786815159 709988679 824999906 224814510 516991038 81007631 134684011 33712347 836959833 811594908 835705469 488815229 926092487 125192247 722723289 274679432 290086494 23095142 413895625 361470823 904933229 832139190 940482137 889132415 948227113 192557360 370868606 88313217 514260860 322101842 377579595 138210315 988683857 587834799 933951712 343550545 628305106 85586267 199153875 8838929 343192605 80213696 850446023 550719865 562832883 334491760 358648871 26723035 504652556 212980385 213460762 70610099 949140815 254399739 920432296 881656017 951725110 906052116 981586708 148288992 633078496 578869250 991639845 665835479 965152560 56833392 154544216 9197301 961377706 570358003 718750861 253131608 973357772 2924908 757584934 27167078 667605384 582524799 891237325 474511942 850051917 29947071 728866119 7337257 696466844 587236678 679405729 238498868 275288367 122993010 485118203 58355849 376649409 55402470 934511893 922961402 969941767 219153274 272911123 197252652 198212161 192843887 263116977 183237552 514265514 375391119 984070689 448685279 915270974 405146142 609422053 109274852 568598368 61739381 587528709 527618765 899418540 317151719 556168541 507790739 954325933 153351581 346713391 227060446 370573615 302480864 311345469 105466242 787477537 503571323 952590898 193152514 415201833 182209889 328823428 4701242 494180798 445947077 472617493 273569 32110026 24312555 286851283 47399682 947213980 913964473 978285207 838185773 891308189 594668579 628094462 486418201 787837539 574636912 784016065 619383480 668786811 224467547 846189766 714220473 825948563 798083420 978166008 151396534 300025337 33357464 871168706 409609003 430629360 297511749 958441796 546807614 680591869 437889835 675936881 151356746 362190193 46165172 832929887 502949741 854033272 584770737 983061605 771654200 863795556 326391979 520324214 473885507 905669942 901122329 922142061 522442260 832554025 185431165 230924020 182195085 771896189 252631852 338667881 261316188 785474226 140439279 382335970 168276322 834204724 533121685 604879553 197880438 457025591 102373979 911323703 72855301 293295417 193020451 908224699 284737425 335851165 214510659 816943610 83169465 512181562 28427434 400034099 239529062 877166379 130723682 504079332 352927422 685850494 610603332 632099666 79820661 364272605 314028518 829972070 374199016 415959004 261956078 369499759 226227440 585754788 358759855 671462089 458309344 516870108 411171826 623040381 166653767 926385045 316846930 409171219 298085131 742838851 35218383 433164323 372584283 609544654 211842978 692864518 193893471 908135372 33991958 397168345 156923555 574104856 207500053 919582544 505487636 664606315 466056637 659387340 211723385 936108537 657432430 723917088 452302014 674931962 409681290 474743947 70646570 167934817 14650850 898351458 721630349 971754747 636235691 707466665 388658772 440964236 221764928 842689488 315231799 477239032 455898000 848880626 527785922 873123934 308984253 855912059 152872493 579169028 572781025 705763300 167881136 496479486 194989071 930220933 756255539 980719305 698919606 832707715 118998110 591274545 192849299 642621087 395232285 640034755 479328844 741339477 46072063 982716950 871450120 988710950 718351113 740149054 739276089 842901916 498189843 902346539 79325576 217453525 10742075 339384154 338391350 582972283 165820742 658750266 25292657 479527305 436904112 962490559 866734386 905505678 232071325 967795003 285391149 468062294 278391879 778739503 563494651 566476898 536049048 641596433 500411212 592007220 91216921 529813694 328052063 919230714 411356888 772049727 762083481 849092343 78999663 211531613 91493303 985399498 53772525 371621546 135399075 207563832 91395683 94704004 14264021 975750663 298274314 710952377 344375037 982811031 536540661 978536617 887043003 908848170 395297192 644250900 226452695 637936724 535592679 868773948 281261143 778520105 495781553 885976299 705853705 735036894 302379623 555255695 39196226 152244736 67060239 938932395 370179489 860179211 63380472 71592305 56620599 620723310 85238584 927747613 774721605 969495185 559032206 715707086 493720912 586966214 328731673 515429595 51035391 700808747 667197294 805663754 591844223 972129687 176273736 348575846 312550938 893907589 722220481 912033142 81136509 354660144 149175324 946728425 514367101 695786770 351575740 495954959 107964734 298918969 114790945 128144201 106932817 491423805 323918842 420743925 337606715 731937982 507785938 918054395 269334421 639250109 624854189 825875129 655632484 826842471 788707666 999764287 204334132 599717235 366082150 888351986 528234336 557348062 410991227 439318638 266398878 463408223 4440879 275057235 208225920 463041047 292247038 610631861 435590250 850928375 170946811 560110889 534402989 594341297 72428871 118117740 113671873 319735122 94591887 656597155 236540617 401451124 170978240 714041849 588036348 951802012 86091748 157641237 59230537 479882600 223109488 276404348 30482117 987075382 258469759 692591299 598216890 813160619 512846820 545238979 273929286 808474622 382072947 460352995 156349852 348367394 3420980 576656851 429210523 873378033 552222276 597615966 27175075 47208474 19213193 43840331 2653656 964487428 123556707 951087526 807245088 830999978 538949175 851340051 294847959 467357543 205227094 798186384 683116375 918566311 829081579 985198120 580531859 746672413 296951749 394687554 162763865 574674798 510996880 739736639 439593838 446279856 308100737 908382472 601383271 869280658 132486422 442587732 151912682 735236096 337379531 520826470 391854263 598453418 273142749 912968356 379002744 800070064 182469916 728710420 50640118 563168468 216075325 716184566 575765419 834771052 149042830 194151918 157297762 953728754 586896525 786897553 347031856 978665601 846283985 986849554 88287872 916995909 389821330 699216951 360224638 849103131 357499281 847188991 588372262 989779027 63552048 749829211 168992064 644692223 6218212 137732543 79208621 332081282 141886933 673524566 654926515 944521126 379336919 929228060 805531349 882252268 665502719 668188201 585574297 707051351 339454948 403853250 365475503 376879445 265061207 363635592 284025272 841253088 618447621 905613565 354219240 758640090 382381712 978061391 815197651 876304491 447441336 574350650 485638912 803202734 46067628 967266001 780727832 821793211 291465796 483418972 37679300 749857902 251619985 484068546 219188017 831092086 73028876 665373804 648329256 737804680 258814042 566757191 315638449 402004545 194342346 651724377 37113026 342887818 180820580 978707487 205572166 208116616 104339343 282599995 124854977 690968823 218803030 980401219 947888394 962205871 667411508 714636458 216173086 469557124 328089807 539063001 398021220 500708987 267754597 424442802 92668472 350614304 118421506 630105867 406654487 982515759 425344179 805743938 694833090 985453727 599153365 881982773 617063970 827803041 800404815 834118614 1216296 503993178 298363865 986635674 576300181 654791497 128192915 238757468 101389973 188647542 92082318 440664124 26381356 890841987 440646144 675554856 132426931 368817359 131319647 427677822 236811240 984528158 824771264 924051594 574120996 725952437 636386023 908589289 779939376 924602925 316224003 595044457 584214293 764754726 17979398 948561527 806416882 973684881 3850581 465683354 278036092 827924867 608216495 819260969 378747675 505736472 255684109 704704896 549500787 617060522 323528465 888708107 651505132 819877791 795221791 972999378 226011120 741388511 732480046 735672334 414591947 492502659 127088134 561264206 69774846 592932350 565415984 961597592 562983869 832198224 314535029 489086044 420431850 783749749 412636539 443461743 138954819 582225732 347227372 868845806 120118328 494443414 305064182 456737292 158293817 271897501 259467781 558499833 155053674 384745014 244234646 982132428 732153397 967759472 341468797 937498876 133211900 733931903 700896157 707465242 341310084 366179900 181508152 978784835 154839673 978286635 956801853 961520565 934762719 997120764 945909947 951996139 779362315 850156976 815624667 834837624 259643806 782980426 157537914 853356953 35391328 297220278 55383995 907219123 27406747 241572911 30756489 863992035 627254400 730432033 308227008 873152554 680061123 737644596 351504479 519333029 209493631 828254253 191933065 637654216 460408087 805711952 620363532 842093102 206677893 743994482 593445363 660428016 508096654 701969449 294684562 461162513 391551873 912028769 351880793 428857825 408596829 744715254 35835400 208046330 41054256 526213191 127795043 989765166 591251007 939040479 235127168 593856484 162354815 749636422 146814767 321228750 192493800 238693483 14585146 454920291 130305238 546622024 125421837 978035053 635035859 949710027 900359134 991532147 820456028 881802681 551615191 969719896 886722148 944967891 916854882 945675966 209605355 833539534 365553835 423423631 98730468 787708168 235277106 904977608 376174543 885729560 431941547 836262179 662330784 979539911 522904471 593417695 447365210 978420404 626025396 848967370 599992740 726269983 637697665 764005221 691881612 842593029 210175665 832017984 321383527 441375021 8773389 981445412 247293345 273639480 227481950 553131975 68173371 767414359 764389358 912509672 329893202 583215070 357948468 614380066 213990447 241106744 183732234 614947684 368808785 868351893 613475622 815836721 345268840 968229903 787271424 996356527 706794360 941214651 328602619 598111023 402104225 652938462 303356790 740272502 660759002 963626356 856608811 940705828 820212682 991404243 413135372 691663388 352076317 491003417 294776293 716157174 350733507 496391903 375266307 794931309 277581454 344421470 110724239 882804603 690424052 721485248 659262039 711680436 355621437 731317296 713528889 960789132 873253282 995363595 819228511 860084951 96441427 615221876 114110658 246840069 224615447 294991805 200737295 306466627 239921367 561948766 553732881 924405678 874533608 952418901 586949410 754379735 431892264 941467155 446300811 459694731 434182098 875960252 269884424 779657561 606715654 838276409 505898929 514333629 305351224 816765445 735612966 884889072 88619376 484279952 153912051 446316159 404841215 987674629 257350279 696407346 230050541 898071033 727083386 806386420 638416479 701152388 52760094 957433970 471712511 924643432 318223101 513693625 201940182 599825031 331937352 842361119 572948082 889026321 389374522 551347693 135678351 420026142 80005754 94083194 20099700 585712254 146661285 523307891 12187540 53278444 48318906 837982745 525822595 642107281 427157357 851670776 612660722 876872272 269948861 328609183 67777281 736153495 231174939 401074943 233134859 730318331 516480775 638470720 628180142 720096161 707496729 722345966 396028846 772744522 703086345 767635707 680433082 874299874 159238982 164409947 110401062 686309708 69629574 127465837 66748497 385295645 193111715 585243239 233954205 728847973 400729381 619047307 568085084 944897460 65418029 921685960 904901413 963014237 780774193 827064545 582175001 757318089 526278356 824480319 195505152 431144506 322420322 518923964 369594122 655904066 389073706 695213664 438787925 528869104 476097350 859161001 474387317 957247196 629749835 907555854 821700984 865135558 801887282 875518779 194662068 540564290 416688964 712226734 690393582 883001604 417544421 791830934 547632156 556321026 92545568 923701424 323830710 609421653 30769203 637654733 425639088 781186481 624001120 700621104 19044327 874963900 681523469 705278342 85908740 581792917 48128492 362168167 123753919 545829091 477270489 921211553 3551244 78043408 16897047 873294626 814889622 923932460 679122699 698118638 193982641 802757621 794219282 857068013 229621308 585564936 307997678 444162986 35598983 69796971 28379893 510210591 469857596 883383733 709552019 777030574 279448535 716010927 696861533 803616595 481502763 670219780 212291787 257585401 101097712 551286138 31623803 906758130 631956359 847922866 588560573 838878341 587465834 702842224 413059396 498253752 243324496 475014280 356466694 533594793 505107726 943956256 34381575 529482274 49579563 273759039 174528836 601240964 91929964 903423550 707842307 832909681 187015813 286002079 266888773 603617386 536000903 803803024 93327939 601008866 358126052 591019372 137075216 824233761 182044166 957305934 218295325 720281561 403425196 636054495 560451223 974500600 20492773 59609206 35029784 161732626 64244840 488423528 64746807 738445985 241537556 885339188 330583394 986600399 854567718 923608107 813702865 990232219 580023656 598818008 290803465 805475582 622810267 802707402 162263306 597272233 220466929 968026902 690939074 802053897 727599577 956218596 588966369 714462975 405997962 518254181 226056752 898882379 619255975 992848136 405384270 581373796 69642273 548252775 22831961 585825562 453096808 855036019 781975798 981976923 790218019 807728158 794592407 825465138 713777887 885872181 693140102 851855903 807170871 994919521 105908365 266321741 244174679 603005720 342651290 800887846 409386560 969366138 630635490 644592266 578558199 631538048 184958816 993784805 598216196 957526145 555985967 633180006 359058067 374300079 246849304 426354509 233273062 548243384 531298746 806823418 230579267 953087364 573673512 674109218 338590489 988575532 249510024 534065035 453893031 926205491 616516580 686613626 105018594 478188610 310610059 629311120 148481708 156729733 82903605 461002943 87849255 476610222 109574170 479021839 91009774 275643428 143378359 967643789 139324843 751482276 727348724 755882924 81019060 913647465 879917286 930473527 887253748 961102829 310685586 407844881 107898903 875781548 502102573 745141226 514976965 541104939 400958371 681932670 618131689 924905301 290477000 465400499 123774976 981367364 663869368 997404298 183401957 224027485 33384760 586463348 60823290 935947118 468441 945678094 180584757 302087431 121676610 158747468 130371290 162777434 44563980 582481819 365629323 813132251 338443598 534434540 358590234 714531491 166025833 458285782 151456536 194680542 97970191 947053199 89642642 694336467 218268006 893170504 298107395 505801351 76910389 309064088 133508648 513073854 393902528 424308629 220137658 555098164 183547847 901439129 11079051 594536075 542158642 681885275 377769555 917335334 525533116 564656924 192933688 940804132 659115470 751300706 239841998 251549380 78560659 855458479 205610004 588328340 302806348 337807677 125545157 933932064 191724507 944930235 375404933 443573360 190016408 934058309 420316159 913506157 691577989 711222724 549022691 632780611 208262943 530129964 224436033 347168924 83657326 485911111 396102764 703848418 40256504 408314850 336289293 998683463 635992256 851047713 198080559 453194740 124766456 954703870 516063916 635994747 181283424 354736863 256747258 363267387 51460308 611681894 121637083 976269002 127418170 307182786 273096306 588136653 99753622 840644611 264245393 882476246 703539875 942790444 849512344 895344472 114731599 188793772 51532191 90351544 75268956 378613434 283334483 514036579 291768531 484162641 147870941 158464208 53124312 328119273 117666285 779590872 143339057 695542429 195142620 770634653 174836622 946499623 680872296 688544620 329308592 514883829 459676564 647293967 453249675 951122686 674039326 811051164 702961393 734998629 72619239 526087889 334688613 841999380 827308242 939754172 844656310 846896050 600841217 641148473 86094998 695499339 283300918 582452142 468953093 619594809 375194607 920999327 155420672 564600492 274066336 963966586 863782638 961890149 661837349 855298539 64227376 574454629 565232998 669205336 116078456 456064492 240659742 821420593 436683127 571138172 489175825 496270051 397083449 755772760 340874236 465613233 372647692 431474473 130366808 699588521 290831879 823011841 793833528 862858288 764054546 831562996 737442420 895343694 314830890 795668256 392452625 626255178 472565711 979786599 568545948 924374201 731041332 777254042 519625779 524698039 387480451 830032175 808966284 987329696 870844659 969173877 501347149 903352068 321450757 869331256 94023242 323570252 145385170 973963779 122516764 816257583 511849081 954606591 289432193 995049972 276331173 807348961 521435777 719858897 261296420 711571690 674849338 734965994 254044103 615606590 56554862 808664133 305117254 821224023 408230423 521668708 198618163 278027193 20566836 839390128 565711223 822030340 794088111 920059801 236461604 486481650 436742442 675360202 159886934 209262063 180114684 296669037 40821492 191615869 24384190 531908716 156828051 250831666 152717928 492413813 225944623 712435498 471033834 827289326 37673767 157823080 2958423 784881979 354460862 539020617 189973491 717158897 528261392 944543046 213604847 301806094 43247313 196168307 80031070 519724243 263298167 388061197 12252600 613295922 250480941 507556593 375686558 904160003 26708330 830906031 613334420 949575613 288467196 521354847 145415496 155958441 1557180 350419298 120801926 959971603 183581641 332501317 12850242 598035531 458032486 470065417 323430673 666301530 519744932 865557316 658561879 996474284 533837031 851725746 71130179 420034814 346267531 651569742 250591541 970265001 949235216 969615507 452509010 797159716 352580341 434694924 210297115 475274131 8302679 908072211 21156351 153909894 15377636 856293718 577334187 724581553 149042174 871898959 859643701 897260178 446416417 919070415 387312550 909460033 712391262 980099840 628251200 659637373 417414395 434290203 412445408 613594905 582100688 727005796 697664543 958458629 680506024 745847441 347168560 458357207 280754215 645042398 344410174 980982968 484620590 995576362 174305700 498698729 340846500 700965594 459055377 708789338 34081944 742962332 556403178 645025186 275487115 493580643 54019325 539704129 58867724 917785816 545015862 739607565 234994580 312254600 259589311 374954983 172535427 192343485 12907239 126509891 77294297 793889142 398544512 659469508 532241410 982101819 83241243 809244767 373149532 589891079 236131453 724752807 542754899 745432322 190672561 839211424 832864840 915447769 336666494 529487833 304107452 859584979 835171908 899713957 658076000 858819822 510162039 987224834 962618496 999088103 578113099 838921662 341964756 342767205 59282195 587641654 57793745 853021560 246209908 887978390 746375163 883877728 391077862 577965314 494935810 650761998 576791308 581857261 137968319 423035354 258793955 558496973 353917570 753682845 110538181 189275381 56108520 501120005 118966717 281255870 136417684 506083576 424303393 926099550 628408086 874644610 512480123 793253228 233028054 568375006 106465038 504870606 268519128 767715260 539225338 885693131 814598347 818900837 520447166 679805551 628221154 918598964 76821577 850881486 706504153 821069985 331074684 334121672 240086674 592574542 523725218 993594445 267454486 587544477 124209381 236692802 138245990 606344741 348204522 463255655 373592924 442545608 174722438 327072792 38106840 807754196 440085383 682131923 19484439 372289161 89638508 508318434 47673281 489610570 362894731 908269544 19539492 411717773 101690473 997751182 430411590 895264726 63451976 185429022 90364706 328512646 250423489 324125920 211354370 578172961 342713751 893459351 28036322 957474598 282215261 897068812 762696982 904999136 892792443 892859215 573428616 813582048 319569996 855902431 377202533 668873807 365194851 751164750 229703777 404071063 169624787 856050884 828021060 910923477 646743463 828856390 246748300 534670182 101198196 279617431 19526850 754906071 383915201 877570602 322028465 962427271 866991012 867805638 374405338 618942878 371903560 801059631 118747841 587218097 336546584 594485123 220957271 442229354 209600577 883416852 201864342 998019251 235311105 799636227 436229140 977763314 544853806 916679016 570860975 600048554 115928328 742097062 108106353 765308188 98202228 100732466 71359498 741755816 41158191 844163229 270052636 690932259 347144945 791625471 276816326 619351208 273099702 475996382 266262019 696703847 389654326 489021683 90861494 318619723 241171681 915256836 914093413 916019059 855199987 934537029 88545208 195225023 167209288 829750266 648644025 816933432 129610755 906427716 340348562 863435810 811364067 814943889 243287153 889743962 491626287 647027904 418544542 905601333 645182351 940485664 847826186 854218307 466269065 925610586 770341818 938663565 150362956 648483091 91577745 344850694 328859818 972620755 634970530 988431083 460804564 785609352 45510684 682909652 567787257 657666740 342425247 779815513 645679516 869870784 483753742 605273874 428453233 629234237 456270125 979334103 379349766 436106584 377889795 950805276 411745844 976206683 174874376 506871721 298216574 863141766 2997163 679862280 505235631 682201349 79730496 369330431 94809301 597904315 218025211 537528328 175144802 622876372 196532915 403376837 19118898 792182237 733640141 733833217 530864099 870835483 863204029 876342044 660749086 776969800 216984322 684543347 157122298 746491456 451930699 611374764 352514718 354190666 246412659 628365169 206395958 571227203 483470760 953684075 524642221 648321224 412137919 445718765 440096424 503251836 227721443 743124805 167496661 200652592 12804526 746744594 268869018 939082066 494047168 663300608 302121420 857853696 839817759 903596090 24686552 472666392 28986248 764503964 262965780 474874698 147678051 819316006 734179515 990016271 690109052 750661757 6010868 195425536 87012935 190500580 62958439 439033624 345196073 677802440 31043167 406319437 350384986 991159704 549079789 852973418 125681671 519712081 169699439 211552305 173084823 244937417 28049102 932851672 744971637 876903464 51003550 509214060 309421180 649708055 509385931 870200438 720482928 876058556 850051471 992750499 622521115 935510212 245501096 464341374 183867677 276591964 124597846 171582605 62760734 281410929 205674152 544348424 365086421 853475089 488253948 567905020 228087990 649550149 381939874 807383132 129945054 703208044 677012683 902760992 763385267 965746093 11513272 63533228 10473747 898655643 368996285 446208336 398555074 839821421 617976869 707695152 634526871 979340780 662609881 836050195 512325398 524342139 485868819 710040789 676519642 838812147 424150938 953280831 440444534 492906483 435499056 550362350 168633447 194202591 118059302 674910372 517786384 990314685 954185062 983880938 669935394 696542517 202382796 479257759 97007089 827220642 507257016 576571509 355023510 488838476 5758073 297570712 156594833 753545919 618240691 996511430 215856081 675449617 323312890 760554900 527509838 534816447 522081292 535570343 532766241 771226778 491206012 567884806 333569569 622373178 64235110 446461838 253032612 818208979 486339556 570131736 389043535 412988137 299297269 771141492 15748893 331087731 129262946 624609754 249690808 610594705 137727555 718055514 269982655 648187102 250801238 354940435 155999187 951523749 20128215 625947816 91933419 702374876 146735414 904552976 476041741 702704453 604080282 992926445 520708685 618528592 96515820 426961399 85390415 863952559 203098156 686397297 480745483 874423925 5694697 275638635 107031297 328490332 130543218 487082541 269609614 777922120 228334971 798078017 496393438 961874052 566595612 605600604 60458317 593070501 117359042 939641062 95330634 933097614 316817844 335427070 6711204 109230060 96041944 301864965 180376531 733728896 698298924 725834597 488777944 923013157 693330653 737414113 72511375 548432591 127515403 675551689 191759827 496167672 24038575 767934678 199080668 683746141 22153327 878765783 16828578 409184983 34330452 923791312 666636953 689829678 502208274 508269742 455720566 574762761 572770429 868911537 828524189 881963300 301174151 555688764 352371033 387062881 218821664 315282604 146775278 217415377 142047321 542666803 241929644 933780911 183913733 229081846 48607511 313752416 71028643 448034929 296606828 653998055 32259687 961061824 739241892 880039794 776349377 782897290 133270805 522055552 14898053 40147011 3176714 385193996 74854981 163836944 75323800 590383165 549593814 734190540 207509840 411293375 302477157 668625256 594847590 979284392 917714390 939937009 176333750 821056395 27992176 312901116 191533617 907739077 6510357 6811193 1584467 448364875 17586643 225092633 52478617 209230660 1743033 483460402 250435131 258233672 219856290 789649931 637561486 720841616 579450846 723992313 138743460 980977548 509836355 748810748 630174952 718999917 675145662 736950168 405479767 449347676 53534375 231524959 176337157 308499626 225570655 719578722 129414858 907113685 274025627 925561178 118876154 770390673 580475508 591693426 578332201 902789392 345386839 380132841 256757556 684601595 300920224 541651421 471809697 917176196 235119631 336033014 312832567 459230435 450356491 506162705 251447651 793590606 319047534 415234203 57461580 64120077 32248576 745461776 679005230 892338037 397728773 535346221 190298142 811148720 103864408 487013693 243641937 912015997 184264305 713681556 162355932 689332268 62498617 130900223 60132506 172829060 85507541 133434782 76962228 863048235 101801229 777298847 181374759 850253129 528352511 998512952 6499519 403136517 291884768 713173908 642610929 885604826 19511287 96523861 8306089 422002669 65580066 277518504 81556404 767986527 701014272 896777566 804523105 915448762 330690485 425067476 335702120 611294794 46748541 691405137 366980855 671837435 623921878 734920299 672175751 955091922 842567912 888890842 379369064 637463475 122330694 169079639 155564652 624950824 574266584 588024065 420951109 508793416 267723122 964683696 957047743 958810096 212179894 431168952 428461133 715786873 382748739 792026049 738022954 774598808 421160908 888730329 234967598 896045995 843834908 927410759 82578625 481739811 155555924 917447068 689567592 933143181 180533988 405274767 211657737 780984296 660315016 947277685 785482507 888755031 312436990 721003585 277651052 984551190 67258833 176367416 18753382 910629310 667174337 917416504 546958451 593734469 65148906 360043871 4568295 430000146 217724036 819978293 53023168 615348733 159793439 832052245 773909358 863159606 409471536 900551746 588204944 771745397 562060134 905028976 112717481 408381051 42123417 242481037 239878187 283232781 216657310 316093849 170614355 427520769 425646638 461466595 301796177 971940839 468114117 861804844 507754833 672842407 248994277 658808231 71427212 249822425 100263300 889598930 550993479 745482251 432407759 747496329 223299921 267762787 158846045 574481463 515647545 694096963 226054798 537886386 439226791 524211954 164224612 866354834 197317320 268214053 171838051 478825752 477090441 575738346 435478100 750625873 239926173 253656086 131479873 631798266 442627186 458199783 183563173 348778137 325975709 466631741 88984605 504449040 320373505 653540265 315235879 643518183 464831146 671958629 480455152 938428992 747731936 916905750 666948606 697839897 660458448 684793380 6783198 936617145 505636804 509725481 251150353 906805142 669216943 927360485 753612087 901411517 9954347 342020175 180544330 687637776 301745047 335418502 196380149 629769921 66046639 837531587 474574311 485140173 428886836 776209641 532805299 930608763 211133482 243136148 72678758 626045653 14655638 262713834 237214609 861017110 69395499 586580440 540874850 621423172 436565980 617558744 257330753 483775081 195006628 960962703 108255141 921260018 120474375 334880974 210817458 340977225 119989438 929428276 75545395 724395055 625026257 818733699 83733770 351347373 28731298 232314693 4642268 788929353 377036641 720796297 158815177 296271125 182413545 799432378 253060483 948774655 186535214 643824882 537405433 947488135 453156439 608789403 463437991 962888775 616820730 681783031 213634951 583582842 308296547 495835618 480501503 721822519 50423803 961102927 527106107 947692869 277684752 727389965 312585955 551448146 107083279 237877155 190741924 772952368 464922441 866451117 706494747 733145920 323535348 675296952 618246618 839303958 799637317 962808211 886662462 968144897 236488415 703758941 516862464 527252443 184173692 700689007 202138705 434993771 87436956 557157662 379396002 869514025 149388029 269873525 144999919 516003901 348841404 644297475 186598986 412697876 50822378 369668070 41556300 200620825 112865579 117501828 67669228 817361971 430708030 522894093 326499118 839439638 220592927 397857938 181340950 345419401 250581515 269099584 165444102 707528191 32855136 184383518 30628379 299123320 75566870 444893679 132137375 476201843 217706759 830915221 710328453 993125593 929472223 964701144 833800057 835465408 795859303 982086579 754833362 784744528 549803910 936456575 376587953 461479185 267240516 920506201 344462208 547869377 244870612 842259282 827119440 850632603 200686761 298926239 271781478 988745644 305065502 625484546 287131189 980626157 27816176 441103343 30595560 687347298 457434259 629226071 233788258 535407020 101209119 223811172 45035768 848039476 556386596 859844021 850402278 888818194 437399440 982774314 699862071 735162745 583731829 941184547 497848016 748590342 659937602 797571292 400636198 544308190 230034470 267211785 43790808 527383241 454170903 919860176 293453577 572921511 6008979 204655360 92043525 149740982 82753264 686313848 541744294 902599081 489047787 770500036 69358558 864100106 428762085 430008321 405810395 966454284 784953653 978329859 649437355 703231601 439527564 495339696 348708962 473966597 428484704 955908204 779585376 820793617 67978664 526520511 211100630 686521332 393633366 620062061 395942959 782983504 657111689 759531549 167929229 495338550 490893188 820375232 113963763 458435405 182330580 748953814 49155732 591250066 228039630 237022609 223337791 445144461 35339936 626836796 205460446 932496773 354625153 427461160 266653648 818968631 264166093 456352910 443899501 910384068 869365630 990487481 568762387 696201108 507484155 703148692 604749506 937098324 760969271 976323122 240828880 930235534 435222413 788606064 737963375 882389074 58465108 418043846 72794931 490743907 405603148 738870762 394191633 806059242 336032266 755036671 671984970 781750649 761913612 940173220 417550422 673974778 317245103 512826682 324718539 986557443 13181800 759421858 164538635 935141237 669408626 786493172 780515446 944494865 50020688 313651350 217681826 967112110 848901024 979929212 734442761 758042733 332420869 533649881 525807510 568516349 386917764 840662420 425591604 729750997 432901311 498359125 192539865 593593673 199904723 875391500 738088090 962625997 873121097 892814281 115911273 408770847 186723347 639363977 30021111 659047390 224797212 249377630 62155939 628754800 591455115 909096087 816607861 953331140 684780618 965073651 877551335 904819277 489954743 974483217 16530596 454559925 118418857 500539357 244836013 396988901 386449511 451659753 23975325 355543792 144231159 822964043 495937279 741477812 420989568 522232171 86835567 400346172 306597769 451982342 123041154 683456662 546680192 802045129 621137281 735657729 654185609 975485985 423054087 653612979 551383066 894270618 244207533 588504321 185654911 751942239 448163968 822710613 393725528 874503193 90439602 987357794 915301570 981478750 441673396 758559147 149594426 318451789 6939140 523002162 483767153 899612373 205585555 280229791 177297238 241143088 219656522 952664156 918831678 937920785 177244971 435381771 34195356 679530814 459218011 620792259 346177570 951557846 851148326 947507693 639303104 884420678 646753345 803604156 785947439 960876865 311927501 933958685 234631150 919498626 59669916 397151312 50164728 518086791 267325869 612732908 97641577 282931237 116060749 468475661 130850566 875698905 395269849 732326300 646572668 660546408 480905733 929373705 506206770 650741407 88336212 992309411 230600200 242111427 119404307 470584828 259220114 455524899 31483555 884741640 114227832 955365882 153071777 936932375 917969 190661267 183936971 624454658 254342080 785563249 370950316 751840258 115977144 808170564 230789862 827916012 305261981 454872228 188104428 633486080 185018058 496434272 132448165 195837323 185149998 739532559 30049539 113330849 33925132 373039995 300794972 874989412 264776929 761349418 112717 833459220 505869113 856724998 635268341 944394491 72998347 577405345 61087938 724460365 642721521 694247056 358130757 562338197 10398996 334831526 6512679 851170646 831291139 930243070 509089774 612750470 293754296 769558248 449646260 462533136 162799037 702650960 681598695 720526796 447261711 700594355 592465926 763127416 480215564 872382012 510677184 631512821 418867423 713853153 349798216 714928958 270341492 358232357 65394273 624288635 313423188 640345738 451754964 747709344 138742094 218994601 136207132 138188573 100151767 882617679 793607260 816538256 633868645 810227764 772244877 806738771 777232854 795614905 366479770 858666616 715016383 771829085 528696381 844319917 462573977 938326768 115645364 235182280 48037395 428065320 302064494 639547696 589568523 970932945 932282363 959974349 290480390 747531327 208776506 433452535 317147348 623817307 481935661 622738894 65523145 357125492 6527754 312325714 254089040 493132310 305198389 474325407 159747180 536171216 218968023 327314530 201457148 633759460 261133815 860565139 227326164 807242488 486575163 693483873 351515334 422148556 48161402 876183440 195411743 243159919 217512871 716901128 432178356 693142345 616246263 793540277 618735908 826691292 226056708 637033294 378225573 629845565 478632399 940085201 227860535 274979749 254131884 929204567 113837773 275561813 246528411 586967678 60609665 564008115 363463688 639218261 498118807 544775412 461489478 690403396 650048328 965718214 486625670 533943808 74837792 265765226 235310216 586037743 416473893 635304560 110697243 332659095 46168625 688443793 33859915 236291942 39969940 165764748 132385977 859283081 254095390 438526676 72054279 671145474 187349851 959431138 91818823 813083120 333534004 779931543 612993254 947125978 844241741 856181530 202992079 884870111 485682973 711346588 690885879 899913000 445814194 947969041 735093938 765405198 311697756 746969417 503974966 847895964 276999156 625607358 43438174 580363746 432226714 464522312 298136484 626897113 290013734 927941267 562961768 942985920 78924286 269598823 254860731 584262003 408588810 829284803 551658947 698770354 5171106 687614422 583576441 677188054 405212557 863856303 171172727 585426247 137057645 857522771 327944763 884733103 9226479 480903768 442918126 700499101 362631580 946083802 400540692 561923333 102105309 991925346 766616310 997620372 672335863 850171617 375121676 621269922 278670528 656273789 452849220 479564392 353782114 404598559 221712520 730240932 205353899 258973914 63511749 707877747 287030110 506326639 287590790 552524995 442532355 886403198 242340908 663909930 122343135 912141893 661176719 985774513 475359901 490530664 130755594 573416222 419955814 806353703 312533352 748068993 372557236 748918276 84433613 319609887 61763786 659078769 74968175 277763660 266844149 675467370 61014605 160706243 140861161 765767897 207064352 937899553 670175730 675709391 455646683 483919941 332655465 856143097 421892063 771061850 258346978 779554809 419268610 983039504 77420260 568020644 273005068 402651905 183366047 626108377 126213809 230160976 194391595 640108199 504821552 894736086 2239796 361636745 293913626 637960156 519766920 587920688 539770076 791672604 136012845 867813475 37326873 373106389 139276904 246282972 11531882 198829890 121562953 969985966 787163195 855200611 548394060 869449140 493769281 753198848 70647117 639813419 485436725 594505220 239931343 922576401 685815937 850555002 89976671 417763617 181852535 423511213 231167139 492514887 140442309 844286607 262559288 933093879 660928498 714768514 137863787 162519063 50529074 347230623 117570314 930227979 917171230 977378360 941277954 968445245 188832866 380776355 46560276 707284541 439206162 662253934 221889186 538584044 167032226 833975763 436936930 472246110 75485896 485737443 47658851 214442264 93325917 139697993 70228417 260900189 183582252 585761605 171466592 675896606 306447425 865723183 552071625 846196680 834088165 963443309 417741540 525282579 34645103 972572230 404813587 445787727 299524597 840921460 825943440 969303142 860630694 935657316 205223942 662243503 627258949 727648410 604502232 783237871 44473096 981648189 484341131 775843587 111521359 644855183 1849274 684372896 320091005 501859144 456848812 513674198 299951967 404854672 102642758 303165473 253562797 259193783 150965662 938830270 743253139 996997920 982989143 999239441 148312023 264668457 171922738 347051818 237595286 973238191 538509678 549295657 363884338 534292098 39109175 896666339 491641802 676253746 50532894 311317752 269069535 815925878 626258680 779520075 237123218 713915243 683365302 858139704 648235613 905932976 151957045 291042439 204451769 541074247 62529022 91350916 69249877 215161899 25778766 658042786 465432669 947777823 926613159 927965788 247315002 791822214 320741451 493863547 154786474 907674280 889053274 907769396 118891108 412071844 132322610 794566053 89636699 594467443 457904968 531781507 62622129 870320195 429096157 809446585 14483227 729874014 611849812 629992450 449428651 749325260 494223186 722072141 690984418 738875324 128856514 673557764 453193963 885067268 218854775 786895698 486118256 852107677 24161983 715417754 526297739 546990573 288778648 965713526 498119706 945553911 483244937 962503510 47497632 879178773 838707285 899182596 822824068 860660737 571559654 953232583 476900566 624400327 404951351 647145991 280244045 291949112 223476741 793800047 595322764 605964772 27213076 443598118 13158666 389383736 37493387 858399081 143668368 399860210 143078814 644104659 525445028 964427720 693343237 759692165 294491141 831473791 513486768 553675336 355909236 478908346 462813225 868077613 346714557 573960381 408454120 542168928 192528361 636539855 122802686 995098808 949955561 952761357 537884584 643510490 36683679 700683641 435697563 867871655 749143036 857255848 567357616 976220374 558928480 560616681 206105560 397595772 26910625 660322465 156157444 170504081 60690718 79128521 65246485 562501786 182371514 190312231 59498816 304506315 147573635 975885510 565934681 723102608 73607847 696334874 14514242 844934825 51538736 392750006 138197204 756867021 297227355 431385985 355420901 435465427 281656022 982661904 452920748 633897439 257656409 756699817 339959939 866599556 224777489 415190429 138439186 148103068 88719210 363314622 353489719 993544715 899427152 938886890 394402364 688403061 295230624 633575608 80672728 447673497 394887212 469535952 349161155 956432407 918873140 926000473 759618561 823170016 439916627 834515225 126882608 385307622 105233274 226245245 186307343 400303752 227312943 922036378 324742532 938518017 737421107 890786376 722255833 829835028 68035802 435412390 187814023 478478389 342807497 749221304 564059198 992071738 769503942 975018816 129274620 874753768 589272717 814842992 561036862 620687103 573375102 630680711 57396262 308097297 41716548 282714986 1392195 746165353 659927952 913102026 495807304 719560487 18184546 535273185 244661674 530864777 416694113 436880820 30882780 394807468 147077120 668189049 436978049 905576129 585104760 587757544 40194980 739448162 456715650 527127929 188174742 226169269 46102529 556250891 106854539 361131863 214951371 388362837 162410498 439396623 390632664 649078389 229498676 691119314 163208957 919008718 598758850 995790526 539390875 886678885 608068600 774658548 484294091 989845113 746021535 864025372 432223696 677056547 398752678 713767313 364599592 654424014 353768978 726840911 590750630 694915530 5307618 410235678 9252922 226830025 186396277 601304756 301027515 375450169 298504340 459080497 139037795 940065018 109958586 857183991 123238228 130653460 5730064 374624161 359984932 591136232 58473708 262707198 170048527 791824254 459586801 994659558 517255715 589969046 588581775 762160283 375984996 483930985 79446030 370093788 175963324 576938553 234005818 392538559 316662987 444084748 243764414 868430094 106465300 476291805 125568723 645202316 351704596 838239140 543473788 855342376 374896608 858008752 422150678 544489795 395796082 945875624 633025399 824858712 205392757 695334678 66985210 833344183 749941983 759786251 194662040 505421466 30028730 222937244 26058688 872566869 57169616 690526637 231145320 611599694 170775997 611065195 316366929 975587800 737315056 793924061 652194014 925867315 846086590 900721941 146044828 409038748 124817097 424726139 155479416 206945303 181572486 272513880 103957236 873719576 223743714 403067375 2945851 644745001 116361733 819778833 691528668 898448610 59602877 733791544 667129080 818882431 107004459 903741569 365045378 978010021 857892638 923431815 739735101 780324676 268432519 429807898 150536059 888414402 487314420 611865943 577721018 880724084 560150987 776193326 167661754 600959081 247239986 426313368 387115255 457518089 170952624 548640963 348729478 596872472 254462229 967588600 525779649 855525632 270494965 690230872 392788110 411885128 248696051 250736953 197534236 494077233 274399498 722890406 355796146 963857026 69357706 459986221 381488425 496954190 82566134 765512737 338547559 459927049 127606857 509598638 299030440 421416304 310174651 762132230 387299269 817454562 428724593 688025045 598128496 842519555 808027398 997497677 259190721 476037191 218373896 219242697 91056206 176780626 72523305 315913859 66212877 686030639 116007267 143883460 130770206 614944503 460840432 671505547 409595122 446558544 249906876 634102932 629162661 774536463 140314797 949846990 134936314 172186538 115212702 655783528 70678352 969054084 151608247 640677144 168779239 762344204 241140433 670098146 646806540 653117119 24455988 764928189 517791599 676050148 209093078 218037697 78436051 167010290 132690547 390477092 136430064 216904641 53361162 525983517 487646037 549013364 214270094 485517235 340664869 561071179 111746057 958058024 454072358 952958337 502998431 773930371 39328026 843488482 653277348 816373344 386266374 809567878 276271639 451155844 133816782 465236619 124696619 172498336 80231301 244607266 106465748 660155174 58083019 741708296 199138421 591896252 560465849 831046728 311882939 934756350 364397434 482737757 57127255 774681770 565236676 921557328 260840361 889428594 241482638 854421967 463785683 583850049 123512254 809327100 307589982 986354241 771201387 934664809 520018451 856491968 352576893 571261574 355908784 851090928 180254335 877559081 272489173 561247336 77698856 531899761 422053461 862346452 641080560 846474266 522381946 745299555 332278860 673257833 561321398 786028781 167174394 574748206 94365738 383330555 291999383 935724043 896440224 977474964 872195057 882056123 87870715 735026709 194104305 983651606 566459818 809364459 313732424 650801137 240018710 343975655 35135770 450413546 157063590 923461264 812512660 996570007 54988528 489048802 308051929 687565051 500271481 872568332 42548994 563902545 464832706 644087472 512206317 900663962 693231026 827560838 80960948 211867741 171732882 937399364 660637599 965362796 231013072 439778589 143704812 524189705 455170878 908956068 594745320 601900611 581651364 939601124 204005636 418432298 255033737 413003022 366734971 959107652 324486987 327870172 257531177 423744373 157660579 693650865 119416916 669966711 475904382 599219522 471412829 700090144 283720482 848175211 591113300 702864815 685010289 953033362 383590179 475473618 239493221 754406116 52587444 347480132 205448036 856890309 572005825 867693593 732429303 958880910 181361459 522904128 273901609 582859848 481114480 816883948 496574120 497630972 452913712 479090894 380814230 619327673 289037309 806836659 763367306 996213121 582972163 717160392 335183249 682655819 48561419 761861490 490835159 655564677 210236614 277439377 251414228 317109132 102712956 842568638 416698555 972321020 236637498 985377120 550494259 928532817 186585628 849431671 666400082 792219081 548468005 811994908 112114259 794338948 725014394 930762718 557536499 611698192 310056734 532850995 104453384 477553459 411108335 703894954 516830341 820131020 779687372 790134018 199774888 486077460 452078170 477926689 369914768 395814879 371405726 887912022 855282719 902977206 475555772 501959597 109725975 199460609 120594526 511541507 332029164 545097471 142089231 468815024 253118608 930137588 744491932 997908544 816863105 980644264 874152944 904797729 271546473 593139397 34265548 309320667 200337133 840246434 170365487 426876590 322620142 664006286 236634364 765611896 544791679 669389036 431123709 551354087 341747775 862197437 124723568 947269949 437026452 843935683 759847060 831557887 154087172 985574430 694000374 736130680 42099403 991391841 437749198 860139261 631491429 698598595 244225263 671927480 585807927 687500920 74302811 630072054 70042346 727519890 187673270 260577214 82791408 478652353 128309686 286509732 96637869 552470933 383598448 794736247 484864538 903516993 403010218 778249074 162538038 691370915 113165711 117003001 112680219 327754976 96479214 455255270 11140525 661816645 600329976 805273857 691926335 755048628 697899508 910709193 605171589 995937280 887706392 983216133 413886721 991189409 762951463 935374153 235939559 825146950 562180789 729295577 665609985 800008553 45005269 477533971 146795079 164967077 121621666 404970475 403860841 973662027 780585805 782513211 596794051 646525882 99008418 280190104 137784453 212154221 166527957 654754506 502788064 771599645 432130401 928313494 62833914 452397559 300415739 447807383 176474930 642360695 582123905 589291961 158474854 809184524 311073665 690444063 255858 52602336 21988569 623627469 474580584 785925393 305954468 433329027 205661252 320819699 176556924 638776443 46712245 749805585 48461962 648693832 213134587 318003564 316337821 877292510 359199969 829651000 74053364 177312692 73803119 826843541 53525689 123788397 67164024 630975096 220823006 636984468 1549472 726725276 190113035 596873017 123971022 515795217 85923082 595331823 264904897 428745625 288569174 541962412 479703471 832164340 245564782 550715220 69145506 542403374 52083198 948375611 734029021 970706300 168837842 308339760 146513742 690428657 429971880 473259196 177105136 190535877 180273920 255834694 74916733 162580516 137442973 266943611 197232997 959007727 615862819 886722071 73135220 604111045 416907765 957323738 548296501 824010115 12490583 750977941 44424008 263015148 2751074 608071371 127932715 855163397 1624337 722493581 624933940 635864286 139904208 502946484 332502540 762046812 281898783 837740590 809874173 860612306 142414852 627943955 215483655 402819011 274343550 915477464 886126050 959889500 636831864 672010627 356822477 740529003 179729289 365517213 153304353 321648478 233393677 245782175 183839973 595500250 132577888 593128774 92900686 932914124 185474913 684465045 117990171 459544332 444572694 483034468 395368803 409004653 357115548 565047978 166068691 747820731 536545635 549233544 359868421 843733356 202191864 636372255 11738837 901572196 233647393 668100268 147223750 783720810 293168764 751501971 672780255 898189174 494753412 923184675 838070318 946596187 190110341 363677377 157182304 203976952 185131303 742475932 44771645 308734546 121753525 307299220 217293450 422438020 13902762 689392798 505646806 532839552 270880190 474584764 28034281 592319649 249668525 628965516 339532013 513368945 270292674 822061031 196705967 920370719 842707296 867915848 434988719 531232418 371918239 696730645 244285817 865291167 598044023 634290505 146253631 905732030 131576189 668007750 636743549 843266910 586673199 921661533 608622839 832205613 129211227 246668623 142127284 816413290 621639530 808924916 588160409 888274841 825539765 846823103 145381375 878533509 632825653 938850834 766917587 830381547 176709817 464164211 146204683 433867560 251098553 910161604 381886108 725644658 423240060 560663041 478939796 975019001 633119655 974453450 119977784 831740176 517329875 717111876 533775845 701236529 14747797 142203032 88682700 635976295 380113166 949269863 42279825 213524654 179468219 547889041 461618271 658476779 49377023 532138873 363121821 940530679 741073891 802640321 446073119 815835528 308643714 438075260 243074612 317846063 138323537 664486469 72366562 143609127 90625200 767575246 20686734 448773928 60285301 864350799 461907408 489946988 19145381 931253055 456499173 850045871 682791812 958579263 699015552 890084407 232563075 552894809 238220078 395740306 116301877 426316819 338883105 984814385 952978318 959828689 80982850 243634966 137412335 516377501 419688139 484628053 107552700 401289466 179609392 929080704 33523773 728655465 289645530 353089717 139830908 570996681 437954515 762484732 473718582 884237696 866334026 905934212 634709618 912758546 753917312 822396312 586101214 879843618 119172139 522948418 41489296 999731742 378101563 859365174 529741528 688189916 205034011 800761771 791534186 845876100 7278971 599848768 232490706 501430733 7832140 245301266 189722941 708107410 63971425 927254275 691963973 989499792 85162554 400003732 57192241 866754652 193997377 778160421 157555996 317410890 109078281 896304006 893729118 916557882 793954669 989635981 758262394 982020120 761738751 792711426 78924711 792969084 41223818 197938761 66857683 69821123 3110667 647135972 142856518 447060325 73529751 794597441 412921452 591137163 570601145 610241920 121415933 693801753 556922089 620887771 29496182 914394171 697629979 874163495 402362999 787751558 761836230 837380548 197069236 846602293 838735369 978021614 935902917 974355765 955003256 972494698 521495544 563314759 69382603 394730187 170129563 752630190 708233571 839537043 709396604 942449181 300650742 719090337 302464806 375579910 149293114 438407422 189451637 438961945 90129901 277566716 163474298 466611130 88224614 997341231 120215738 890633667 582006309 918751047 730720267 811494817 641320700 889666468 178025423 275985365 126099696 753483667 573297024 870477169 3292413 428857360 176599984 602579553 359151740 882200003 685281915 977989397 35821234 864609043 500506072 935714892 523161609 849234467 80568388 964802286 268161812 943761059 491304273 655918920 383474673 411381476 195923848 983484310 184141531 530333582 514917714 707948339 244016539 743281098 415962289 543151267 415266793 744611703 192455931 702797264 330742672 360825751 103473434 645879593 485132207 997642177 804089689 835514833 90405678 148462262 88347540 765689922 755023879 941022252 399956091 784792132 763031974 957018621 920436429 975500716 253103902 779376517 183130494 934451436 86741361 434747129 204348818 357645722 150237372 767851444 315550036 891458490 426185465 873518726 706547918 716542831 345563782 436805598 266385649 484983819 324079512 610169772 48568413 920276670 57359758 686361060 227508692 343659689 324970922 580610416 214503705 855116040 375937325 458145295 114562852 319311674 103333378 543978202 331163968 662615817 49956526 637874664 211146763 998783056 269423156 808187926 417445984 429741266 25911661 628550182 278262332 496465738 89899303 434076355 172612618 693382023 67923739 274436135 1137511 431868226 234145743 481477418 331398458 752063719 622963586 729352837 511565942 752352523 658784483 678410854 367244805 461872693 68858574 385287511 157549307 970958280 445097191 525073327 519384622 678743058 487144148 637294838 306530354 645440629 545431063 646161431 141381433 579674174 468384830 835316164 206626689 403832335 699278 55437207 39649217 741888640 225697214 575490131 443427801 988432317 985492369 993867280 329305508 731103752 655644849 891558138 731414294 936053033 338795159 799744916 771152992 984426539 712229392 728234295 531950974 970002395 127768724 208252642 1815137 25555202 649931 174676484 31602530 217193502 181419517 595781726 221883619 935375469 221917709 846846751 596342120 829257652 571375826 707677889 110175989 183434170 99471072 109965976 76210420 270005100 181114499 982377973 269880832 817618573 167010637 708350192 143048274 830471780 496891029 814110476 674974501 827903804 237681668 714066637 390653149 617081976 223922387 417452514 331782525 687065149 419657498 653453220 634017213 648950946 124725648 566073758 505972206 823997146 330309835 645591101 267265004 898023242 259524031 943448148 483978593 872753146 447031952 915022625 515439409 724717379 341537827 826398641 215967201 610571534 449460983 683562596 639820472 988747832 584528643 663471996 92872686 981642840 604205227 672730932 594943063 595848983 576255576 982528722 474246654 574517201 42606341 480654800 19276452 425996536 329687150 756399114 28455775 305321388 134101380 679063855 171530892 858456470 41654581 445480404 354049856 767788160 659597341 795956763 92965251 983386690 161435008 911581694 653287717 665446048 286192764 459487569 322268843 539972685 139837258 148863728 101180277 149312458 75659178 415130823 184467144 569823029 348074880 563538523 217106378 967423838 631862693 645397160 371511598 421502053 35041212 768051725 239778901 526623766 334587449 968802653 387287359 461246918 14156707 366411401 365768583 894461586 240288998 513829843 426392809 700312193 275587007 632059056 147103379 418453063 102549590 995658780 412690834 454247316 187884441 407193172 345882202 414739903 374922891 478421279 115345426 738756054 568528706 801564395 644575005 732934278 628720686 827022757 802289155 996258885 933212213 963729956 372706253 588035374 479517231 768719348 226194789 770813547 565304013 966678945 682855828 971050982 148596519 986587510 449415077 689075238 424747687 623405103 536326043 621227701 3467709 398018877 373389753 950459887 739040971 930583654 610311457 988075889 663933522 843238011 417187599 747599825 142448436 206086836 101249214 723830921 672948170 977455269 50076913 327904725 270839892 686521116 422514218 656501566 301968728 765413470 519355795 602413310 564582460 880394407 261413739 591261186 72215754 554670861 83573708 865474533 712806077 934068378 419326899 714510736 567049299 851798657 248052861 847823747 803693911 847405856 751176446 942237756 312232083 709545454 472243779 979293035 3476970 118682457 95428648 267703404 57641919 781517014 775644839 784159963 709014995 728242423 391686300 711452157 198759371 310066286 69534258 209490546 24962183 527648246 211751542 648731137 586640536 877850231 532823268 793722643 378468245 950563299 873649776 874164289 759803195 809224964 77639462 251940613 105107188 148629108 67756126 521161597 245076715 533022726 83422848 636784690 151494652 628438948 3542215 879566223 684122928 978072648 548306158 722369215 661417746 860557702 255061419 502444607 344427799 374704134 168639316 735402926 382999668 998744125 840293664 993221528 734801254 925231119 76804587 102993457 2652658 273880508 264977103 572221985 348901152 899198852 776516637 867532076 310892015 673631360 403053016 759144757 271182532 465484463 322209450 393615162 120744437 509644389 46819448 973948749 148997458 942223011 192149015 859343455 353286681 544855106 190299746 912218999 329419162 791757900 603310639 904831118 507472687 848267708 263002352 761222350 704286651 888096637 28997584 544703904 200980253 856640309 14808605 846621772 638906508 997229010 10570595 188573448 26173060 70574558 24417854 478461402 415110546 501724889 127934417 674787155 209939274 664431928 448368781 826498798 502628068 610710681 169601294 223281321 222923499 880539656 537193854 905352738 518397752 564863904 513181886 922346041 38657988 240981993 10986087 253989758 111714320 339589153 297719384 448055483 271191494 760543990 238081134 290051865 201894648 659413932 2850942 394645479 178671498 730183149 306579985 537117002 466260538 756553984 746675005 974161954 679276002 776101797 486936708 530189102 368085709 397041438 355656439 583173653 159487143 614070474 608432581 947376978 268647967 701165985 45044970 773607169 607161078 750708532 318013097 795464624 681939817 829087669 32137634 665172371 640945824 775522493 59177465 615365391 515286602 816245294 268180354 878911754 364368770 877876007 662892694 927358708 921346373 932212454 373334997 833929184 470079802 993924245 32918492 799016971 212365431 282165860 106055333 623356756 94715607 532405756 53791922 698805052 381425766 854643421 59277322 402599399 87107454 745096031 625291827 943259283 231361321 238980522 227845449 539269425 214019661 771129235 536684172 651779247 613200431 789659735 150066645 549391062 34608172 328952682 183780010 687496965 521200298 600544063 182928302 209480777 116186162 272591107 163882738 798115527 230417015 859677765 790291471 891307295 398971421 525926864 494597880 621490875 442492965 552368464 305645469 931814357 197184057 894635802 228298227 262184223 221123562 753434193 284484252 915460496 7176926 772997563 694139731 925103088 258579337 283835310 106794834 585841455 95936609 768143282 365703308 540523945 144208838 336750864 143008442 992124040 859311104 908922879 677716118 690101815 390170950 606295194 144157367 342532609 289454612 298557277 88261530 928849834 602428059 965213965 876467028 975599178 610623823 944434081 865668458 930093787 4822013 678345964 482239127 797650043 687817358 991628855 982043331 990118052 477697316 878170133 136059523 442298411 398352332 942347378 106740384 390368942 300419304 708308883 616725598 856088972 211664890 772519063 393502301 879466844 692672065 734585692 686777236 880491403 498893973 554694852 301077416 397461115 102982464 645807293 605911484 621268781 171274258 401859343 120804909 376843283 53270097 187218528 31643597 81801179 25004361 874885605 8712591 652656520 144624491 320489955 185891543 515318888 461898962 873982829 471970930 654762283 132090766 660083908 466828087 744324909 545739763 923456842 557027963 879499898 429478583 748196346 138061753 590174154 386503061 831030692 272818196 445836925 425682793 678105275 318543319 810419863 406381736 797254846 579507144 659895469 595696594 817434681 142816510 625661876 310050213 385216880 306914737 753715885 638812409 788819944 264800685 952298670 941512246 998270636 8860253 75602668 6403024 253177698 11226086 759996752 138728822 356691279 164442932 509261830 393107317 669550722 373617119 858642155 443813749 626739232 226168529 427060307 301906539 808439290 135504373 774362508 301236417 453661466 377007006 613654845 437530811 653967675 233084183 961537828 637378379 678551461 640680337 874224727 430880970 453202850 105176561 980935434 56518677 776581663 513139127 687487397 70133510 661618049 100410966 140704028 84558705 425461844 116469537 456196417 161816287 840107901 32940410 404559679 381001040 625139371 607215759 683219076 220264479 937185352 650709667 808608648 360710283 776092489 13416610 764473202 231692048 523569671 93700680 442492720 330570844 555656210 203786338 229262375 47829504 132294313 93491635 215443242 91687521 318558211 257664919 383049186 104414476 332894508 4905826 334408460 215101564 559183973 136961856 370566815 152293078 943334458 529750293 930506694 183519129 503070070 28890834 498079879 394686334 944447218 366011667 598439411 51543262 174299484 135146134 521831922 459204359 477424457 73896493 755149897 629879130 909410671 146789285 190229056 180183641 977204417 203462768 988080709 966617279 993825090 380448542 919053876 675139806 917008512 604155383 773421028 660783806 926535759 642863286 913674917 441665206 778902886 254917016 971395854 261039750 649329235 341227233 788158265 626104362 980844590 913516016 945811433 438776447 697800351 663171605 781700257 294780455 478537866 227823121 945578576 29097402 163061699 90339400 118824317 15551055 621284651 173807955 814612950 181542742 423392752 212812 748092473 675736267 766639348 494065630 874327239 635049744 646708018 228429506 980254214 256781794 290549825 130535488 261111114 119305885 941682201 148022870 874852238 524121102 836938730 254311502 860948518 237451046 966568802 845925021 887026482 62513023 959092531 893484303 975864309 97482934 169149239 23549 906390850 847317156 894436869 639854845 671822031 555563605 845801469 731601728 757069760 401654453 479254519 213501395 858126972 417453159 958590459 867941257 908243835 676228345 906029173 224068235 807008653 28780207 822982540 41902311 417227289 415373313 757781929 274537344 768341690 741620903 747369384 376224179 756899678 517150674 565500397 321719468 373525959 256724370 490916575 375255424 699809708 496956646 603736987 501614300 724084791 92202094 431975940 167388062 201661631 160561829 477456352 162322198 280467811 76275980 141290821 122753630 341594893 153299757 367776864 170162246 640986216 252814436 757046733 631471442 762228040 649241967 880669900 448918819 449528285 365861463 764407672 739110444 883090359 828576739 853367491 307528701 824916746 156993620 672089161 140037115 992440480 835377165 985940840 556378753 618794234 272720163 889584840 820016359 844631344 263593159 826730404 352865311 877249063 332500618 926539854 83787098 842554638 833799296 878797081 823367307 828219153 749038664 883220169 574282762 729495179 379573584 580296674 190898620 776780669 724879057 866786161 705956120 979732576 259896260 502205593 380655703 430087563 305067904 512379618 385949717 689978756 8216823 826962056 413304894 473591196 270053482 932456654 820044236 989065526 811959325 881541566 123344677 256935919 81816778 685767379 275185374 593985045 238189065 299814513 91860947 269702251 89080676 767949106 753946234 898891968 207871047 699765216 591652910 806407957 572470593 730248383 282403626 323267677 180467040 595334334 21487875 42397556 1545553 203016268 124233411 997704041 433419288 764556651 560871756 963382794 80289260 393328064 196433905 806691510 131394131 919983816 764961391 818731829 534370500 896262841 616546701 970460251 313847017 661539024 24032305 818986625 774707821 993338633 51656152 246448188 125849980 473400897 249259076 706777932 6669022 66768351 34500617 714122582 190594140 358761613 202151361 917494158 591973418 711253944 337527771 662377082 449375401 575100209 214708622 513579086 102991488 974801920 719866091 911506209 178772860 776080365 689249038 835932538 365327530 728640213 510887296 555006046 352023317 716592825 348190453 893359443 575782689 582718203 335035573 515021174 152746372 864047679 657667940 833806613 85520766 591678730 482963978 483581124 12193730 533124060 365372605 964338191 95866895 220869405 219805734 733102742 675648263 945821421 792296132 931894248 924006549 982289619 281456139 972960970 782559416 959309674 497572280 585177232 415901049 714311155 452003225 843837419 784512111 969646736 319039813 550880834 529753283 600822372 281936470 773234162 146683570 445170364 274898554 992491734 485726296 689768016 477403672 606799921 563022814 925951671 705652566 891396426 465614713 643127934 473240046 610314404 397641974 475679246 133881533 607190702 55512420 427890858 409016901 424986927 271104234 462357571 40825415 154434494 128397311 132225512 115364832 936088227 134769727 345751258 117045236 638504474 569950569 926555432 505019629 983710665 897764579 949533287 277039386 921280356 364420432 688127506 73477860 589395667 46368278 518185151 181699204 936120300 96707246 811969255 448364670 957946779 174607050 283396829 147065850 441325473 261007758 406551499 30746189 47274606 24657373 519557527 84919211 857902773 160566996 589897844 292720267 615186014 426782376 963861361 701560242 887595384 836530928 859900067 802886209 950747872 925535260 984492663 393631485 648917335 379681167 963073108 247302887 295643545 278110684 817302912 305449923 911225166 899328728 944648972 253740073 451743398 115883666 910299500 686634439 913695740 200007007 925060356 87216579 389523445 316321087 415709723 403323871 870248326 615799030 786771180 20486900 186337333 83336929 108232422 102421101 213776369 157322282 519395523 365804841 602699240 279222943 484454984 178926639 539310440 92778340 193813148 146842124 814005722 98914833 979017717 919773428 955837879 636163246 638454321 294214926 589069519 412379365 558638140 465332834 552028336 60592815 103716200 78778069 862870825 670869855 984986573 308997419 783108887 44740739 724633826 620476992 797978527 685249041 824467053 215760546 744856715 421785084 495064383 269578176 437800420 72562607 341540588 120889983 450712749 312638576 421351892 262081443 471810659 226425737 587130957 337973906 775503161 210274037 402250031 285726128 474735218 68141057 541665269 260801902 439953743 315572441 889012535 725774817 935777063 650913508 656422827 110678894 908896760 82809436 256097877 31612972 672777841 669643676 952798255 216491969 768698493 58658063 261193389 107330433 174286623 127374066 419377011 230922635 916929409 499219989 664856024 624158669 653974821 134201117 964887479 409990781 964266137 623821595 699218164 484521181 576195516 516331896 687808157 433788243 653688244 221674398 387469587 57864378 720450895 633966623 879810898 338283042 696187587 421112157 906485703 602780216 785986525 390506582 689732915 470459980 639663249 567085422 701334354 560111472 970713347 142209812 683125344 358381359 695063132 83602728 580457730 218530007 539628962 437081124 456410019 224086296 479640783 49652085 844282746 775373245 833554213 750663315 931047445 64098765 79284100 36175834 672443608 364700221 398481025 205435712 299145181 260057459 942226564 911664911 972264374 576172376 877388784 346721920 611013351 558986918 858421115 511042565 714653657 710942863 932515318 430605667 928328675 109302794 146154553 121022462 611512163 257585874 690029571 305571471 943903353 24188115 949541553 930949031 959859281 312198853 844865864 158521496 635086271 410038501 819322260 503138654 729049112 11947608 511924233 345887660 666862302 632409595 808535603 367057710 823070378 737388543 857748218 463181978 932064631 186245571 398763755 303469985 317283054 193729096 804070691 761980196 957633111 471148197 673239567 552694586 771128695 449090928 569800371 133573987 226066342 103815283 724353955 381211550 457519067 180199380 749872944 710715002 879606257 295848419 359838105 172186319 438474435 314855730 590695320 116430606 625699277 303706523 499171245 152233213 895715746 295956925 913541732 284898067 754007318 492346421 799881291 441834003 772222474 649031984 696538487 517789359 741113580 106167809 990409898 401673250 916840987 915621561 929284301 377769446 888843042 607218157 732434636 490959989 639691987 375695899 844953963 418749842 552184383 211798207 550720782 523180608 730464122 351360540 723626652 435343309 681663932 347423576 860683688 267505512 892948168 213109598 824821297 692835435 765503342 597218982 959037279 42370653 866938217 795755905 804344573 64757178 240550612 60127298 65317584 60351492 784931177 226630480 714907368 683602749 762818462 155686574 849388542 90804415 128223979 108165573 329698140 274599199 972232719 478880189 839016282 234518619 557840364 193848603 969065329 658997995 681687890 292745974 341175210 279492712 876485080 779248158 850221707 344499107 913905301 827112688 922022311 216153735 514350077 2107363 836546628 19485134 607237112 232531943 714369465 312012873 328157548 133238530 861472556 687188536 687989314 138742703 221350711 216288879 446478828 415736673 787662397 136359943 300745240 286724550 874529053 621709894 815785310 369796142 603132467 152518266 982512197 275229665 354155876 263187213 891266766 78479818 857582257 457403255 568269281 348970119 458988259 446031722 984462060 402686117 926135901 680107216 887055758 532285834 648504865 498659829 560334129 23368992 138740228 13068464 609352582 317421048 840893679 579597190 949772016 483347170 938288061 483389485 714084401 357471665 520693325 330809691 438073157 125726492 886733506 409756097 895021542 477814889 586738227 44051101 681660965 268386257 817779576 134034145 477852112 461727900 666171503 508280535 752359078 732893375 874081517 577975831 692544534 224844905 798475223 714066416 738731599 175470306 191512311 4106151 497207136 230819464 603565543 255667337 605327401 37721013 992163287 957033976 997727174 819857218 945596891 453899818 760277073 88984426 774267943 289212184 827138465 306872562 639355140 51203148 928147254 521913695 537520192 96822840 208145116 82807873 116831045 37786123 858701336 556653805 655791187 449665175 749379259 202236898 346405035 126154919 231454137 207557541 950813368 2884966 530183812 150844846 689182678 237781911 760563036 585974717 833485886 141552560 777343413 629847315 798408244 271099012 912929023 851822152 963650843 292616134 544313490 298130484 833011263 422208262 777284255 622937046 995299125 847618872 937743431 299808590 375000104 39989245 248122876 235652433 389987681 146347461 821737737 94720706 120692670 17315232 639529641 197477020 750236585 170847702 609118365 481927527 947393889 154162302 778539440 437556473 738029344 633069901 646325114 510929071 534684507 307685360 666472064 439560481 924710108 850228124 996163279 464570072 555234935 119563661 873711923 503713886 779458738 360490607 398308492 194690210 531495708 127443504 423625803 48206920 400219852 394158461 535634528 369134559 846443291 351550841 883140903 309963193 510791545 264617562 785702161 126180229 278349462 238774262 485777913 120032485 170668269 26372748 366348400 297850033 736282587 307051576 500174449 58534835 889359627 349739148 522293652 358217040 572296941 255142801 739022164 2857155 442987595 162324364 244279938 148953787 649884745 169461649 271472944 149382305 574734031 208320210 575568283 499804507 716175242 236843761 988529771 584878181 888940288 745066164 856662521 143243066 620077608 215222708 850928747 301488544 457089475 100748610 908471521 628866928 841495445 165052244 212543840 65184651 509205621 147425159 287924890 231776548 552435491 200832768 862741191 270198576 517225185 326228068 615198282 478024198 528497247 34131717 231134596 103264932 668831338 437853824 677742539 523076327 569755819 226269655 264305673 177953905 904150622 320886696 829288975 543066531 971616059 725839524 967269684 427845626 961666242 725146443 991118199 207903253 250454772 168322502 494014418 417834564 816360688 298511278 739540769 248896202 303960619 195905714 773931506 96802758 117845126 11314418 857445266 648962681 659298013 246949721 556172149 545197912 768206296 105850023 528030037 390497297 927482122 595354150 759288881 497485114 974234960 767422666 771662314 262715122 719401662 433440587 913576231 162721205 265270992 84967049 957689621 394357082 428527602 123229240 704190384 10644276 871694462 244611161 560499475 495021784 599140856 496285346 894507833 530107330 533510319 516498995 931578217 98131667 692138033 314954780 626229535 376354993 421017260 310589032 898175988 468444292 819684633 654782621 879257017 813684085 952634090 208120893 218938685 102329979 547607816 93924091 821236487 186002353 705014470 191502797 554491970 376566833 699147877 430594844 880378373 381998591 934272544 418537755 954208763 838255296 852987069 657491661 934574432 686518297 737451516 222040255 710686883 516251137 857645181 622579948 699106772 322128566 755892111 649472897 861009118 416476521 974770680 655943777 768142027 182577682 944456976 260981894 835057745 463414464 953745505 643557773 720050609 498073846 902058503 411488369 929695223 440692079 495441675 8707064 755421218 570948160 884920393 301544623 345408925 183259033 239600886 169258724 672653479 666024166 802645116 41732871 369705779 209867905 681461676 422087125 748727620 618658449 945152476 14798951 120219936 105263795 769016165 311738215 561715513 211215539 734411850 546505975 794063138 61508544 403525028 41441691 479126097 275532157 507830668 7902654 797777974 349018135 447827449 365875416 402548893 146959763 804120959 54684016 342098259 170878871 640449938 211763017 291022317 44337211 877303311 314272935 965385448 901091679 987801255 617381697 973284639 8776159 381890477 317414613 709303500 270270683 398337926 112596419 721110134 706311561 721221166 275828743 986402108 333289405 952567035 530522320 891489831 720912490 981843641 5306843 362902633 24660875 459792469 172548272 901130463 154497715 813364108 666272728 796021937 366649453 557262461 452638155 827413677 98824894 802269229 703981986 718309580 569264447 824640790 6750744 193253295 17023889 160312162 56002946 470834481 350525482 896853881 111741675 908926067 13903091 119304923 91950085 475397976 452434812 808653359 438592346 814600014 683263030 712440667 527303887 999652383 841799931 959876838 768069028 811047308 662766851 761020190 425593241 636835817 452794672 885924721 550535925 986014979 124658887 340782670 238068684 741659458 96628680 976099536 472209866 728018175 219615712 623524262 318709534 963051893 592630256 596878525 38950958 790177765 523919110 943527642 72997056 141234654 92603515 533052121 86205497 609290332 509701836 718427699 200035877 608530211 33778402 473439560 345861635 531461970 52089694 501607504 360749367 713558339 77412631 620498038 375961114 392165340 245194355 864715639 371706779 464135011 386983833 706666585 165997847 198421936 135481577 868874145 195728855 313795012 109958253 175256277 681804 849142377 565342328 879640019 477978296 791079184 596877606 787792144 518808395 574498906 209290879 576975515 374472680 898081903 137730154 238520139 43032885 514285008 189826540 610765156 593733576 660548456 301116824 639301605 339156420 591731041 199424757 606279661 89561723 112040876 100468322 391324296 4925278 801850401 407611414 901302789 530770051 933295941 888541917 916155681 564478471 794257179 216990909 441099864 308269307 683578867 450775960 530427478 11638458 954574919 491870109 853305480 174630371 276475222 210144148 529994535 173417019 967767095 378144611 681788919 242285436 535778378 271935149 563583878 314315936 763785860 547440243 844630332 83544505 838999325 216216782 567276051 420824726 998037396 286883304 818691777 492164483 911425152 614739042 642220980 289622810 733150399 489456230 919164717 566417094 576895450 147936296 635314759 280620574 496717921 463355384 632551242 574865459 864542377 154417332 866685751 686374990 986325716 613340553 860195151 122997992 203289120 54115178 957913441 211460624 973629194 60493354 749420876 546517975 723144007 722838853 833794354 267463636 669581884 160846750 417539107 81240129 447695330 325593793 637630456 271516085 320016489 139864706 460821989 203207635 796570733 147719773 424391839 268306815 551383866 11536310 889665487 844920740 990159116 544427346 974931837 724083295 886045921 870251044 979623666 629291111 938726674 68463299 504138815 342435770 796434427 752186364 796966629 585902338 608262451 256317447 348411184 112746171 727108724 550303122 772794340 124308627 492082703 266881037 568600590 357660249 406341609 388730809 927511012 158903387 432801292 425184307 506727294 57168117 209462493 189451901 255301672 129009953 610220967 571115155 733344582 707470698 708956766 701814186 752991665 13663059 859306936 207451836 627908847 604134910 878991256 241520427 472977178 3293485 806706116 315341714 987021070 608063055 779208458 408460342 983913512 127324696 397374015 250308748 263193837 154417656 706734092 74670533 117120903 103701084 408622317 73753217 882043084 637942302 685809108 658919595 841027249 36881391 425192801 250259903 942758665 55666496 470100758 230138132 387363540 204263338 428389609 58555149 400041965 259194859 868119976 819569615 924056752 121284588 552521925 154792749 549900947 128706736 816786285 350874524 705990738 530820692 754491642 217284115 472139973 205372899 601764084 93467487 499871626 115837024 876661920 577729397 785566056 440009439 924563339 574469922 606746276 316343655 568959639 123825062 848541502 573463878 821398159 151431711 639332298 602603733 879977895 791645918 879620889 615279281 684286783 272437997 649384563 25331906 792759596 157845012 370091167 258151164 577465781 470587388 657633742 500297777 782354966 336275785 889443873 408398451 746947983 673998571 990712341 89476790 256890058 129718823 459251663 314303038 601561162 294270360 646402847 387007267 844800932 676319670 974199489 459561875 820437583 552633442 645492695 299111398 413354585 344719492 385822155 56083753 446363656 61354945 79562451 7143299 27213697 12886170 160983270 53134176 761623419 438805242 734160790 440037150 687871387 491652538 893513559 3055683 688302108 144421641 528129857 152286113 175637981 3338831 628400060 45666046 618831787 29083345 229587896 57814282 162315519 109205830 282471923 187786035 352795092 155266795 470689381 137850410 836778127 366165992 739981183 24808406 431731722 120446811 616471521 213699682 442183063 343228855 708789428 577885723 825975793 628233426 887977353 852332991 916492089 534382004 546801100 278491090 326262353 114970634 603055997 20732517 969688605 440321695 885835929 288682454 676865814 340662700 958334117 28869488 723131965 12711310 942515324 749227034 875296885 23546443 145031640 105562253 343604397 75663119 465743421 286019708 650872543 22586077 351712347 30055437 327575477 312211076 369629896 216908932 342351835 250880619 727695217 345166668 940553357 502877138 985703528 351061806 539027738 429242522 814270272 475402948 540197485 132941089 543176568 269095228 745315887 402947997 744683824 497386308 507695785 435561750 626543936 326015622 923697977 621025548 694750117 611918864 638905595 248038642 374143391 74588965 375756720 352972527 591208930 420872779 908578308 425913154 977197791 742514486 956320083 835976812 914519395 248462167 411179382 136282624 708842726 340270964 881267746 137604245 950863312 55930355 735841351 3723952 712151560 324145700 801396343 107443326 191201991 123465001 853338454 285811377 417754943 5461558 270964015 260278174 350733201 126959724 601918432 278916689 731812005 498998768 575760192 368860343 874096252 474968294 631499635 505383326 864433351 613374094 808454525 72196551 352835248 209277702 380952711 355130730 933499737 646552280 901513365 842663660 946414602 202025821 260066993 83915938 458739717 63708338 997332386 217282193 476698356 122081236 845644912 124693908 889907833 90397474 815342247 364580464 810631116 263805735 547817627 161074949 704338083 615870696 718155995 415788263 481123883 41632046 739948733 174216669 417460082 399122913 720271005 454034146 470090996 448536308 772029320 103970379 354303054 142940901 703626056 296041319 741068022 56645259 133786448 48834473 860551527 34100492 563374370 348121940 413614022 178889575 456697608 176095506 247210325 118798492 312834436 292716984 846338985 791364527 977533751 480685870 832027303 507947160 956615021 711845658 801314356 25099429 952484722 507944598 853730802 832604283 883531484 294341197 899351312 84021721 243441260 221647486 750035525 121937807 993355210 328877298 928931067 134809784 794097411 61741502 502883289 486204105 903257458 724527263 887545132 589439194 975321348 203588317 289156277 254165250 701748054 612936459 955770266 151130 727679959 482196002 958384918 844227619 882870645 754265704 867336972 609225884 970838872 81272848 373035098 165279856 293073594 102146807 810941969 219949847 418741390 157980575 940322208 844981221 885281262 883956557 995363460 851539757 953443923 615972283 969397542 893551057 968124680 675031780 884161961 121473325 923399111 66688274 646428056 150330670 669554542 508044955 762030688 43494389 478966150 119330741 875018121 15264878 277080203 55787696 437832571 253954461 820226805 792066145 845987674 497371536 981999360 258324399 887139619 142847034 249519615 193776521 514979120 503225710 813561214 100908956 884831354 214508392 727540189 444447501 506941068 426485049 638711249 390239799 669188619 287890829 769061320 383164934 682009029 21394807 451870508 218731996 911295598 358643237 905943454 138772671 325089582 164800073 307979680 262218721 265177325 25320453 351375329 131311594 545795636 26214290 527045036 304668714 950796264 804971643 845685100 142442964 818162606 547724952 789718590 329258550 636062348 473886245 941276455 360535433 363859367 245657086 999023044 683611195 782207289 396011042 451477671 446576488 811411373 794485615 836235935 571006260 737332687 128058658 262653235 133886658 690029754 417137894 523244671 110771575 325664916 197871936 235927608 122999542 519801981 33234260 203919273 55389195 902568165 368686294 907003205 817460408 970329610 93237553 215415105 185525821 958722561 100358906 243276092 191922999 235335826 99634754 487511766 47944994 49671333 43504517 682675004 202958198 865096670 593567846 718572254 477608622 852213558 222028088 599199826 36633736 728406162 151570942 452678262 5389861 327623520 8495975 126191925 119456400 583146372 124359315 634493709 502017944 582928182 332496468 342613178 167847288 483801765 361548276 695764552 204273129 468645001 10840972 101010567 45936405 288419081 227887722 651944542 48927615 215877751 104885469 304208218 251841859 339893244 106999291 528783993 298191135 365993578 190368267 856616236 277143101 817212478 600283952 855139871 602997606 809374264 507196192 665740111 307113609 441879387 13215061 913005138 748686788 935432406 7106922 897661630 540833782 763611353 183940077 462067755 298354768 953930078 897005242 905636161 13264928 237911834 154557709 854120047 143148907 303900123 141637609 527547238 284909415 424883297 91729790 934741557 592784316 948114168 754632623 998938204 264987530 407200760 341280728 623819435 110747748 581806962 222840787 728675354 442793345 900463360 377846499 627175237 65394130 378206919 56142649 256451918 175056870 644444067 268353548 900312357 683615036 859010275 247810903 747915353 237084900 760619167 128388320 560782561 44033673 207810307 166595907 855301381 654947626 725115467 172702073 229697278 182023999 547979192 89028327 973804823 949278007 972527477 699979088 852895308 368028118 986096964 578668286 740619068 355966567 538694695 169384075 521053920 478619510 524139970 91322677 934650373 512548846 550197885 414535339 895220634 634184880 896443671 695267254 789270569 157556669 273620468 269273881 686870857 35795088 710048119 105949658 663538854 255111556 345460722 187274608 228571636 24937832 425093282 183847857 444183996 135863867 796157668 455890631 790708136 181261857 665672473 425706723 876264690 405792292 964260283 400345676 966533781 961315580 972643531 38385679 882487221 319251201 466574319 120667476 323940563 277043134 590468949 225436933 709196017 650305203 751081890 725237631 810120644 412375659 913086820 404484677 580863199 124153058 582973509 137734698 191843197 6769550 515960035 47778303 435551256 15164814 460085067 250412971 269949841 251244841 687497067 582135793 800946854 253783487 387612927 331402397 739987217 476358109 749567258 167320222 645096993 416832697 548019594 17684822 58024319 13277060 625205185 260676909 765708221 25075035 668686469 217735827 649767208 253657548 736190148 300789992 627186308 251113798 635861568 354933304 375012905 283228105 460861263 133452291 509250702 229055446 585281816 239162392 340943494 338280455 545876601 95695128 324068178 99457038 771214984 325543151 449966693 25680612 135300422 110704445 587248590 21871910 84859938 76960942 378230609 89813863 422166641 161959673 292111230 229544114 682174313 665483911 885990932 321515411 803164423 88400184 571629770 198198518 233720345 142875326 505945514 124587831 220406921 24283108 278354693 267855954 273897661 194699561 880050923 102450988 859730762 458458114 494140648 28785889 102321171 54324405 925405582 413747042 941590493 670252992 838610732 692527063 823491026 111086567 843485955 829438401 857424850 10076957 74862270 56841687 817077854 330698615 410540960 222480316 747230595 478631152 994230843 245099249 687494048 286717690 987011125 349958873 613042194 612025589 681548060 261080491 907298941 136276282 688568164 262182066 447534478 302665358 464007060 447730646 938727749 33136284 503560227 59311936 248934864 178704465 843257901 53485512 881214457 590173982 685689916 572213720 799060761 41209931 794567143 686003910 857005411 237402098 240768523 15387317 914182085 903559725 948406622 294148332 523059530 159592270 176257046 58682829 518802805 307819440 681224549 637569892 822944372 59434030 455289323 258942329 414447960 207440938 549156562 374061175 838129821 184992692 192276236 164452538 427475617 397981900 985114897 413516841 462091651 283844749 924807351 483194781 974957442 695990400 715284744 88991690 180522813 103256459 802356547 273008164 559054013 324089754 482480349 230250709 593996211 536332842 714017780 172926552 219186747 126489469 555142573 329760171 660303407 510782463 897394037 71414235 191808041 152123869 921719207 413211630 746914345 450207395 489263952 225211318 785841802 425379813 443451747 224021189 758570131 28698646 858635757 709590758 755033606 730102121 954408149 9529648 599288583 469064073 589028173 270943990 366002690 118576750 802745924 139982341 272415032 117950113 763737413 639525061 759909751 30165073 763952403 439229700 451662119 388627465 840845513 209011208 667485417 574365766 766666721 536874582 779044984 743779277 947361016 772332105 801722783 51416305 306314287 97707384 710640596 635448085 867347546 630276364 811769002 564545511 719237067 396309510 920408382 904224661 913752033 322599135 497121243 133338221 749395052 682139943 886431490 209585300 561663094 415103639 562094360 485206523 910009336 90488851 335796790 165480877 781499932 322708706 479845585 24169064 391068735 241624262 569186752 470186370 830950391 633246680 883616958 613666877 941562110 646612631 754099432 86921426 693475616 619004741 902247683 197855945 972712921 482687437 728442539 32225002 338517233 98139575 931471510 100335905 856092021 115294455 610442348 104228481 509495742 322955563 681840959 269994520 744774127 689770064 967763307 537762183 634648485 83571585 103636618 51284222 997999106 465286888 962094646 502889341 850332176 406219665 614315958 604271136 881353360 83899721 725237385 161757412 869074561 162549626 244150994 34954431 356382310 132178734 241527598 181065916 844598992 820683194 869156897 145752086 628641994 449069921 607918870 216949861 733326113 37162933 315595319 240112677 491425313 2829366 427967056 144327978 615516761 577640986 771271176 3460454 345400467 36556776 182377884 177971546 468815995 256265969 634089713 522739213 590412027 457245256 738256261 327242782 695695745 384668073 775168506 684138989 941696352 661747502 716516782 42074343 371893588 149456021 303638536 37927233 747487864 82464742 285344215 45411473 421536613 33429437 203283405 88037463 707973672 86833847 674558480 148495514 776131621 672625293 778865310 3458393 347935145 340994230 596006976 122527336 542671049 70037655 168128919 66616997 751784817 166689216 885307461 660868838 693747844 544783767 569852397 161334580 546156419 535302405 775644743 403950628 753217457 211031654 396634518 55158749 268600715 150841966 899394458 439918483 614606637 74901691 451204331 405920296 527004424 458046618 663335089 408760561 465350820 434520722 492607371 481494577 662158237 504283522 709951199 49322643 983697735 669388594 989674671 895876215 974389486 957665417 994220266 258018787 284577174 98888500 129609529 72780668 991510517 161682404 927496127 1507580 874914652 750919649 811606240 700173477 906086758 676191530 923147739 476306945 685599779 470233132 791919553 311687221 723424445 160084091 988530287 251138261 323547397 280540272 432148116 191540430 609958750 607854469 825765646 390939073 911892837 387527894 911027122 885840055 930542866 244478268 368505952 195676329 630674667 469603830 485390690 423821238 425880702 131954614 389465587 140274652 450682945 40951770 395358227 345003216 784656762 130797410 838926464 456915383 810110254 72947309 647811958 472985934 840739675 196723816 506907411 85184092 395524537 20836892 350192970 189438078 383608743 17111074 732553246 394258285 570862587 275507641 901297618 47777491 178957060 173796684 426937479 173796778 320336364 126586112 929791727 214190565 599532755 409154803 785440767 282359832 971243959 9888178 780370696 202906465 670743661 625051032 925752820 862623612 927129986 612804082 739825212 732302022 832096655 707328912 844650034 315964271 689726234 682609035 898792907 145792475 931556952 862007363 862522030 773354059 996444944 642196725 960221801 249256372 289138884 224319581 726364884 229053623 675013815 135250285 622438342 24842355 368546416 75165048 840773190 4719882 406805586 232969299 260210221 201022288 596032314 109000134 298236758 282521324 847733407 19287005 938665124 222949716 720339746 462809618 555823710 218350951 885458172 344825433 437757604 435974737 463978511 48731351 322803258 134342987 614442637 36495117 361233136 225455241 262943871 170471804 348556977 163041976 309638430 72522345 874796822 423640125 518453311 371261529 972126481 437043472 806308443 391205779 521505788 296678951 510948107 397956110 770061720 632930729 641049482 172669177 337488545 242897921 509184754 191305625 890903160 528100095 706513729 110015348 716435621 643962613 910883579 58601437 819190763 112675721 703144116 650621269 837529141 178187339 914700709 280426747 304712173 221656431 943447636 704826821 736761202 11701565 924764686 300403167 986347584 14899677 218380549 29278771 907771905 327675078 545202244 446722581 931812607 654142563 815901621 602679325 751257974 685912927 961089984 526555058 703578218 562256001 685804749 670873452 851699272 341961443 389343649 112262732 891394331 547909538 930896550 602114314 720959466 610902503 621604734 23578284 394990723 375287819 415340789 33230446 853857680 655902729 875985815 261765313 368327842 117938936 886829083 755661259 955549477 204346826 602954931 557324763 813158795 191755414 219816528 120705301 641719671 299951443 367416907 241233622 437648933 359780945 939899752 114183772 476894359 300491099 822946724 772980432 801608449 140103547 238670081 113648825 710902138 560493950 668508998 289149019 554911498 522334122 540403073 325445687 326787205 86350701 558264349 119138282 957577963 103089973 559019441 239194846 631506085 183020001 950502231 546324411 897299937 212542076 380440789 40395803 661341609 385732528 943091108 716723450 799871567 298063204 489087011 206920946 704955900 688129434 954762188 552897184 584991606 435694494 790883811 193545865 935792356 418689870 678616943 142462241 935303614 781003259 906701859 875852901 961162338 44940993 982829589 586576034 917100944 93982907 724134933 659455031 756913300 165236638 785226285 325948769 832306716 813412352 815377932 405838173 706092374 254608990 938798077 358531047 733051466 349512658 644197176 612558464 823407226 717274718 982535541 935833081 970291798 763993265 886021838 452052953 540312657 196407397 769464335 240697647 842527763 292997876 509474800 404539628 856671766 655963195 996670136 874285164 951958514 532747940 954072732 750112914 835955203 711902493 714076476 419168178 651729816 116701690 663458862 649691694 942525195 569608735 966109571 595076023 688634498 111994851 829769531 339354127 637211296 408661062 718616213 169009249 770156844 708143232 797758288 768427 39000741 12146415 649760842 573911678 671122669 377199898 429289334 428847393 986797897 628451140 809924033 58124959 751961029 366694539 628413190 422170536 721155569 231947845 809179369 757167776 860669368 773474694 869185639 821476914 858777613 741665972 945044764 218817281 662932206 64517016 153639222 17304046 915093397 673447277 958264446 29533694 36848525 1176308 335886201 188682759 379276390 98072533 450092382 36225661 603461760 465907495 735171203 126127560 518947485 414674056 762056560 552822591 788854015 297254714 389964309 319834510 617412820 566940803 762932366 631163350 658029269 412443535 898540198 349641008 947089033 451759700 597723350 307084619 969057232 636102550 796503466 180600158 541653258 94993177 933701418 830880984 849200482 564368502 967401931 711764948 832407176 92856276 329047710 141360169 266413160 54981133 843200740 137561733 329273266 35839916 941541372 864732514 930908105 718668155 816801931 359934431 482209254 176516983 177126001 113983821 429339597 395683283 650013597 119969975 347081031 12925835 885659760 657144722 972784227 376910144 878636804 80721383 968200594 593486849 686409647 420426525 947771006 41326201 86379604 42640317 464013555 65579648 743473999 37999616 152959383 9554384 952218534 3399571 368456707 3234636 832050975 338023619 819147868 337231707 942518472 299185377 662790944 611854197 824168003 254859741 562185954 298436309 805205532 163632074 388965036 283789231 916696541 566476064 758862343 401129918 981346138 858575117 930524022 239262062 443187416 272587249 832777596 629050398 888859925 105739716 129336208 30217992 72016292 61958000 152326336 45425911 791699249 669214266 826078167 136280057 924118250 405754432 665629515 18734416 328911471 100934413 506946905 239455912 410027099 355401081 526006306 22940973 482197292 340559714 381590555 284493408 387240558 339112043 671322027 300045839 472351372 180482022 397254707 373623858 759764078 26264247 379501547 315877102 515317165 362687754 580535956 573127660 992527108 511025406 852054111 558923789 772986436 512182500 704049996 461648622 763391030 758440399 896090722 555612897 829572763 171665374 787624237 560320070 635149690 121435168 900556727 496167103 628676530 196159993 379281529 88321165 444166778 168712095 317639724 259729543 832915015 296242999 935864200 368155251 874458712 678418632 713062867 22996951 439474806 77967003 612518937 66903700 636153182 357559622 567068417 299733586 901843627 737652900 942737175 635822741 752303140 716719025 814349104 768220710 777517353 636187866 763368906 668154060 965133057 893544806 955788219 730781883 803199378 256663461 855734461 730521666 741838328 605375858 606910581 582696260 693777602 304980404 495734395 115810593 462374937 232944447 860204992 716711442 727734381 348664087 917444730 721234061 756549965 565492968 995890513 436343538 697370058 501810521 930073018 512396522 904892466 314995088 458054726 144285259 542979939 131835252 806914334 223399356 481207463 358329218 373284541 234254880 899520421 587298790 857724274 728509837 770520586 60444495 968023876 347935856 923188434 434998825 700532989 393861587 799788654 587713590 962327137 820844295 829922928 704167388 884523959 762909853 856857996 88202287 618869546 496444142 971486243 759897809 950872032 265252099 415589617 130135400 787583456 423188409 818126322 518683206 696741481 506158225 961214433 197620384 775056447 490113168 527062695 114610185 982751657 435605037 889992252 434275144 737276470 423809180 519516694 333940160 350967935 48178005 276086631 209599762 445952368 21694951 885206933 498300893 814253208 562202830 973891120 873286705 916348743 423181667 756322550 503446313 649658039 90799555 389056102 344305246 869043630 16895122 749916587 270848403 976273542 396769504 505745746 423192659 449259633 392083639 561331391 75689866 356532912 349494241 713597654 204184687 689340733 62089144 825786494 475346993 612058289 396655939 686206367 360918598 762129689 363484453 742377672 236932033 371192170 83108152 702901135 488324682 973155556 484736454 583523067 430555656 497447126 251729256 809429562 486226300 492345170 172948328 609393721 570728116 711126083 223339821 318177941 184564658 690744725 644225909 801438810 736362072 770739362 476431149 653173804 477424543 853109533 200746303 646593393 262938691 387054794 112480908 352810048 287362961 959272124 258332136 955436904 647161217 884900962 17802994 607778645 316533122 803848835 11977150 579515604 185915056 329732616 68605495 943950945 399042016 858318107 853667567 888737256 657334847 699929557 105181646 237917903 228186744 551699850 373401331 602253973 157409170 860792968 344169707 943703578 589380667 846762139 162697537 504090692 285897159 648766093 105614830 162430505 39294468 990737381 920478375 969666822 893801630 984544349 690790134 836898435 382170599 444506810 252129083 680051611 668602016 828236245 353084068 793817018 293759057 530930084 176106039 240907389 172576098 767379394 102526350 751569456 734061069 833642752 442442623 626784568 87578227 924125979 310386222 679734925 364810392 429562034 19406651 254813194 176347393 315476319 297156287 348192733 287148043 745091259 278650530 740241514 576758430 938340388 175199622 257128565 38164466 339494936 289763306 597764258 500572420 793555752 478520223 963547767 161912586 896766278 68647264 520537389 341281101 776676260 41800095 340325747 80195143 953423099 81864946 356255131 220963687 875805313 633889064 855106154 604863635 629373416 495816442 520268405 809842 934105763 419109029 491817707 388955387 717400947 418471821 500778250 188187288 267282659 253216133 376486529 221729032 502662968 189626321 613610307 442764643 705762340 386400212 831630583 359081988 813548627 485967043 562861371 91190024 476175294 91004761 845500433 402402762 957352865 213804109 901044844 8025094 995083221 468868950 855933908 854790742 995506194 821869874 834568829 292193146 871350112 386347914 916660680 37355800 515718067 444176747 527789441 205982249 549892913 283968533 955360271 845713475 949808155 382283574 767991773 566143339 799485768 607336860 709993259 223959584 357794951 19743041 429324206 56530224 565147269 489279710 715808315 711540239 798191612 618229637 657293513 415903419 485200957 60353163 652895529 46674012 340326077 20108709 431567067 75602084 267558268 8432989 432102444 253550075 551241573 462716447 927553177 589436900 852198585 343925691 651957051 566278707 597601495 183408640 532659812 23375099 899334350 516262212 910679259 125164069 564743494 82530400 419698441 30598868 229808893 120470762 245194301 232558796 839319060 717284134 949377522 745296060 883769116 55054534 586134919 145843217 783439308 760554865 834645082 162883535 487366293 70304365 685904526 446183218 580635899 396891349 821859348 76882655 802650823 668873474 964317855 79723499 519099658 304909536 526132911 17128551 735083585 243742492 880503635 499710842 764806008 762492357 919847061 826166644 918215999 635917975 893691564 686245989 921370628 858005851 858572779 780923906 974881512 494329627 551659066 241587845 527522580 89804093 348142274 316586976 461693975 334957465 688239821 196010242 751015318 198335693 654964452 592049707 974743753 529655734 947763009 946922936 950896710 612635841 896894724 833299495 960245371 92398447 833191539 429202293 604680876 587780300 828854013 279103229 313542583 18563043 911679380 537598981 640924815 338577262 962297469 568231244 797509406 595395545 995349063 892949789 975320660 796893322 896306130 626947590 907833205 744188625 808462259 783216652 998840462 720026685 858282479 299337258 370774385 251594706 845852637 40575412 57249688 37621022 150977413 94881112 998588105 781574251 946341087 375409649 763979352 521352231 679009377 437228488 457353694 410888749 552631127 295664909 956923257 626520105 796729948 429755805 596427087 596167840 730167451 81127796 726358425 679301772 793742526 217470829 241559332 7367651 231469504 102921360 996538610 407826603 787996750 703643898 769729968 117153294 507280506 347758164 702072104 374999690 987290163 100520314 937122069 923818150 926215703 881488382 957514582 59877611 796985806 339653722 378227079 66239505 986998108 574271740 817552858 352406769 960477125 566632895 749766741 659524667 940200973 813800003 868777317 308479410 726717119 202466589 894901884 352335296 735186589 360224225 400026334 300000611 701823395 253487356 351234287 219373448 899945122 265370114 619870339 89906194 112322158 16076622 295307678 24762798 37818630 328552 822879199 521986615 819571581 699948880 877272587 614887464 722305682 602527067 804579746 316293433 387963620 200172043 399226195 227925125 236977775 86687353 873816442 746634291 843773094 23756241 272487254 97725613 191282479 73014237 637890033 539266317 726795691 68351306 167135711 19696013 283787461 165116520 612403880 87717342 414962573 122011903 548218006 408639379 625945472 321824480 487454230 204993641 745761821 229243357 920646079 584682935 666104509 131397926 947108757 435961605 509647818 260497257 658362623 235143387 745178965 514304440 958708590 510320027 943726419 270379662 282413035 281902982 831112235 406721933 503450344 424205107 907141745 587016168 732109851 722353072 980782333 296340307 990201805 72728320 873494123 88497508 468202316 86449844 167360252 119212438 626737361 178029841 646950833 259345649 947819125 698210424 868854097 48200808 713757414 35715156 659504612 22361840 911282836 169892616 605234688 311559184 520528010 321966006 613684309 608816762 918014539 819216357 937416041 41727040 458339492 417558972 557058938 494534238 823675765 512745906 695352948 258887316 952832279 404196887 868542879 244848362 956176180 565595835 612534889 284306877 344212577 45114233 134457529 88267674 339239659 17808366 52343959 34542494 101876179 19519500 592455949 105820716 624722137 386708522 860253096 232021412 541247818 499591597 735544671 323557253 844365679 739174703 904314330 578595371 613826546 411974143 700457257 382030911 860466530 194831820 694194600 320621344 356480404 87337777 284191062 117818588 951051440 546264830 780295056 107571732 420199985 268754430 851660650 102211347 416464669 327068178 580504901 157492998 864459787 443887277 681806037 128209724 701873020 97053189 442372805 342135534 525342419 384623281 881106782 430973118 810711681 636780336 702739866 351301879 604156943 280467719 873709394 715779995 944856975 102847638 243783001 101298456 789284693 298817307 830340877 370781359 916696415 109145234 817320834 300447450 485672339 352857170 795055260 435643958 904905506 257405628 327201266 319339532 811136276 546418675 875747523 158160127 344267877 13972838 908450519 904997218 936987236 1413674 354195733 115064917 386994266 112846904 338059834 218470669 290668857 232237463 421818450 285809830 645920302 525086844 643274713 94852167 779273898 69407731 331890483 247103014 274851521 37011476 66589867 39143505 606294499 208275397 543523761 19374325 949632984 865153576 895551905 157678444 473945305 163620353 328328832 217492610 887210875 349412651 860240250 535192976 544722906 252583546 602292686 244158052 322583128 168502365 831287883 62337028 888335077 488378997 808751066 223682589 984665591 258300856 829299675 564006241 826769920 11150744 25373534 6234488 882427586 638719861 923339833 846600234 921081560 113820323 170067529 40876879 708341826 653422713 658883795 633840456 976473410 626278429 646235548 587163574 654045196 205267862 348556666 78084073 168868924 105536660 884627514 673780214 963394610 474389332 678233136 501224968 635162731 558780295 742259984 524261117 775643465 465674039 844611444 456275305 660794144 290519060 926265375 771262395 881783095 702268484 948541396 633335710 819388907 410100172 715450493 63800509 696965888 124424741 550997058 420565921 525901122 128154667 143556960 83121228 517923438 74991033 667687925 57923685 154289173 28593868 39201161 14829455 111016650 67774740 924733163 188106787 947154889 760760985 784331386 290052994 804488670 294370548 438850924 344130719 475386095 143701941 189959398 101359616 510273787 122823932 528804907 199507718 835743362 346714330 883980153 716142607 744966479 256652645 894898291 62657358 142553132 125176653 524562726 36514075 555332863 262010946 713906637 39259906 491084487 65135023 535946872 267269866 550363128 211458691 897266806 7274847 854484289 362360393 622095071 87785027 349005008 317502243 777065823 372063377 756700938 516140891 567322630 359793899 641113222 347339718 434718065 385939760 511295638 391416543 547137315 131286840 172636980 166231263 465738139 13594922 923355933 460739843 897346879 45652814 94551632 66621839 380453109 300353259 561200900 311359758 641886902 603685918 714002039 530900255 673597066 430697104 834560758 203018506 826352253 261751257 961469411 424445664 745920498 475132854 510792275 355349818 387706039 84633453 930273130 374418947 725497478 245372780 851405550 23868809 568567992 348077963 611581061 306051476 953584484 635837467 818868442 559187976 742818516 269467461 579561829 534640259 805276840 52465503 325572096 152919074 561770794 421238117 668186334 255863143 585161014 250376481 665446126 150711065 408540224 237943009 395765478 323553642 759390276 369579361 865878542 633141181 692340248 641151912 959815759 14210241 467010529 371025377 751832907 312475281 963420566 761553142 875649168 315468833 755819486 620390137 835347024 44494732 604389098 373937780 771739821 628395838 957297647 62342991 437575640 103145450 665217533 566305024 936967479 366214954 993953145 574872712 678030755 206372211 665363297 223036103 331528025 39802645 489200386 143092311 996718197 289181481 307262847 300844630 776261363 32961753 58362796 51850466 751468921 690056510 862450252 110510551 645447058 102674593 218907251 214665606 550451869 394010569 797232298 722486091 947668883 68178071 774149581 583739945 877411422 218921068 259635440 249443800 516805507 375226225 823552323 653721903 924152318 719914800 984415192 333732824 702660050 607021197 768234251 569330083 661777125 77262212 325681086 236152148 519483974 39356726 197195140 31454714 878801338 700194882 832468015 363054564 496257671 314403839 391310124 20850711 354595209 327426828 501890458 421641744 769947307 108227546 690027130 526517851 711125967 314851349 484643260 45588035 96245807 7818317 189169970 173815306 444158768 169775004 696050897 691527683 755364481 619607843 897926055 502013791 997865580 37483427 166942822 134010634 754208831 635929449 753244417 182613707 526035310 149250823 872030212 38863194 184943067 184736103 725131408 378871294 586056830 57282240 582670475 161837163 701947371 244144023 474600242 423849805 705907366 554663239 981007849 762471066 768890040 578549895 613484073 405684985 932648502 152367674 581703726 249857364 504857874 100433370 571976266 547933209 897039312 310832663 556907624 317854395 638219282 494479902 884464361 690615987 834460953 826563090 846680066 695571412 929833355 116141483 307262850 213089557 418296868 349815478 377307876 178185968 667125320 50957224 891796275 431031809 986949983 610072450 925955826 462663578 939726514 691933288 938773426 884946784 972583002 711650543 911395719 833227170 949236229 210534684 420858430 56610074 537183445 507150317 736071688 511839226 728812017 689097958 742389698 219894096 376397989 253516159 918446020 242048204 667381896 317433003 549374786 141056874 260655344 143888484 513367195 350117224 832540765 429965516 479464279 206294427 832483526 488161378 994663796 844055339 968417284 712704473 923692071 735289719 779195535 256249104 354839678 285405144 431260240 369112438 932988932 443348938 741503180 565489946 722041195 626760337 733122668 404453286 553502456 345818378 753557134 611820198 812495408 222534433 595457273 34573397 838292457 384426966 957723187 747348046 942802224 134682977 240392258 57863928 166530736 95219598 529618393 358542049 507948927 375697015 748219368 625489703 860127388 314127627 545860397 246527040 461471125 168559127 255013545 154184177 307517252 252007434 885108755 626716893 810778063 406996679 442078915 411118024 556108781 307728434 803256058 507581824 956977181 689836520 793371999 441396341 608037511 417095663 441311289 332531012 800944681 651303959 949812940 222064405 613193666 458204168 796265545 94037670 285859463 146283128 992543793 641202402 748937254 324701192 654502735 347735360 909100071 422363781 856455143 683664009 942984814 551773697 621847010 137033299 225878786 66097789 898870869 665560006 817585131 814971177 868511250 63652250 652110788 503827384 713236404 41849938 179182928 154969668 823971977 403694089 899310655 859931464 941729105 90737782 336090228 288507918 823974098 256033253 487188197 90409996 437813963 63966736 118299571 97198778 532259759 401348265 694432217 464347216 840921434 773481761 957271546 891067987 914129899 256537078 803783464 413945949 625450262 612254829 913185020 181898142 457061660 135775126 931204003 907396300 968731337 335408840 474753393 259074588 436184392 223075613 787880835 474769717 668370863 311885614 875540745 420939598 581905589 468917708 827969374 16839441 101596795 19274546 722087892 271256567 337271449 132118558 919770439 904203829 934974648 836750711 883708731 419831719 705043174 696316281 885972092 146961053 360650298 8325240 598759942 278233332 793064157 464869871 808424460 663496682 856919551 644749274 718931830 51520335 465456850 240364060 621931665 433145542 988273633 365897574 757723859 747501053 762455035 348018606 975684468 966793473 989543870 246901396 515803831 154227405 707292588 286964382 674178930 380339118 572430206 484650731 624579418 123343024 320530733 108073581 703223568 230242323 417002411 411941421 948076516 355976544 627475671 335248073 408025691 317949235 762307486 504876591 956589353 374394373 781930934 196817676 798751102 571907124 600751841 507607578 801912547 323678627 668095217 226934309 970498485 373770797 481135037 183273910 510266562 127238449 324955551 9788721 721249960 302404607 328071251 167105395 418592518 53229061 464326698 360163455 528691031 20789029 156904321 40520106 768360891 292102585 693667568 146649626 913700131 801534018 802279876 362037534 577901609 98930642 639079630 20803701 445759455 298334444 330952942 315347635 350909418 209971874 791355916 193741524 680254953 502195654 731321343 600240375 678254660 396714351 775201224 599924191 622428012 28614936 105015095 6003408 615219587 352877666 865074877 792153371 814754785 782335600 823240307 564723770 650188988 343894822 502251095 360971097 842828185 688331221 764457605 358177959 484936469 40957153 499096638 95285507 738291285 3870964 528740313 302055638 541918504 52353481 550962940 225753640 457146260 8274493 302730296 101347697 195604750 56656450 416833785 254239687 277782541 109656483 377123041 1735426 881694384 817424964 978197276 247387203 947822797 347115969 356444782 145992832 412948102 264478889 525942538 440475606 890395796 638010714 955494188 498583776 832690513 780007062 835529245 487700710 957769828 546961868 644250187 236845541 816081821 169670675 245823931 126531950 432296469 230478890 941740114 698126121 760749811 568839353 993370768 642383896 653578180 198714859 812842883 560741792 652935072 206461834 889492284 601691783 725888365 365743517 867144194 758775803 989712279 556771421 934826830 468785925 689352528 244386171 620913998 604677254 811994917 17800942 360179664 259294818 458293961 103597056 619250991 276242814 630249954 143794846 771649309 47356697 358925068 342024765 478933292 193485331 393810823 68415637 195606404 75180497 369150224 314169894 771459981 626288583 856223885 719959752 981050984 754410512 935884869 801177565 969354380 526320340 925839905 235941821 655975736 453412732 735461584 551811461 997265085 914444917 966840540 308821117 370327601 290850467 711463317 511812776 962430588 875468104 997315470 673619710 759386490 4556369 8800989 8220948 612734223 252407282 668496881 666958689 748907807 747205220 821735547 365371310 640764820 39590493 752788680 732576825 888894101 397329513 424921273 9621474 952139810 408510072 904471507 730816817 970036765 93860803 682077836 165214423 173972121 138710493 359780368 258533960 880526948 555641136 784787800 480387228 708207533 513874903 539846588 13232721 517901330 40647563 180064817 101621806 553225766 210861971 451020410 381052461 719975785 705907143 717472007 603385290 625765146 191907742 425179188 294799577 612941807 341829631 718946746 349263705 762928826 213042904 748273618 234355558 316713298 74956811 560867961 483172588 625236747 42045323 957826325 392548200 827118511 552073533 578672541 529163068 693561049 564552783 788592980 95591810 986072234 233299457 534592045 121157415 901143415 316620262 471766446 449932606 705926557 622573299 993831201 542348515 663521094 127965048 155058361 141616116 201352438 7065704 439147144 252460861 380627871 30450059 982949363 826422958 893525992 612430021 906735891 524952568 893477532 48584431 577825035 325609377 603441679 188495774 868239981 826205883 907925876 595452893 657853485 654653905 789899343 426943582 721165170 688317476 911724921 409787526 870172987 721266325 973016137 100162014 598995613 336695517 487943658 335080017 701643114 366666400 474070112 367895283 539630775 176676911 620703073 315027810 408683087 5603967 890480410 492619413 593473997 258664424 962645584 384581629 718836638 16584836 698951700 468773673 827128352 588004561 831194519 59959015 69058674 16868978 882510140 132394826 701365094 383958884 967894488 338022066 474631936 426490149 606786537 272331565 488246416 170679378 776905081 549288507 754574222 504132203 739239946 669842128 750534267 530190731 984776400 411082131 555262852 255961151 785511897 757811582 902725982 672136858 875136538 860936458 944407386 602132853 872101339 286397973 789252178 20174463 973592057 188402979 729814283 205076068 211776887 162426728 193032454 166778440 829640566 91714790 897339591 144202558 944383775 446279025 471483536 311274498 423070556 318743464 711330436 11987007 767682624 297555284 802075431 388488949 467414806 442019464 496364286 351478977 921655423 421134000 919039410 312097099 619926340 446354107 492994894 123122604 347359126 52928812 831558283 495240112 920068158 543591425 561211350 101333125 948634586 923174527 957111744 575602288 811647383 715965266 768511912 522800126 630729671 255586359 462971957 220082740 896948963 160140464 967290050 137608019 450402939 115956155 942189212 453960466 802571533 786443398 806327811 801374843 863518598 321264589 323023774 57130242 554930758 289841777 791043975 703035026 898670401 773811274 893317536 835807607 873001941 696859356 754599151 572786214 858068408 467737990 909773938 284203018 486812046 15551344 118460277 46794062 214004912 189305462 338761049 38035349 999501382 693692875 727392908 615333007 652056335 495949702 683442620 227929723 937628205 94243509 939285673 820636142 845278210 17977090 116583010 80633028 456594690 12204243 566962468 330885330 391078593 131369684 474413301 329553681 583914887 394506360 395646634 132130914 499152852 489347652 489558179 488406536 869454225 632660983 909367249 563485012 924544361 355613462 586725356 85668831 102246040 90502761 294788237 139569824 846217088 75204676 525784066 145095670 884960162 265182696 478623278 439589666 494860752 169191467 312076118 286872355 848355377 105636867 777481880 170932632 830586062 744767780 916073278 834740320 944761497 107951423 716000600 266490472 615640402 492521934 838982500 633595251 757239736 517480527 975079566 536772109 692391926 98661581 825683514 473030496 997328542 758608623 878572912 604163709 731361093 56312885 360710403 298986301 767511138 116728330 159721181 79349548 477131911 158293769 719501765 229331943 793167146 549209918 705316062 608348041 822138997 416966802 633033310 241685385 899871005 775897849 953840500 784065641 921025195 628235913 691062550 33688566 177681843 5077427 299250342 75999312 853466878 9972666 862124060 612924860 618995801 284464594 438522669 271628988 985030937 14548794 903926091 778484280 816029721 801132510 858153724 653801267 861993341 553969062 935821210 896915214 994768054 371645772 972151284 956348191 998503960 227998888 794860549 255413805 303814065 46255372 172587175 40776175 124863874 98745444 492625470 371846770 517931706 1247329 281010615 226362130 242271157 140319412 434065405 124014911 506789025 267564045 424542987 309643979 457989591 83819003 874531319 59579151 205962913 34102619 707143387 486648094 627626523 292952546 914295917 559809002 571791122 116156768 381042463 122631754 906010304 473867405 896025099 118540753 507532573 348495599 652991836 429923544 984492298 762522720 910185181 662279639 727580982 554982611 613103680 358739051 596821764 584130581 794467361 167645651 936194486 682510164 891092218 650934351 908594771 459865479 959057084 212668700 803753878 779730835 809725884 596480001 658514168 99745694 938196202 348990104 540400240 95902918 860847177 290307269 359340446 184046319 616359925 469418215 613183353 38866468 732069911 551159703 732447702 96291608 273159091 260789093 312145003 101522983 850800127 808498410 829410012 799638577 948301955 710377691 832194459 58464001 824836969 130164204 543541171 373339754 583662118 77982489 960375833 613762518 745636893 672670230 707989151 572978412 707176562 180627497 594706507 253167582 935638401 836598920 950303903 310869700 722500488 378785742 519175234 255289583 547384285 385487726 913831586 572721666 748080093 680632514 851902699 818037370 966873481 72959021 900604395 721292270 909089103 298659040 477068768 143809446 444734678 16345532 146536006 77519344 882679224 684020393 957749485 627849594 729630008 605065037 860334886 332808685 869309139 702207751 984749627 878977547 946436758 544184040 844699263 119353603 293374805 172573818 669252179 648919438 972861635 332835274 900688538 572852624 987875550 437580772 580299484 344412924 915864088 611734936 721709582 80576353 540613790 246542758 690161574 533879084 731082710 624157723 795617745 523353401 824541761 321253433 973965933 743129034 833178300 126660500 921087579 250837970 840322574 524125707 694220158 307787703 560642595 509264115 834068850 267654563 440838167 32619068 284259802 26627296 783220095 226301904 496499154 7652687 402161114 39904875 916754429 651515036 665422827 631792672 863054766 302957582 571129456 490120661 928042019 616862370 924906595 767872886 958207043 742156474 831418898 223439278 687274513 182372289 836665794 278260094 652403530 224148397 430041629 225867506 474585375 211260710 978217308 374278484 716381293 517435723 565712873 491837793 547055453 340848108 710650874 368730025 887497453 855845972 987342735 575578566 738285197 623676951 837880097 30744609 405631913 70265976 912581957 499877064 540374140 39107124 230439071 58756038 950265522 804827086 993610031 277452131 371443132 44810132 903721526 207393474 395756425 159138899 935750145 117645165 832633766 102798277 732397307 168644175 373343131 205310263 874048242 866068059 992495023 894890236 988133351 268054921 279364919 131846058 180372137 48232101 791963181 536076558 649417850 599590899 808766466 799387630 856467629 592154692 914502770 82607487 487215658 446929374 491684234 268293501 429271507 275668754 296186536 46868728 710161565 188354276 808034237 790467631 985452294 67666142 432294982 391110036 908644340 882575988 915630837 70151492 842196921 404746462 919511503 111161881 601363172 555460706 730959316 286502115 388107435 66327495 258353769 20149760 141764768 100818551 956502555 77413315 919718937 690166201 795920261 44754920 209639497 28695334 888428338 702940030 942868957 134077651 539030172 243142056 712440303 435923290 961041444 304338609 767559624 91182980 376397818 307453612 555872089 102893212 897204319 441860285 813067345 405537722 920332819 447649983 711022231 505866979 849240042 493378228 904907183 129744153 564037594 426527503 664593702 27115660 434016378 86688771 238788341 8529462 180456941 60027680 295498781 27201710 265160763 215227623 743044953 735651635 770241225 172103678 571629191 194221902 867555434 542075178 645400085 48086086 734759678 543661600 630559926 37463888 110491870 78640649 190682468 80416588 276237411 179743093 356250221 94379110 911915335 773661657 975025864 306469944 949762760 157600563 654628211 613131724 630315699 270828778 478233776 242332893 413896011 15970740 692413494 15534191 582343924 175174396 347380158 255058502 642251718 623156052 963590175 714006316 914985513 137159857 690443350 85407694 974371026 262537828 547453568 292702838 382810280 273878773 952919200 695037228 898751272 317625490 889697443 103222773 170613487 170480395 185389825 179377417 327280190 59093213 340810975 333070531 913290752 505135094 661657852 614543855 714969595 515409700 903443911 867478294 943443108 441184504 791089844 313497127 812756255 231837587 519940846 338345803 756943515 270002809 585274277 268362530 671694979 340278676 419051594 204233946 207357894 122111660 866849989 189768597 337460922 276518978 535071115 11228289 319180151 34203013 407727940 42186914 43243531 36276648 412983494 145407852 749945889 163949016 219358612 67179282 189560818 117903750 819868579 146404973 703326539 28304852 916529774 761434106 965400281 757298759 775039472 295046428 931511710 299168601 347235354 206656680 967040303 262915766 989598264 883182546 907498461 29269103 750813689 278676498 846056365 327177812 423131186 72902313 257961819 212604145 480287980 162009843 902252409 560608432 635326857 16786053 29103932 26833890 347885868 37245940 231183874 56051599 666481642 265070732 738793600 239165423 663705427 61426349 956919413 13817225 156612734 130872847 249001628 122298187 231386534 106992080 876825993 377172864 391047316 376006213 672045940 207103949 838123604 797657164 873928635 499231501 553665808 21245441 967889376 202889082 670743520 159485025 505668323 214673516 394281106 71937034 128641897 123552244 960446085 572810712 837008917 498841350 606205319 137462537 478884590 51156872 419583198 133676226 847325260 401817699 690719967 602086971 622787648 347327711 547078323 395408424 786144211 210427246 876520677 574245994 673904394 127187510 175871924 11081339 215593816 213788953 474289570 142354139 495328627 13483085 354646452 279346847 295584960 137505622 768242834 176045587 342518123 106568422 996488363 43052495 345077543 50455219 866825708 427285838 505446447 461021144 510062237 188710242 343288389 117564135 712181826 89140494 150909827 86453487 688260490 523060939 881789844 384762641 475656078 21118792 222485999 164530223 500893266 229549006 806494158 239112713 543181700 443669747 459219391 424453972 803100350 529955055 566749066 185174917 401884810 79516554 544299687 84780102 190114432 142791458 621752238 427092390 953887298 601090104 657541069 558972606 598810430 421474261 616844750 153221951 764775588 231715387 368860922 294478591 753538080 627860699 733147188 546586578 778754445 566264838 716709943 40245783 606845331 285075279 325243931 239619218 972997948 634406324 987298752 606468259 930936207 167922421 421304589 192326331 465710267 15442632 34889403 11678148 535568420 149495458 490302689 482679505 995950967 649075069 699621482 437353699 558150852 198118369 720903216 537387858 586206087 72398705 969951858 773455016 938471427 41206921 600629615 31020613 687474936 261186499 594848387 424786097 691106351 551318731 996561418 33606439 214251328 184198808 788974322 464770217 631307256 285123163 737177201 341431479 839488023 732069941 906263670 766153045 920556199 350217659 377783293 240340898 454861309 37834739 665404879 459326905 926389702 160682558 356142386 103933327 224881867 182249636 540139605 112318553 424531033 138225656 608901719 607701612 754493232 374307588 917162516 352483663 964993663 333638638 589944584 306424178 775210149 185681301 579285128 112590234 356777860 26340739 90169282 74854268 705224350 676727571 776571036 758145696 939178942 351418987 751800015 499859936 799840116 554110447 834003353 283556983 332259108 110520899 262023895 82720021 331917249 94232625 951368885 338376735 829760323 378249574 448871395 148656833 756297326 477660770 931482194 600225775 876351211 63648165 505507981 396294532 978742560 71131165 725002661 152308259 155289806 120954844 170297012 98492701 199009807 96731687 814884366 611454151 662039651 278260278 662620130 656985483 859700897 398836843 429315485 158620209 264906450 179167852 485476675 346020927 964575723 283705739 344267519 212101702 949570027 591720479 592172776 282060655 529763936 304161620 397126348 214116162 652778730 624709801 798841101 220482338 927744818 793445449 877291449 873860904 963055561 814709887 895643307 568631441 569702445 204387231 940451873 529738890 543151502 450021828 507882761 24527759 786824014 734810458 810835212 641466343 641857030 212284629 499929897 323864848 964924187 321061393 328383374 17223138 848433274 809427260 999875752 502322679 717645843 613957523 899008996 414123138 458209391 309847828 492098881 405504145 416835652 410112185 816579325 231536877 348134047 311489943 456847753 71172072 389987915 381224670 762541545 178212508 743847867 643077099 990636513 638635917 958171440 796492241 955314739 257384474 498997303 139468595 159690266 71109595 641754239 63113140 369103703 279619770 326169066 65903698 535393308 342682 826340128 741743357 960516260 617690466 776192719 40776502 754588258 333822117 461447545 302713991 932184150 411756179 689090688 211759964 803657473 325075326 982732498 383491165 413112944 72757294 670483061 563780122 976620141 572415987 985328994 898885463 927399109 853156342 902523905 585576796 827029008 668189636 881051493 56408984 954861827 146820378 210038206 92932902 444753110 351448488 615092305 549008003 987742738 720536570 815849325 132571737 302203433 205636243 770961147 627429413 767311637 528580517 587138957 517273627 767878587 117984858 526128037 142024977 704324448 444207256 541314005 227562708 910877031 601867549 744318528 178493835 702278501 547724165 626738009 521832958 740590287 525352787 601313606 435084306 524766166 23956437 880229600 424313611 848454603 293722853 829642955 280168426 404045858 366464650 533324279 180599347 190889328 135470514 149614856 27526627 662031160 368744270 932845978 932719951 974676583 346611818 971415809 482172649 552207818 489316014 811481637 561853263 661881228 16853394 232519097 120607625 387862815 354983580 744996748 549933419 841625440 221544921 919022063 178616508 766259350 171586065 251796227 12503695 617295566 136232582 631263969 496737881 541355999 150837316 956815227 650184993 707102167 387336718 418421210 347345002 748517757 703073294 800604000 280579130 880469840 335547050 803086390 462028599 541626026 392248216 890757910 88049146 523802384 37336061 738310862 576884019 948656158 95947317 855222871 591843807 597797032 327015001 945783509 494604040 539763477 46573738 687217406 423961301 584764265 206710498 542279613 321734593 548377394 505221444 648562919 211555311 592903919 578116473 680397186 244249852 505263401 56429607 99304642 68518271 801265531 794763277 989253207 552820410 727926747 706495402 937823465 731828505 805795667 85904586 374881272 214617932 795003751 546828336 573544631 490596359 693370843 55913775 733675409 243838503 852340943 513276621 775150390 114029975 696985014 375288011 712589289 580664948 595500698 54946318 562326836 120858368 235927425 124366431 521109594 467949120 577940461 518752454 781454229 538783841 784123772 486854281 502326693 185742907 288519532 124692647 167984985 83810607 732965740 590906952 992606417 983529145 986979908 360515296 992684393 189230673 945022301 474047648 951325581 653499292 910109508 764066023 773422949 647427928 892167008 667914559 730487683 66686342 217222207 205243175 946347377 169537447 203745670 163565751 374530813 46138041 48232904 19606215 530221662 328922045 727807665 640121831 837133467 361750602 398222833 73715840 614555619 432815481 943590494 168214979 797196085 261564642 867900008 107457084 460042026 137185471 315833262 122355744 529652039 201311996 751093796 590168777 971522705 330648658 733303451 604490276 941570281 908155340 926771874 743420945 831090119 421777467 571613164 232346159 270224853 69062050 824566798 64765367 314047239 248469747 882171205 664897184 672493459 246004842 546633481 306891768 909003807 368442992 441006752 421962507 621208013 305510643 361034488 56690914 897662867 719058721 865402343 766526338 808713464 797972726 902363806 591675286 891075718 711218837 881520888 4129627 455746921 85394184 657749304 428979625 883730676 556996361 681975956 378724447 589335662 558176134 980133441 825362311 998428981 860804420 923263455 213666810 296707721 164577350 540283283 64518253 409208356 391841176 484990096 137998011 366583337 316424880 498956645 409394864 569132374 541954376 665090120 558649194 622894314 537154919 609808817 318474025 558498525 72656480 397460690 302881946 456560327 5311606 57779853 51445795 845978413 819141652 978229060 434680858 559433830 46414424 370344902 284785080 411829488 286154093 794397997 541627704 610132538 140512839 424133216 113905602 611761404 1755435 676829429 419495948 915435816 420972761 893417704 367529975 440810557 208758538 305821248 56557272 399391790 19327581 651068813 282876740 996690440 88413562 826120639 237729437 774244776 376933942 951474489 549469259 887980744 571490413 635933505 158316349 206593194 26462824 629993366 521617331 750892200 458960150 911015778 215705219 954453215 730062607 889464378 30587700 281419142 130912300 323251245 54175483 83807915 47781016 404036613 394220643 962960228 217652684 878257878 867195077 926476342 17002191 167966460 21545032 431624426 32236762 734563608 380010396 601268064 213680179 809979672 316582732 539924881 154616805 297242747 65759181 768883092 54628846 126348956 62838706 794244715 621391680 775162058 413829521 834625964 194308185 231842936 201323657 877918880 190336397 598543477 423462516 537739334 447288872 502329428 353482353 942359090 192561724 575619431 78922398 143467312 50131968 407791898 183902646 317021964 113866796 417490804 84681516 879587547 389829525 819633863 479172698 626172739 197460626 551729838 38186366 809847297 148029768 933894593 556920325 835950496 242681350 952612852 413769020 793414894 301397718 388357972 208632819 786440697 341942107 778343331 208148078 585204000 137075844 403115461 73144844 210376877 176371006 531441027 182927713 247324466 109305894 833513479 91343259 140848455 73416080 124135640 106625895 765554709 413858605 498480039 219296399 381310094 62798813 745294939 685423529 911517728 675293514 749970391 552731551 659691637 291374561 601219135 558262197 731335775 661282381 852548323 253809223 484298028 109201355 816839524 493669368 870103607 286913427 290329638 177932944 268809288 242866327 896895149 64274009 671757724 462009187 977169945 280585056 296999568 193364450 333568950 19675926 780367941 602227855 678838547 374555330 886192763 597088712 667518705 434875506 705585373 677569048 703086548 200678419 734926466 639253048 846922843 319831698 452066703 252825116 563559858 201375934 308250812 285332733 632968834 597242545 918179686 515059176 606532491 432069517 462014003 239757972 873942453 363439676 587288742 548681245 921811656 310511108 859108930 221683665 418732589 48391526 476680413 37785271 891639120 76146158 298935760 18334463 985157264 433652148 927564938 592976238 920745968 627581064 903635111 107522326 574854175 99201080 582463120 265630119 713351908 582926177 983185711 848238828 886015704 174349704 959061531 333973510 527320540 502788721 594103473 27516733 956833961 892198149 951157936 797946682 912839750 344545093 892468363 78505505 690873258 236727812 275927408 50354709 436754938 401815538 680087140 304130314 858451212 434760093 590238411 5473165 680311908 145763718 915884332 199251061 973676539 9529587 186013714 100986638 411191498 382820355 970278253 608941522 948690392 905629849 982815934 136948469 719833596 27998075 275060100 93737775 325587984 89025956 173805945 34349919 707688510 575716124 848399094 217238921 654485447 332609979 435825212 212092480 484329988 474667617 685475782 58240901 614241411 365551379 882847525 540469059 768738088 579359237 715061583 283824696 327926139 189935147 558885302 189017505 382372651 88298335 769553592 529691360 988822659 271631041 397099631 151240415 757408278 327246857 738291068 364906983 571405816 563331739 685373914 508432757 896605497 471276434 853844236 428540909 619068432 88629084 326060133 287471303 490736679 209757159 446519672 415350805 959545110 645586998 976465246 753242236 867229410 812264693 935448506 162101893 195863847 59627438 576427651 333163244 929650134 227793899 885203951 634717425 774415181 457237707 628068764 586770117 636694623 397437234 481381348 1187271 357213306 321288502 812121021 252290783 623186227 127792884 273035647 98002033 182132090 28677277 248388418 202670115 372284598 328488413 427059563 357736858 934251297 393813302 521210646 112685308 581569087 537419715 881015803 759430934 823892190 760206964 895497411 232618596 697752084 638028117 673757425 194079002 699625143 255794226 729796610 290187056 460063007 252478601 892287550 346630892 659252979 373661403 566849962 460576256 963892530 399757733 589688074 215256552 540240972 25893264 129768868 51418660 986787750 111168602 960733203 535684084 750490651 562040114 831634708 719950725 834198047 125901641 619454328 615662312 837777031 277148158 994761786 847057220 887242200 240669264 594398961 42598919 398385810 2146554 536081429 137434439 856983174 748228293 832027573 685708668 869493508 655355981 985985311 10659290 333374963 60560005 880487242 374478289 498281856 295308358 523241670 410848084 446201829 76196696 773603675 350110096 965070664 866963944 906661141 523586578 800473083 548820230 844552744 794100245 983517560 518790310 778681364 638644675 952865294 191495044 293768376 92523168 825027734 12317994 494554259 143799186 238648268 190143148 996624095 47345439 253217052 167059518 328370697 270276103 774012427 572527631 756428310 82251468 102877095 31184104 830362764 705145860 810120727 221156310 481260528 479942469 875507819 263977806 758373738 722809708 748003169 538007191 663909052 195985509 908372850 828834595 864798154 617527282 682592147 229470607 374534585 156870401 185924254 84201503 968645985 419016846 935832017 428597011 722759865 518075840 853023702 704583702 983045545 96881145 200355207 46001966 994381051 941776802 998338042 792673564 814365861 560752939 632353975 372313032 632198224 254332333 629651456 412587884 868681348 824989628 929287918 599857231 889591973 809237759 956554011 358089781 421251278 246555801 324412580 267327919 877846909 789968512 836928180 826088599 984690281 16856373 317562691 127541788 678067589 125490997 763034004 63072824 880484247 393576351 733190572 617631817 743090391 82798328 503833660 321752130 864781427 441934342 907511728 96521682 112105524 55271223 236660214 179476018 464238707 38780148 537289581 75442472 698357635 628433084 750495790 710815101 848752108 63408216 849257081 129210633 873987367 703701258 768218448 124014798 181573995 24155405 200703666 38386672 999283228 76774731 166522375 115801974 787829191 444366337 455142557 311619170 579296611 77180958 876648367 440917004 977999079 745257577 787892136 510604501 962087812 783665972 876289421 86009635 902592296 428902469 560600843 398059444 921655434 817502847 944535868 255048625 917341438 352021042 472462759 240843324 803750533 191393938 422824278 60404521 618299487 117798357 743664252 604921153 980882992 396713148 552987804 497517980 720757224 576772995 926316410 62690541 501233076 269754532 538646609 81180367 738797485 669666499 963321453 371001287 961182262 41003148 621524290 344398460 767489355 586061909 666294927 281875338 680953103 85018804 454150666 201404739 603770528 414469735 562639199 111797 175270814 38881222 367644386 239942480 767286442 71687292 815498040 392993338 929671570 421087382 969689475 425355841 680350762 136866715 196832268 185660939 728051878 374519660 663902315 251860851 541212482 64293748 771281455 538819963 995459633 617085832 990449996 353530341 938804018 317930050 634396628 27902065 789090157 719423250 989934624 157230017 426200214 260948928 296946284 152249594 337120871 220736495 901975117 758219680 810827408 727209804 827330914 759707667 904312975 213134817 502361615 296960376 648955536 628512712 876054297 760263316 864023505 846483818 898442836 557770350 933516812 55676383 593793885 199090416 360166584 334583072 834950970 519708285 829166608 799663503 919710824 275163567 660418402 495697362 496127042 404386318 556118492 505857712 814842052 155634394 700812347 229705369 746673307 81014590 369519290 277851741 306983967 250387097 635382227 17848736 298741532 161834099 962839726 510255913 602910624 561435248 833564103 254134984 687908644 362021111 476011912 17206130 462668494 427806155 683210823 113625366 284535362 197059044 477551589 476975967 848219396 585719275 722619237 668737644 836792148 566390352 908720218 110039427 971018781 93245819 617003476 547095692 829897978 795357110 990572283 559111857 820393729 204218148 800996834 724428772 750808329 643801122 923694681 858570144 923861942 560356447 652553879 83811841 349823834 66053949 182531220 65107216 168344818 36301115 541972235 167834742 932797920 618424709 645345168 355932065 976612444 378150705 739309209 287516503 595632954 407850162 682216949 98458681 742171489 239433250 674483866 285692290 768085602 669460509 972144180 439155198 565013778 289609122 961707660 56926394 436174241 260340251 644940219 68815118 987586277 894541802 996536582 904125526 908546959 789668677 889574702 806678326 891039938 628403183 740777396 512869930 671802874 378818518 961835295 112446101 592888930 512404654 521235312 240842846 958617430 81268727 644063646 501779460 827101800 569283843 580113427 66670430 118636852 52085060 887236944 545243854 852078532 209495735 831153673 818254875 844677392 699069761 998836736 698223893 908465187 570663287 658172139 230630517 295065812 77281386 933997935 725226982 960473254 820590559 916727570 897839064 902243718 409470695 680269845 224280181 559282480 250383442 635623023 283986884 814325639 745623014 992779078 722126918 752868162 93984987 822199336 508171355 591097123 91895660 229003171 158216893 411219416 308062355 398243663 357054919 725295738 407142085 646027430 131202461 418733627 367490294 981728045 618905546 709190415 438067895 981252315 157550744 260370056 190388029 445658281 392307213 488021183 36976865 171605372 5591136 746860947 578373094 698725245 321535909 444485281 232999932 926816981 792294620 794930116 581941357 894846121 552083581 630957546 514662689 936146236 457944938 552315022 109946209 572795445 506969417 839667466 307822797 478687556 348343806 679786096 358924918 784363780 570334951 805021209 537691295 548616246 131947393 834765622 125812805 190557843 176861273 322258238 192544909 324665310 106772955 584879819 549275740 584851985 438008878 574122508 537560090 754226389 275133582 616987119 592139630 883350312 1404019 862795585 741214955 877920767 45183294 749577178 142741206 801990186 559492329 894519781 327592932 843921165 758598603 996583928 499377032 708030246 109849719 853395243 614242412 737591154 284071223 306739067 208439026 241495140 4918259 256741680 40826553 931025605 884123152 962170876 142334388 341969378 273774870 954168736 321611083 957213499 127729628 581903403 424628149 688824298 232942613 751466929 651276528 672262967 560605788 617642587 128504926 258746629 143006012 609486298 225075854 295693940 101000874 411352789 60476759 919756814 485763926 980584266 805287914 896298996 252836390 366513443 343175375 706608811 124167682 548598929 428186293 493564088 265932005 512732855 296628381 927323627 655343517 768706308 491492582 524715817 123023326 561346106 360062626 717228633 28482094 297988117 112139744 778797679 117851021 287209233 70914378 184709375 68860038 160865340 22226088 573968169 373393520 781329478 572339062 857093951 329202205 832372892 615550144 790719880 399232415 693428558 61845439 770001058 315029699 344560615 273629388 869303874 317120514 793713224 721377268 861410600 394903172 647830288 94893000 709661774 546263220 831707423 24965964 774151894 263711787 317319643 156310240 990430389 512059477 785542721 185642261 549695342 543099313 769246101 40859895 863329355 177416735 244490541 121406362 711197237 109117819 833106427 552174521 579820958 485723246 886158560 67285213 822042518 36003747 846977344 63360212 657415176 531133016 902764759 266197699 622216555 242330588 733140418 278636362 828254964 170633210 994461856 645618623 716609065 569478480 848516577 746260461 840313601 175620522 479161569 296610424 840935881 723852705 854021243 139356072 923379751 275396753 668610059 5201036 803873971 15874624 544134996 182044666 930736892 563601780 611007741 342257083 750175225 549734209 594771244 44877150 320826346 170188635 265232496 39624997 861363030 53012958 144194541 95728031 239136111 181106289 812914151 589310384 682613111 602321299 605164491 565653561 624351155 578810273 862172791 392410385 459531250 89992096 367304214 34461891 373297992 191476158 617295500 386489659 949840176 878543283 969461948 456693361 667088632 541429776 822541376 356747650 389254144 70750601 91214105 22250670 408461473 206157445 855471239 39564950 443047980 19827568 555330757 121531583 998390229 735711293 991003402 70402353 750304249 620105140 724071668 454154024 594562496 346087641 573588619 378283688 715908120 151949380 478727281 451786078 584002128 539028162 918882684 891854068 985824901 161172980 801274783 91286608 569086674 257510625 839366558 22876342 316455137 216721353 226466624 153151315 623924796 88654066 155041340 45862040 353413447 90857309 957818854 496652823 934841834 608492098 930893543 372839861 918908698 525373091 898983367 248984683 360643286 78597249 870402347 166960208 176749624 74002602 448026338 155009701 759048815 179992959 816120419 615662994 833121209 669912608 806857044 17359345 73228517 10208773 632708144 275809422 402364054 36006750 443140259 343244942 414198160 35084005 378937744 212534909 486517760 232157788 638812532 57875517 534612331 305629271 653995244 440612191 666237944 628796539 838879510 376266668 958719480 800627834 979332331 702266213 977865326 822026824 942840168 512209552 767364439 191953887 624468441 86564831 710477987 512748929 977024095 40479636 838207092 528647571 825676907 51507860 875533875 567777672 918054439 154029768 919125161 671335710 744544956 638222286 687769903 499897805 969533742 199635216 511979920 491917918 962428718 931925611 970010530 757587308 899193903 844000995 911464163 603753976 659025158 652910310 822336343 648626534 926916869 621651189 672795971 377953855 398204463 211307570 496586882 349833252 777689885 151284833 945207645 445767144 874336242 274068639 659840752 466023796 548386102 246151662 341521661 136258436 862606413 90155212 886320102 842089866 937510055 122393993 251845705 112398113 657573062 653304553 798848985 303463630 424570808 157750883 700792067 124801270 736566431 582354310 699093959 462767183 575827987 390044466 759989140 532700410 779847579 588376432 649589251 121034782 858047431 722116551 815019809 312448773 526575737 43542709 165314072 148929555 475442164 109076754 959645796 906958407 916631026 360434249 774144553 346035286 466052110 116309524 200082520 148960670 665079029 342242005 629075310 622360906 923299978 51221896 359095764 217098456 383742017 382926989 734231506 487800086 712219926 423702032 753493694 128534008 971787232 925560661 956513732 309957419 601495693 61838746 727268001 528064726 981747673 903309769 952279708 807344105 968526329 136922187 474214291 125631815 149526030 139010860 421967704 297424935 619581959 53712451 487969737 102383001 259254556 11949851 876395622 35633906 627799207 506740125 813162911 259016441 950683214 175100328 907558508 59932425 270310621 14501283 79470651 40334722 423400198 413006444 870681972 597934806 758148178 150085185 313523908 137993372 890455935 47815945 906306051 313947048 891665576 569659254 884905799 454153137 896138877 436564361 907490311 858247800 991401290 733437099 824967808 110637379 992803350 74114729 762154346 94270017 139067153 77865291 441353207 131862702 651039422 224530444 465314334 155203180 787324003 281981614 684809560 384677194 945760052 409183372 853364918 530629953 539082230 197977254 198902488 148253674 352075676 62026207 445840438 112068963 572774433 324117546 655695700 515656060 715621514 272021579 924527501 150511844 985932767 94026992 460431380 58357398 588758473 178363860 223833681 187003651 686800982 414196823 664150485 532420368 765163996 144513565 514558948 19564792 648674660 457060865 760497752 236992424 290043231 30447280 830291831 303570800 363764341 7216935 837776603 354594038 893640225 119793495 901574233 255950042 948284101 667919003 680982982 525293604 726743278 313915120 696207277 251091900 702173727 530313758 589826668 97762040 469543274 128906223 714577131 565485940 912134289 225289863 846323548 775129292 822635093 629197744 641176742 297127528 665252049 323107450 528356453 241441500 622904012 202930643 811156324 418932600 834877759 549952030 627127904 134985697 482480398 54024339 529988287 388132665 654808528 469179849 748516041 461952125 756730357 219345781 792040621 363911437 929732171 556994632 604194781 539457081 695887385 294911186 501365688 282306816 872074991 59062863 841790245 824928293 844064298 16433404 930727443 355955067 623351148 604763432 604897846 535556343 657238230 131865066 297472076 115560828 982725403 85157468 911471251 734217125 961544510 265374729 579871086 180077098 192806309 103384138 902207964 231023169 590242700 90327596 302411955 272851863 561893928 91942379 651872092 38076860 148856866 19942773 596353472 23757420 133508837 61537164 626282583 110571096 457560974 266533294 404066098 52302906 123551227 71139095 667079236 298728193 530419303 258820777 518869368 206432280 805829183 143953673 381471280 24136466 391747054 189240861 690202760 596707511 778361062 775955829 998460208 490476898 621854613 386025815 895983370 222911819 263414909 152315566 356831838 87616425 567673438 320089288 869603743 768261828 922510420 570571349 891260590 217274399 718083979 610255227 888668666 775303491 805055358 280972286 747064938 678735797 767814329 429306622 518361766 189003909 390307438 99877146 684729874 650021864 885679588 566133137 880957506 520784792 637440862 180550577 202534512 85851673 722233862 94398469 304622122 194514898 485249490 150849124 996850976 863028372 873957171 727431264 998779996 94287910 147723663 91209167 137372170 4711758 793043885 229597597 992200394 516792211 641441222 578194139 742534036 627738351 800881910 341874544 981076710 777520787 999384034 693359256 891452688 551009413 808425758 561204537 808202631 542842547 800743303 218107333 479481271 304550413 521280880 356046690 780810410 83767927 998127820 306741026 401925106 166799473 191365329 114824484 709570641 499060695 675658028 464906866 942612522 496771678 527508446 178278404 881017828 810742763 938275768 570947542 902741620 350438572 610167417 162382671 320940131 144748330 753901320 383756822 721926933 505293140 910700661 307969025 793247444 219261338 330010804 300409660 759636306 717668101 975895007 941235797 965043359 443852980 457226407 2412473 424666506 323263349 868606640 513554852 753872751 745320723 854280190 517131396 906276996 309020260 743621766 224781837 555928818 478667510 903019139 187252741 698810302 403352571 404860539 298490984 487677315 280642691 527147986 52415042 955710271 783594984 805733051 279548326 985593091 27262692 703099627 692674750 952551607 489184144 938201480 51076272 918670596 268363606 403330469 321209462 409669729 162012178 542113980 293937743 354150819 218470862 954540555 683166850 920826198 702447323 961730236 197646969 907927245 863210913 873624204 118681295 270735255 170245023 842064104 220725944 515259150 194825680 395603532 366824145 733006409 445165311 957464112 376887236 934613450 187597624 935587680 860006990 901302989 456809770 929609064 727843938 967021849 118840604 225321120 184809127 964956978 811612398 979235885 463500256 969161233 500200943 540404142 356381754 783062123 48153744 967914586 863873225 871539352 18136011 19442315 2289390 244813435 18545972 484624163 342895250 623545761 49045885 887143638 253403178 901095143 10777290 608913136 43443637 429170762 373030525 982160279 215735040 299439979 111653182 646595794 284889117 843214913 150769202 177506000 10252630 281602882 131194196 926363929 620921492 926598076 658915553 927415152 526904680 641761864 560475022 734959355 528323055 762857520 340364352 870315988 535766240 792537616 190874013 404049164 319930734 866019037 321611284 680756771 440828651 903178281 44894749 123227797 19517033 659605817 591723486 625856118 113171824 359216281 40051672 230495842 148023746 344969263 245213926 940730866 384464477 437878032 410437635 921965619 736211808 995360559 101407278 139962328 90837071 169114928 40468167 635133241 506355887 566887684 426731798 490812600 472890352 944832757 930349130 948870689 656223174 710379312 54999479 999541289 104636625 274577873 162130382 949043998 267386592 599692834 5518738 454311224 9552801 630842572 574220833 929603959 900206645 926907404 654187388 979317087 274918440 963034745 232932709 459196728 425305160 551920153 316025561 402316615 69998191 355462496 217890253 306352621 129753441 746188008 495545794 934436954 34784691 533218332 208188590 577472488 575123146 710218757 534077749 988714745 613286370 902289845 76332947 882391613 490839631 608809444 499375999 957959928 407259465 664799329 659233583 801400235 149089798 373012976 182027666 654508375 563716951 837113073 333084259 734545144 509196106 522946824 164106071 366772299 55505371 232536794 179864877 944039653 198854127 648247444 81386053 437364162 249700254 275786345 29670907 832999869 19636204 450121866 156111200 383885351 95156325 594315024 274703928 609965472 254987354 607229583 52138706 155111003 29970691 400161778 365123852 997132094 847349272 919019839 571703697 748909782 358739152 703788625 38409617 69986807 22030973 253100966 120311827 871848674 793211492 823987445 153993433 965180101 584868598 771975191 189092379 425601401 341889332 954942755 294679511 739555426 120995418 247808461 17762549 763779362 451974291 845552698 117429218 763133646 705966521 830455386 421419378 643412805 458566553 899105204 628926923 804242388 209818236 251051393 18401476 282760159 51553796 151273510 134437715 327428634 218384205 483034124 334930142 718154096 260395738 974935531 827638267 838091643 736512999 789440919 352618576 883770614 829936398 992346660 951961344 998693692 97102429 98831255 43079211 932627204 385665441 525371711 48171302 111241444 13629116 155759216 71237634 811630856 362390819 718844460 702526747 918942153 56835907 696762124 471027376 637382326 267353508 561328092 445973034 653807033 127164323 404959204 164921382 971618545 723409576 903116458 71057295 540416408 425195147 685420475 359171966 663508620 486077537 930929513 918313317 946035047 462834563 936728621 553097774 800894376 536052372 720462167 382514972 572363056 44554058 820946743 655692789 847467687 176452533 752601302 184526998 933040295 794473249 892570984 163107307 947441511 570038754 817169493 621670086 955017215 779107214 872795181 230230473 396703678 134157468 375987467 230399501 890444107 314100084 813941320 772559908 783432207 610509357 698778757 49902614 536295442 433333588 936393605 787240725 796476699 133545854 606259120 327166357 724105211 407560074 805114150 175196285 782040337 613778918 964851847 86859680 483446661 393655424 883272121 424911925 461446845 382333294 928363367 688093957 719901190 290095567 935743510 909318556 951863110 847065433 903124376 335193865 498929841 409477831 997294801 340267431 414049025 133354982 448360099 397236433 921422673 576595934 600255614 386965586 790923874 431895656 839617245 382320348 399428703 159041707 878939752 596821037 864094416 721651774 946409903 894584774 930283755 631485831 683613273 211348726 402318661 401425661 611055828 245715440 524896299 181833849 948457289 786251202 866344361 413112306 691657735 300164065 437871119 250580593 489846726 98641970 719794301 274527856 674696944 413932717 849839903 21386317 38362723 17462968 693688141 589719712 606111456 153872695 705806355 248132118 504605976 417469462 835833725 620429935 893224652 887196807 960495945 264141470 742483153 598056860 770616473 130620165 580387462 24114426 968347693 392775959 853024313 586265986 593848513 532331103 928437215 724224173 728161586 373438626 661637618 427172943 551667876 442865333 492013453 124524999 251688630 15801429 642054219 521822116 687291790 283949193 768730963 367173155 483090186 152733325 342030375 20293714 596323601 514083339 798566873 548826199 595461099 373682534 828722107 190379882 329499765 71561587 697651734 554727461 886390546 659833053 788031627 116702507 487974628 19014406 377206275 154807628 921688845 463762603 958002273 426403539 483240803 266802043 754986976 749743488 882995783 225814261 628948156 370057394 609393467 445555522 471185587 96888530 610890897 208852948 620673763 513405893 841378275 534088789 932949200 304934773 762607815 296651028 779664538 517226510 887260532 349276103 503476745 199116974 569656145 279635516 743377030 154131297 373222653 138218597 541705999 362819688 426519249 43550771 268952832 60148930 510008231 29693884 111153734 57030110 682864263 6452033 920246914 202490336 784569739 96687390 671816465 25601379 252567532 89085877 130918961 48845616 969712787 209846932 758485331 527492352 963364666 872861017 906093681 113512415 806413379 718785641 798438095 498912111 716625079 192689071 437768696 365110983 649082861 629861165 829819853 750049065 943695375 79830793 751240777 651983183 998280729 467375281 884610677 357075209 967520811 284580646 815386604 112429569 309722357 38966191 721340307 41330066 54347991 17409960 353845032 93783627 740257880 350838647 814542897 804074784 831952151 192202082 250204325 115323354 165732667 159336932 724052159 146614011 250441684 147756159 444242502 28943888 420700000 42564976 323939503 50565050 432685977 169951724 877803120 403384121 720651846 687792238 800868621 221008545 540044256 433007846 927520190 847434876 971528092 517967686 901686531 113578765 193288929 48829782 761763015 63072301 988406341 698789915 835705743 51653463 433550087 349785792 775026754 53182261 433740453 206447876 571883795 523130765 765950208 456412322 723961188 6881300 124471484 14662342 291376647 118381449 984680151 540550584 819410273 24586575 352591582 314196730 893436313 295194020 743964999 295175612 613934126 547382921 915433352 64052316 764254324 189838919 729326843 5210620 440923695 338622344 688254298 138397889 308119128 177847296 897209279 641160481 873018254 653893874 908015423 94732738 479307195 293658008 408556869 390384703 684665479 13186078 829455113 122896060 257556185 145136434 535552585 79122967 433660727 190147175 954518978 885020244 994917848 990092017 996768865 735134604 793980720 666238361 718062268 518869163 892407366 268657331 642150930 456297025 624162846 563484986 598436014 297804095 742786737 217959169 911821334 827980129 934397867 317871101 745822860 359233702 635769124 439303282 800856294 766249518 933368411 400488100 800741673 559875526 633606537 504634049 946979546 352850249 950375768 194447228 448266395 236790190 286676678 7917941 324056105 282623915 655900310 552650275 988234976 790830798 904850353 94682523 896478126 277772947 343260096 67451974 391972883 66180602 313102797 212477113 555467410 234840249 707522923 11548695 323184809 15464352 592574824 185187577 892871045 200996675 667962435 482556964 682665333 270985892 980658648 976750284 979023334 909548759 921025092 842195350 890570073 814276229 993661691 785861097 810688741 203982719 453083456 60543842 763496916 535321635 559069281 297438826 596648832 529845853 794780331 663451538 745114202 395757127 466488085 367934500 387468735 238812436 975317336 744486932 760035506 291263153 468215410 302706945 793182457 423990507 895630089 713922475 834610975 446983180 861226879 497580352 976542291 345348313 743366098 713936593 837031641 499231611 831435464 667752011 809004452 289377429 369181052 367587817 516634815 348283734 607902832 336558206 340968944 9790364 673031981 225647698 425518907 364421401 563891473 388472740 843656061 633901668 669572346 167775177 825260689 759211510 857331673 699711402 750960198 548997959 636009147 30317221 353040988 279175816 992901294 49832660 463382139 15536187 865448419 384397026 636658551 173126037 821105278 561085106 613687508 237305383 288331795 70121851 953373915 681228772 992339977 834831656 960049581 917482659 955124565 50369666 328208184 109321870 334638592 96261118 542181298 91989695 563821604 283995994 357331533 78003523 892198956 208235923 455458403 17286001 366955706 56889890 335817866 97919030 889730855 36876460 949417928 584911847 878296339 679053035 735757574 259729083 475023121 430040738 998905900 394845574 708235283 620192832 710444530 658157855 731770193 540052912 798159740 684059990 918420061 846056346 867564053 650982724 819984555 772867504 947148151 640721905 957904378 44919760 61911456 39761868 128391070 88024320 643873007 272270381 297548536 19275320 41812369 27919402 422228734 40864395 530439941 273894996 860968307 837107738 916099256 708307772 878422067 277715993 297647155 51271555 555334819 293640956 624072647 19008164 853959421 503842140 754295949 229913009 614902447 483070998 698890202 312656738 970882341 807690846 987328434 403380184 897804166 645466004 673452756 574266557 730086437 611829140 675224593 580862503 846864995 271479663 335313694 153245726 626434707 491889402 724227264 213792175 939303433 425214354 893674394 421044202 942178793 158481150 498027181 304962783 521948385 122735156 336385807 165524514 178513026 153188300 884291266 585539376 694965743 151190136 256388929 156133313 787381353 650103194 710318954 624861847 919025156 819644227 871298805 696899014 966677439 484488544 631993832 39080477 423254142 188084641 502173395 294279057 418926468 169941903 825305744 740302391 888612933 111665520 284175868 264725806 920347876 448017469 862061944 124407336 346141977 318472603 355984267 112029406 973138037 783422511 989092492 936652659 994139378 898306958 928001008 896444804 955765841 371855873 929786761 450845310 953674056 37787342 401610698 117284259 765310912 698038672 933301661 85368152 213020861 2764273 594024639 505240887 594176282 152494197 721058866 545259899 689816358 532274499 778338160 6274748 666467571 295274658 311534523 74188151 381869292 154214384 556760810 441113536 830833451 404926192 457813179 446589965 697501059 631174649 866799517 515006699 774779810 751833497 849144926 25201877 71564976 9127177 571959481 216120658 356660602 240995683 848871211 183933838 458447406 244097427 602672706 264805614 406663054 171762727 931130492 391983868 870661967 659189818 971367069 573959834 948719951 544082334 633048311 360007711 967847939 386525633 654510743 194140830 328385609 300019296 602241582 304195124 411105473 305462409 761777698 348682827 769228132 226546367 616286103 541725746 935125447 893261779 913437191 279544092 302897522 218732320 227901793 200892800 743976626 496909868 616496888 434545331 630301092 124965188 646760361 527158260 974102178 390622508 963163349 291141735 516820636 128986364 678139594 131388855 144110266 65529908 810433477 167995627 173758560 167055538 243434367 147328764 443675785 68445127 446727499 114523848 143913620 27710432 239170707 140042067 187357779 45472941 411810247 241116583 574095730 169768645 548112890 383465443 485842334 271782781 926210615 804541725 944166288 487584963 854427122 344477075 892212457 237440267 277263061 252257065 602887480 498977884 856151174 298733957 636635400 2146737 191109795 121227019 453150967 163065088 442885360 239377250 285772753 128695154 631789062 274073072 823265928 490709601 981543208 678843332 964399212 910591757 991925436 876377707 967492558 789338835 860231143 605483753 862512268 558830199 998478043 950797433 977631982 887654330 948588846 762514229 879908825 147259677 338174601 239461776 952965012 630140039 879094991 84785649 315893043 235077664 572374519 46036461 664316803 175646847 622132778 605762399 946087455 183137596 533723615 26090232 786781046 55261942 465527674 274876771 584937552 117497143 953012809 435389435 772510414 512576062 575251628 326495209 446326404 358054553 688598391 181172471 320261721 9867347 496804309 65333944 574626391 166314356 363099223 210973761 691837433 399028690 494653169 173199219 287756002 262102544 439599603 283805684 379796077 143440745 892213693 666063992 693624191 192935559 991198033 634834000 725371728 271091433 939492567 757542486 803327779 705779611 771381515 119035486 698270550 205313002 897401816 867925750 914381602 575182057 767514929 478406683 911877510 826888300 928514982 844699052 876830284 865622171 981529459 735493137 798217839 16039837 818814486 447532672 636461618 434810424 488983319 363779401 528835231 360033547 661501791 381587770 966273832 176113258 405195430 223294153 636389567 518852997 772868383 223891250 618865878 194166039 294340064 163934101 268953583 113129784 209888285 43437363 924086765 265688066 752193991 512628056 920453034 768741572 997588088 253265749 257068083 212598608 714174625 158955787 757751769 163784639 933199486 265141153 478336551 383431081 976150092 607513814 810414113 484457554 726116204 122941727 455185603 354895946 609275783 480520686 816186278 403844821 546895386 482401402 679948080 44815898 847648961 405273829 886951039 326788549 942491456 240791026 398622158 105481498 845637571 278291824 838283116 121525786 876111372 569471651 743153117 327853403 884183134 874630477 919316589 890228358 932547617 151117101 227168158 51211799 572697916 512990935 965601940 703701021 817348852 711691853 967052255 333501961 896689546 176656729 755441562 609275896 735368516 663648757 693734583 252013325 553412215 355837685 512661405 31016371 970411982 688908931 987341118 903780612 980649173 827718453 884724254 812113645 855695474 372867617 772235648 219743414 252704643 180047885 599344422 437514220 765616370 57896311 300876793 12053902 280118007 91368584 473682692 463924889 661260680 574121224 833105770 106047218 401366569 372063162 780077814 503453151 568452588 301199600 390446338 329196739 727479008 564493658 868855219 370928439 897802810 790609669 879940638 664051449 839209190 368245634 817271337 285692252 755852617 97371446 103550111 21836375 263245710 49382082 96287745 76791307 196648483 9720118 393976762 274297595 675777786 113227413 196620325 87466456 657704105 69122318 305139721 110673158 254641904 139596432 849668404 749876832 783216196 217792150 467437852 117177921 542458556 440642134 513497873 108516047 258976654 377337 720459628 126354150 363730350 95946044 576669608 279197663 456686759 135394702 210562460 142133981 813533894 357630296 752556330 714638743 844976470 488569631 501939611 353171936 704695080 528626732 631832871 575923172 798601844 273907927 393364999 318591378 510705477 181758730 839234256 831999651 993195967 491044863 866139712 504448549 869380683 125928573 834529292 347939328 961472291 185535313 313366240 127907709 583694982 240381012 256734994 119429740 614221337 271980716 539856022 47915350 954982209 201272507 514214079 51215214 627625358 314513644 624731100 562586601 639807721 523070047 774655332 318347577 829864552 760918959 832727244 164932733 849701322 769687882 874427411 444992218 653132084 95544457 117456749 17547067 961576144 86456897 352499021 232252911 538383243 354020795 792541701 83918613 777373086 143492296 651727674 604377422 940038496 836049796 952755209 191894538 607656326 477100880 762344363 221325542 857554529 806120456 848974488 595679263 696707537 311484962 428625621 313941591 320532148 37740913 636322800 110344190 415170653 401322503 617644308 506679768 837007388 491077535 919257435 4901329 749913941 112609684 388098352 310860683 423476906 377220983 829223334 108556774 543977271 36783839 560528839 180684012 513358341 160219147 283469479 99296427 681963120 639194360 908971455 115222916 235256881 98688239 454712126 1022379 15707599 1025114 361913874 44855881 882247823 308875819 753200420 67053452 471230408 303263841 667233518 207915186 332858747 66792358 612184739 210164023 286368004 240050754 522806008 96643602 913518208 763267159 885127107 592715514 660953176 484491853 536945730 92187084 772376309 557945820 983528761 84207302 666458735 362620686 581194938 339542276 729896826 230257750 343981199 225228872 697177316 458748057 805874645 68325692 125960486 98341554 611953941 102778295 808451903 658773453 925571207 746936667 884125728 242575471 295230694 92130461 883894199 23676306 498882421 24952945 131817181 17679942 373823374 193515477 328229074 106013607 964319198 182186033 208849076 38268524 890548655 177771688 978114980 218111885 391481237 162904547 867205119 313581496 860345017 76008008 391668240 24210415 551319923 522041336 666516744 335529193 805613988 575490323 587512720 129323831 587817114 414696193 443117225 54309277 771101046 109582056 452861924 245112598 890160630 469778503 789978869 343942070 647023644 18319591 337573933 312354420 422968734 351711846 729129227 680595321 836609365 94849674 869671224 359845243 577774848 380301437 774202977 475522061 877966306 647946585 857763537 291071557 398854033 117135689 257091158 152273542 303383521 32839422 295361214 127207019 631706279 574828733 655693548 285688809 530622475 46579865 357471780 51902473 694823303 28251582 723993373 517197120 596423096 408909608 965879726 329109575 905469209 837251141 968915816 801976232 823734880 670240020 778033395 322930244 939792191 3501376 191923959 128191593 902896069 301079614 705764983 580142077 744880776 287809399 487665499 455687071 778217179 733093922 963888753 728232192 766206430 638906218 983102787 36738714 814751138 448960901 889800580 434729525 552381027 360346393 966986841 615333412 740078733 625598858 977991778 617742920 906426139 85275750 353820075 163944391 506303952 263191860 929985482 914357517 975998684 82456275 774416730 298082425 422577552 81988678 611509466 86235316 842807398 375271916 441736610 354428743 791166883 84275417 777741944 268668428 382057414 302825252 739955619 122981460 946302483 718224474 926085128 145083410 916299556 554280105 591087348 543791840 576545069 542612402 711292630 314730756 766909119 649975738 934430978 287854332 614287250 7502721 207025713 76559165 507672748 416754107 894355005 407018137 529895780 439191099 876327721 132521586 307838928 190630328 681220323 663525643 835455541 24782528 574912319 410377107 745400063 744644977 873579236 82357872 426622565 283001685 957221381 120397364 953391521 806827868 921630139 312218811 736536068 646845614 871299437 648584931 705499509 237852210 816816672 480696588 905095176 647845519 959968035 437388231 888638994 437024198 726081581 338308735 391192660 39147653 225475150 68151899 211465739 146688254 800045572 720869617 766068619 664648645 952035206 922691371 991263392 736749943 958997685 803393580 902758577 710520010 778310586 629178146 629473457 383426616 872942205 814725963 960423930 610240078 622340544 514040481 940446725 374009032 462739305 99952566 744611425 729487254 899858415 690668444 780135990 712325310 992831532 142170004 863340451 438637225 784070790 290697801 741856636 327654191 528834996 494916747 776646448 70861162 246335751 96721617 762449999 337853855 647022614 20071224 85443013 27265660 527856327 363745836 920858090 779949693 960300586 591275148 972511773 222203122 477145986 72254169 124976710 13854228 615662877 425937947 607545070 87091933 730765787 399832935 669326721 104767926 811889207 192501248 520782505 357352534 455598511 416597946 567526383 242132941 548631252 190223652 794045366 525249620 708892838 479141075 953357790 179949373 929802187 503770343 843794481 441700293 486306851 123918639 381206840 193862506 216874000 63816829 521215906 244969703 879026290 512491065 630967618 484116056 620746582 253291952 984315539 337697479 406596630 173306032 757005211 750546760 959761973 335037731 605969096 246200585 795404525 217222481 627072134 387529436 785780919 83383633 445265092 284636019 795090164 393530883 921710555 324390103 750658207 376096494 901642391 284249039 642131264 505354440 942835902 731708350 781737292 77553268 576121894 316436581 509599984 31026445 694039720 113774242 260080833 212947546 944125509 359301319 581073533 453062035 518166133 441426267 695759704 174725258 592163545 335124911 753886443 611361420 889660926 394973950 735125364 95814944 991059186 254099980 682221514 4615460 620846930 3730886 149149132 142570152 625266535 372616618 970586925 111415173 598506449 468390359 688112982 366710265 485976101 202159916 480015994 13699306 280831850 131727838 321234517 204365136 344355469 227119140 794304443 437753446 984527553 221804777 690490108 644705187 910102197 802503984 827256336 570318512 841708196 224095536 817383801 783314160 866484906 359675413 526205895 66756680 710701946 401893552 958103596 846861639 866804462 132432174 650576484 438389595 729365941 200832180 685818645 318593949 855496584 692275231 947878280 289604081 896782205 152353842 303626237 63307979 978271986 860889655 923262256 862766894 941294701 608759092 901840153 339127824 778666580 575523404 728194442 297496880 524906638 477298980 937458859 113882274 718310773 316144957 685771465 596681776 757088155 328405480 996938981 254593263 860615854 402032470 590621720 315187038 548427198 236805393 556293428 224374505 313532712 181205184 275848981 249251385 779086933 109150609 132290329 26978664 703536566 185918116 327524060 86750826 143509617 91190835 850771848 209063317 611200575 525637600 617026266 431062203 594405207 47719691 385882412 133035036 776314361 365804447 458619791 365531237 883821688 624180986 888018698 249039464 648613721 271644070 949968351 662222921 942549468 874834296 959442949 822045807 941712742 433921732 509084035 3857794 422054381 328718141 396146574 144145306 443017966 398939339 775194641 443184793 584113816 18630212 487458703 25222284 679431494 612974096 804457426 349689342 515133741 201757457 844338286 770752567 771587732 695750256 749789199 609214883 636948175 592996184 987437024 781754779 857718730 33646203 428304824 203914254 218693955 110002519 222426538 157662914 211136662 117035032 861281367 624132806 911314666 534428728 758761932 308150204 790568047 493315118 991038319 337540263 569662596 1578601 54329579 24571483 975590365 885451676 954177781 841928531 960310110 5425550 57711219 46890910 960747472 128888724 642853695 502022416 672115667 77826816 463839332 167536190 975858599 510468189 671305713 669556392 840776250 514803076 539206424 528441127 690839963 22062697 663670410 635221870 880811608 460546042 676041068 146833338 505161506 180823462 339112559 36209941 486238162 209618232 450163084 326176152 778414939 253510534 998345120 457433302 864868593 110184554 366470491 78234185 524952897 320859611 692945887 315124265 440863180 41330795 375677721 111648505 144208376 32800658 840893828 624493217 890138495 440684956 745946720 337047149 398476665 359149369 630602163 216958504 322278282 212830867 384988273 317946409 468179500 369979092 984831745 803262845 978775488 241057729 977499311 893338974 897941417 197926597 568930846 249917200 935960460 117830392 267594909 2445653 693020334 222378210 269621054 131166085 931831874 256671892 738168404 284398794 524200714 46546416 731232756 503617488 560670255 335130124 896304108 106350174 447419408 237231671 763962274 669961253 793911463 467840288 488073057 388436410 636245352 106319439 134847010 93443534 934523118 336385525 352449944 40980876 440986623 430999332 504773350 416422926 443528360 254542907 370537147 77673741 545192307 236370055 933904288 888112853 914200730 510203031 756922772 691503011 713138716 235784712 702162586 436883326 686023610 339600539 406742046 41065189 392542001 364001594 406222068 346940039 804850579 643384096 921146499 692836152 815967245 204675752 633150500 401477464 425270923 176077631 765675751 18162027 468536169 87213578 899949896 886986637 890238778 235258610 899430260 450105540 683869974 262809012 791882258 688738043 702932155 292122234 628386834 420179114 505502757 457556004 604030730 364754434 580136190 386244315 720637484 668675879 705335511 232659529 315200086 287189660 652693560 475895483 648811455 50304322 91995167 81178327 192755398 1942686 635415466 32085982 892221729 236075853 298396154 98755079 482014392 15541850 772928689 666305012 856955701 834322123 964522727 295995884 415520857 57143588 634113110 270845426 302271296 173460564 991451220 62818237 563118553 190416135 192101449 78874905 160800513 126973243 252286900 128695204 769896679 286596392 885216134 19942827 631722721 47543647 312127086 73608100 957356552 833061824 888200918 370325399 979796455 962364408 996628720 510015820 681136383 377931056 471589687 264844425 866267683 501738874 822312244 402668208 769572670 146233793 177529238 124096173 588272616 342475677 850513520 149271018 742456336 640371701 831743682 761199512 962960145 657121307 723287967 282612746 849574286 400073267 493057219 284540093 547666420 288301934 521131497 382673423 779590574 48469116 944503406 550146383 604961927 365462745 557035411 174965962 958557066 209878679 270498670 112376436 141146624 32834425 224010795 42479796 836471711 335775670 669587034 210893642 938116228 544621493 639454381 135881315 459851250 447105906 662880718 71548787 763392921 301267317 427620376 295031744 804120766 293623053 479293387 91359189 377130959 282118990 680349223 634893733 945743823 709416785 994947480 156680431 528857247 351720242 928241134 853638517 871735695 625669282 930884599 411330923 550768089 531509610 956980110 537189873 674772078 356136258 714618652 89406986 742421259 191153161 745171266 127867784 533383574 510469692 655539679 254723220 950903071 651402980 723104155 145269949 191388177 26161204 279938896 94776728 966190447 20504060 103522924 27450216 280931805 94785707 835810904 198012597 932399451 538118178 995476163 885114538 929104288 148532604 614565561 604217974 624009614 428138105 640720310 129386398 432321561 155584701 410979465 35024031 209174552 35485496 366362541 40921518 643088844 551695373 882450802 837536578 883111750 675038509 762284783 246081987 323571282 226907355 726627282 160683672 373682868 296077445 707125369 352960211 462269700 384665291 780674883 380275271 564341473 82829303 783078351 418193767 724913806 541593173 629534024 543801630 720985005 149333867 960314420 410242205 601686477 277490240 423344658 374198326 970940476 139693950 722582973 21457596 215852304 91227517 775163086 143134635 567398321 197871786 468730667 345973458 562157264 473106676 553935046 396805892 805206810 523884672 789642013 184170912 426600193 279267850 427665399 239340439 625280339 598587525 680363420 138636879 404721860 224243253 507639840 245382787 910770359 529475885 975761915 484430352 606029566 244614369 459142625 372719784 750911434 434724067 452784907 21834177 895498363 268432867 645980969 606527840 777517846 529653215 673895431 558314886 798881435 60022593 369863495 355753142 937458051 436474688 668699779 91512454 486841293 3620583 10928447 10260613 15465912 6528683 700223231 303222343 920692735 892278509 938523184 553166975 652399204 596296010 956933989 686754571 970210425 798309460 867869758 81459412 965994999 312209775 513210412 342029277 691913443 363470521 591045143 401121780 768692390 12874302 992690698 699009686 739153509 574561226 765820592 301579867 576068676 109671247 640211648 407231805 655602986 137347512 811753717 650852182 753752796 248222595 491145098 62494225 102047635 86780400 621676399 212080343 481896601 307793733 940572723 708583515 855236886 596881427 814319475 572675757 828365152 660235809 760031599 358526769 962974289 863703588 878803660 275092809 984589119 100660916 302505219 74678863 287892329 160345471 883197825 199679774 958160991 892976787 921197591 477772259 910813871 858910373 954670959 162231174 806880486 203574051 996889945 203470956 322307088 107036877 127251080 73113268 179464149 68522456 526481571 224346253 917242910 377116687 610074601 408339873 408802162 162871026 285383955 9729704 66062135 50209255 524174855 156274862 977128133 186584490 319976759 73046677 87984756 9877550 716274500 658484630 679584815 111131466 293764990 126622352 500692794 440959501 674827504 184483764 216788029 161642105 562137757 467133133 601912926 361006105 842787212 590140565 978495386 859105920 948469979 897332024 925895115 359305335 592231522 585861250 620604434 442847002 679735340 233946590 492816417 471314141 856015796 642599760 722360021 551259092 674524611 47925710 531061511 378443266 457980912 375234470 934658892 171458859 973829584 757130808 910878515 298905733 523215612 224698381 256562115 120797713 784104952 719937067 796675748 683347921 870849634 183487490 628514663 320486857 985476886 836221883 845018228 252493078 416321828 29561893 317066847 166974805 732347222 484324360 623153895 196674758 666159289 407237295 913448725 710224590 732668705 615290496 851202553 597719397 705877526 604441611 866386199 271772296 713001079 137140941 155418544 155318952 795933194 223943893 638533759 275780772 420352382 247957448 556706544 406012037 450541464 362940698 715409972 574983089 656387136 528647459 985969510 283918630 781496189 102044247 228189825 79567605 934427843 265702914 562530882 24995534 670635618 388201662 975799711 129145558 896716916 162872399 417241424 193250008 439527402 247476429 341159285 30821877 227368025 5141833 693785127 425107519 661266477 114033192 395646813 143566359 762254411 307254175 330767777 236301387 922892177 338527384 976311717 229675378 332487818 280010864 750604732 363003337 513735506 449003036 708754598 698264205 776108582 336925436 375985537 202998185 814599844 41918172 360202054 10410342 433595325 37462158 124616679 69699293 539705265 196002189 727324707 264748055 543509794 75848853 756369650 138068863 881473887 600853645 963223106 415690143 832366145 232428764 330996868 107255291 556331125 30427292 392316249 76839992 317336990 303322006 805814324 670765267 773574356 325811404 432798404 149113694 818556273 597573649 856517483 143660675 763428673 3670258 597446769 4416334 780284454 321462719 615845328 559927614 954323176 680249320 737676377 624976019 643255913 431303321 517055012 423940622 885883053 717634508 790876317 23077897 891169912 828080033 992182718 480157542 939834801 94860996 150471039 139814641 376489234 157399218 783272157 598337413 985433246 301018449 979112885 559990182 869719387 90326073 510575694 111548880 959655555 377704062 646407445 298339618 723535143 174706716 289785079 233338514 295382477 195073546 355167263 249767439 936867047 853933552 917081371 359004382 520018180 338624776 717649189 540941539 919348715 624618168 677674462 557908221 923541843 415367710 758992122 295849716 922660498 542076212 639753818 430246422 914051586 157340620 516500599 62258047 429991323 160528934 362964880 325645147 845802388 471781367 905307826 225073702 511497941 348202731 985184941 872597633 932523107 786550245 996852678 230530579 754482708 320678298 727399705 416813184 536879968 513822274 545972847 259052743 963432621 622188003 656676516 93698788 642707291 116049320 389883688 102613723 736595564 164652768 897528385 157752863 415297807 248787043 997002546 381548106 628840433 84564113 184555012 150280213 766886285 5720323 783330651 54425853 163436168 147268116 522262129 238887648 768357814 442794617 455256234 102253918 388296956 204159136 861026384 100858845 522916535 404967878 432724789 150028030 761540326 502487641 883217680 112131755 131865946 18638350 354665462 100554499 389353174 237955674 742378589 666051047 878777745 327398524 329492148 310429362 376465477 30957590 63505164 4836523 603659749 268864722 955358452 851083351 874997102 736865631 782564338 398746494 794188860 22705885 805372165 401944307 977092930 590840451 710886194 143865184 343492470 159874348 586862745 38841967 758842996 160501115 739264482 283886196 478087431 427148618 732944362 2957814 142325904 126923778 195354239 142213250 980744387 573056661 715216675 206818801 484108757 376761189 434828291 353081990 910554559 224502788 452364186 122843031 248793653 79015355 292626737 19578385 721473820 29649860 326042463 211165174 899815123 440254940 477793120 87020575 483096601 119561042 984334720 366159101 520889897 240588016 667280721 136984801 957583133 307932574 684588804 360965208 717332482 143290444 691916576 459894621 683289139 479190853 669511363 300187084 442507176 217390014 366686725 503871 613784880 337298811 483049704 372168780 434511091 141324214 471879378 74404821 211647434 64989509 616622792 582326782 798611221 68000681 865345506 636476387 753642986 69340570 473408383 176776009 529270186 516382718 730034160 67587983 394088683 310248333 574743675 531970202 659701767 446887875 757080584 444135664 749600771 399912328 552686932 51681966 171969475 55931139 589137301 377388975 693681098 31576081 400970264 232897547 410689258 310013037 980548500 206987047 465404433 344148646 521023824 144065191 759180473 668380025 858079582 689617808 737075108 254988754 437714059 304122255 969469088 15515377 363853792 65000496 961099671 392069886 685688481 316012059 692503232 27804832 901591822 568494526 723752405 67599998 168211590 157518833 242765407 195274088 284323889 238814854 651568636 487480658 878200050 263284262 405606640 337454370 626832080 579020777 786235445 423030179 568004226 262559105 375106652 259232568 835948045 623078206 627143747 228970186 503042367 151129676 936619363 579314933 598066458 423997874 728201193 586935878 632616713 631666102 755159783 619305836 780582240 440666864 803310391 126617308 769681744 293835953 541156737 518805658 548432099 441712354 682242847 565122131 874390230 70661103 384997637 250072881 957057626 386422863 734455280 77352075 681263219 227888042 803844566 693828020 980266437 792384381 882719405 637850546 693447518 590664417 986654314 868615742 966680230 403253296 624006556 112807884 489896345 392909195 592067004 514267995 551617724 182978256 362022188 202988114 831721579 48679095 548860056 200787281 233121761 196796571 413738784 390785374 400605326 77170425 561056907 32262801 761690024 584641021 693784491 333808818 504482897 31904854 762855018 530437478 785935994 254086422 903628453 448815910 532180842 310808585 995700521 795598859 872820114 116643740 948195765 908025359 945151586 722068728 949368534 625193570 696819562 285201648 438000636 90360703 771334406 685814749 750926952 370390223 438761446 432646545 821936708 398423754 425620399 14268989 984471865 95915847 459851179 134712856 811802913 220315572 609466582 375566625 754171469 628753528 935522810 715601115 819263366 1918870 503507315 214576661 454537356 335628675 375669795 332174502 654033034 435154345 455069983 235333874 907990957 808580764 958867200 803140379 898000884 835407088 946337651 253744988 969924972 226857798 487057099 339267549 966684544 740415995 889620728 417373144 515806818 405043768 522457320 509419895 786136090 276802389 416987223 167430454 181645849 100374854 697602797 466188290 546655767 238889930 720609198 37511550 417597439 148636658 731888187 296918451 989688065 73855544 161750750 85637800 789208691 743105936 861169561 75056262 232403227 26981895 540233338 507555419 770978322 26231286 574899019 38618975 963938345 88012563 157849041 103092853 202163447 109468263 940736014 376232180 689560537 615515755 981279319 708010487 900650111 512368498 871525047 660064564 744697443 631846228 791458339 606981044 705820354 419577791 818009740 769407103 997001444 780536614 846773348 392270833 758404165 557309447 924888430 245483208 581677089 510890758 679383011 331284109 816791897 197655164 219804896 1230954 529633915 124029072 966607205 927394151 955218839 619493787 992702599 636991809 999639924 590257884 900437739 498438890 787723678 432589903 704240813 181643425 414701986 178394786 952552982 109026549 338633115 256844711 774148104 495442991 994706805 613931953 794097166 730114989 991938379 654745876 826761815 765946615 996451945 883160681 886443740 209361184 724710136 220322822 449982378 397544460 704357216 302179079 307029358 93819161 775722430 184632896 405087586 277431782 637659073 392557615 852001963 810153216 863624353 49152263 263524852 249477631 608778275 21180806 112505932 31206628 660862995 453156907 613203425 193760204 196837000 3200048 212011837 100882237 956502711 904635052 913752599 594944017 854337932 803935790 819234503 701060270 754754958 199860670 650198169 219816199 674827956 82709277 760687962 208144317 463882020 10030690 639874923 596623656 799293437 483678417 980454937 764855962 941033452 443687955 993022950 198417796 824904668 383681279 923154788 128209143 270479646 80029132 617485822 238068160 903097705 488413839 508092002 90131135 138145395 65384583 236842525 234708350 861932176 798830993 851545595 465896581 558899271 394653945 973502715 757761543 972184682 121432179 296734403 295005584 789483964 249410189 702235219 677287225 766799061 75353383 420647735 88009886 972246925 688441696 874105336 664064917 716825205 441819573 833326475 418628129 527448889 150558001 798000707 388380054 863416666 68314086 986749539 816613696 897117198 486381814 880845843 1727579 387078395 329647570 900552430 103933229 664932376 166475576 396984304 121517023 830575592 548960403 881148076 242260392 693055870 283113523 373410085 309365810 377178703 61022656 102858400 60609381 222868237 194971078 882182600 576338169 714125593 605048209 626697038 583208915 887296616 275534444 635233162 169598942 487901599 105433168 143621641 49241843 50332358 34037572 374053428 240240275 392441282 146199488 783700469 219497659 401868444 192276387 699110590 143468419 884943573 545759482 768803307 417073380 670415069 87204362 753309304 741435264 852155696 423899741 567942386 326658284 425485148 214631429 356461805 291186796 454851468 24894962 791746392 708216959 765587616 24267576 466012065 123558558 398667172 271150023 593157331 330349949 514194793 196845932 931053304 106667424 608117455 248529671 974915828 825609395 922744953 454900240 635870280 191985072 450682233 344533358 574882961 539061442 758220113 718379466 792560379 419721361 540625785 480313411 846985049 2696716 488004947 398331497 566015851 436062375 714665394 711636538 943268876 309237175 679151304 135475918 488711919 64600923 832810096 783837292 897201244 691509742 809023241 587570646 825903981 746765475 943711536 239981198 757015215 734163535 999021831 494983701 960171402 531826854 592333978 35617057 60485798 47548871 491805975 67818764 608868431 345069716 774952436 304477918 382461556 167607302 367727512 300716625 445069180 320256256 491958392 346508526 577869637 549963508 799438966 60579946 692117479 387943280 763509726 303169734 366246123 166674841 318992645 131803319 929680404 114012335 659931296 367796312 370518307 321748423 520791655 355476739 966962184 857841645 982262781 326841927 469290527 79543100 891744626 792651744 920014913 862229762 874947652 266643765 399014342 283884472 338682514 162678740 731846069 548602569 681108206 73012049 745416002 21127510 406841576 326606337 730922782 327284836 955541819 50581208 727911332 236415195 876263393 701085806 772148904 185466370 758373627 205943512 552476735 384032824 949736543 596467445 860943677 646406244 904858626 603482527 802742170 224150733 705406554 513151752 925799958 156270246 438681630 94085679 361259680 210004836 330009268 4819190 517059856 234408913 527422063 318949149 856046876 800919923 955088665 25503842 461247302 280121866 472496543 333000454 578506233 196989891 391067150 387977376 777055968 759591608 910676239 277526412 457968980 335368963 618028501 338411254 681898088 555065994 693414006 611655310 629482410 197228600 238464797 50052282 88660873 82615429 859665407 341406754 962099082 468791865 973275172 786433167 944790606 417769964 683196294 115814134 792994961 369571946 460901501 451063717 663514993 432044886 540335124 48793479 731684343 63710413 743799168 67078342 902996892 274800009 621039813 69443639 339644424 187602700 274798409 229027065 389249702 284320988 380713089 256935251 964642127 874357867 971183196 60435209 923188886 339140257 458913758 239698694 494121818 399816872 903940700 70470933 215368815 82516692 929124315 15862146 256495284 251191426 503881785 131506637 237168615 5956510 671978899 134515243 768729420 597099080 784900229 86993737 343524781 237527135 541139803 287848 703614116 49752530 329836400 106737532 288583125 171130152 810660245 661941979 808221473 574150501 708860359 556142678 860517185 12815940 293193961 69208832 787601178 2552478 470558233 95782561 190740814 18752712 423103992 232910603 509575472 212720841 717212989 54248733 924526411 262982158 454280832 315549098 431997642 46349080 67210806 56028458 336539729 216931998 878657666 31609650 133911354 3766685 843326906 620849764 996757967 878762320 993882096 177254274 313549187 288844804 960012845 428775367 871326787 477631560 750440194 298450670 584319146 193668572 356919625 6349498 378389427 69960990 962461701 576031452 783731548 776555592 869282629 465217422 872074164 132049251 536444701 494008182 911565344 150978049 495255946 69786692 71783292 41478417 708489641 113172285 293822444 263991485 336705273 242901568 368262700 54716529 955216433 97256924 646097980 193309312 427513477 411149 869735331 858945846 926461476 490121089 490679217 316804954 806251751 419194756 657338513 160237650 464031086 415860082 873997063 379183953 518810863 420762468 436479403 402464418 439107303 342030115 672372035 209130857 266405621 169327887 708030638 662215130 886240385 375235150 661860562 10761322 486414317 62086159 412633254 363976797 985804862 700657415 877248688 791496351 878044121 361640634 552009045 98042975 110162780 25557434 375932562 135978279 155749274 31953681 390647243 334783249 368567904 265487207 969830312 571382648 589147277 512213275 714125978 124344693 337646211 225228667 782987420 231799185 456804914 409143939 621057489 575763960 671131160 303071945 691780590 262594368 836707845 684704534 932832196 333040155 897216310 315952008 826684401 266671823 282723467 265632211 708125716 182676790 896731463 541883429 971675610 692003972 953782280 698335552 727211127 681093628 780566837 663393562 921289480 428155118 658159647 253262475 650174463 179053319 666107794 499083252 716685787 476685309 573760563 480693950 512516821 472331226 551357027 83459541 626933606 572267937 754451930 70730963 568932779 280627939 679428108 306355035 692870847 349448847 572131516 380488374 654954978 372905650 770862354 633978872 863992422 410721178 955951612 722196049 932334020 341704032 832881968 466435871 962720333 647095809 764679349 203113122 582114218 579805419 852046141 664612809 981008563 878597390 884443779 846099939 939330748 303996246 956393510 240563031 910147030 667684169 771697609 662714921 789378422 329547622 777593740 716063239 985909188 567506353 842242845 634744177 815955198 599914702 981934060 126713799 980089438 943525231 964453955 429172137 878873937 656701230 955124822 856364772 946361077 633602444 732839249 389879698 724759885 376936298 827493482 50769571 907329193 884226593 932520709 478880948 784682002 758061420 806211767 521802035 786169273 396723731 508084729 271822111 613002554 593553924 676709981 525020144 998034257 348100492 596195618 98139448 620099083 48453120 124975969 22770497 285802170 29330276 652771131 479898922 798106413 456633036 728807789 596551408 774079537 339252368 546889295 254848241 825171774 293391233 552060556 241545157 957072086 644450763 977888213 563141368 896581958 257783054 617933529 345867670 926866068 899110804 947568990 747017057 873608141 466210564 695143123 27364590 729599803 292406048 935039118 693400282 944820912 97514216 445891298 215123112 730308435 419432975 745496616 615329987 783519722 201062153 414695113 364189307 702621578 203736839 964687711 698046522 964464717 282991265 464427346 15862373 610846615 303540147 334735904 21353197 591467262 383632915 965560304 421278772 965558065 470417082 869319341 273856024 376058401 87396630 407719980 238532278 709612672 64943432 888841980 612984302 994967850 955807055 988097074 859933129 866354820 621507463 660286816 427529549 442220498 317445102 462700531 27569343 797143455 401513030 923057799 432031881 811034518 151171688 555277533 265058334 301580413 281525076 291513326 186721771 193045303 139384835 537708744 237399137 903774641 598691812 605219313 539433757 956146916 291897441 929982639 92753512 971515745 408905961 917851397 688056154 814086860 124677082 536268252 413523074 561132564 378956912 438554316 212420499 365537156 241449614 749304517 109622985 853203937 756554166 853902565 178857530 501023659 190333786 812091313 32732704 190188292 77516377 523465259 254689281 520085148 253207919 738544491 718646965 992227068 55965031 696579352 22073799 270190780 234807939 571768297 326147776 804125229 459622135 787572545 508964445 917080783 225501079 338724792 147735119 615230788 262795038 772046303 253548066 302471052 92135068 865119700 789057265 814841096 164111341 331264119 119014116 348435794 75361630 836136501 627427299 743973386 704198947 874315154 271492701 399772476 296567440 748348374 603116121 619983869 411788526 681388129 569332211 813961124 362182180 863130759 323809873 781149061 388656982 738855815 194525423 994466432 507468424 576496191 216863079 329468260 51636657 861511974 699730445 881291508 847922507 994849229 239846360 463588191 76205841 451918831 71910964 545477272 135245964 686672709 502277836 681756276 168073023 876408301 545841576 928432720 242657365 873268174 591232266 988590664 251571265 989944161 89485457 930006447 590655299 945991716 145435859 754400286 285389338 674718758 154593465 220960146 5150082 598010340 494941386 791515723 486993356 647493063 283467790 525962446 190496093 195709684 151550884 305307133 100568101 840494548 554835121 635822000 602621262 788422367 535511576 951285420 706701511 973952245 421618938 529172024 424169096 945428495 523079848 730236331 548568253 701956235 215840273 653983398 168001554 221494875 120812850 610985394 468701113 587913432 252276829 329111268 135156382 796508917 743868198 793671729 36523136 966744041 252763253 388484031 96030554 256914984 27422318 343438868 78191748 968662789 728371799 835389789 429288698 441526297 177796040 317690047 258948904 872755724 69377192 392283242 368969227 606276526 260819886 487673086 99669443 970472091 244365759 537200876 85566694 412400058 200670716 882528718 620360695 622203442 483739157 592589468 525936447 833656453 645552015 868488661 12079040 185989805 80246839 536698184 409281154 808525397 612417336 723416381 77388079 941828465 814913047 887313835 767175554 878546133 175631541 901409587 512954038 822086220 531126897 987815218 799234074 940820130 223698448 602892589 292271701 315479984 91587766 119008684 33494551 333530844 160840589 246108346 85517033 970062411 346730854 509025551 424759338 922682604 377007828 461107382 388332890 738459476 537398600 847182443 313983010 933552590 161081156 231474422 191550676 821449766 638233399 692240101 65636592 704938270 19861 558289560 108277664 752705474 731050991 799829622 9538662 402397710 315773880 601594430 245332076 894336659 371275735 770641420 434018375 437828832 77835273 622188282 132927833 260563485 172928675 391679064 253668295 611237975 518684573 680873592 481267941 850884101 584353235 930134465 166494719 582547696 207454171 356978363 105783251 161382027 2061038 308906047 9270219 813686972 306764525 328243194 176587169 454578500 236148768 454731524 278895613 918768201 188588235 958335018 72057429 959444598 252859933 773743909 701479851 789351326 584723592 770375493 224792159 875141224 733019855 942832025 101084353 145810661 126868572 393635870 247339810 711805419 350714243 384132792 45828657 517375663 225911862 633492425 437013536 885777379 604627303 953665733 260885958 916499565 260255077 646543072 306260090 463334460 7740271 806636623 175734789 750132452 347160807 992389139 914387890 927820633 837134765 871053213 634281711 797506843 43311381 430289877 82864687 522327155 237818187 821159743 302597736 406657020 42942174 733022834 119972733 763578680 727917647 944963142 899947774 941873754 475614713 568332837 372587903 836216273 626602486 922244175 562914393 757604333 54789574 771273248 667337877 740520485 92502257 568887117 463928676 944015890 937958553 970650500 790187588 802176597 440845677 997186837 956998362 971110405 59738849 902396579 217187864 559457958 32981050 362044867 229008543 711637480 658472303 880710363 399651684 651560363 113315945 686351025 55563350 857844951 466443860 466841418 158418556 815990405 325188744 462302917 371185444 486229121 337823100 570767781 372114382 500184374 252823175 613432679 337487241 985024452 428328437 810435275 95072181 188436906 150712341 743863747 190993722 296955211 229005064 623263930 568816774 707163688 126830508 338531449 175319250 566476220 548104705 909978626 269519055 831913583 316559488 516725874 178350647 220044970 14259849 861342637 694342351 797214677 268000523 523245172 208014016 419879293 386434819 895620966 315044120 397249156 63202488 390433863 317243238 627961020 230299632 807450558 653632925 888553008 785018820 944104680 921940303 933575088 655270877 735987518 76981864 674404145 113107365 915389828 905822989 979234790 421022355 914007700 784837713 935537689 202274894 563708381 503537496 829762415 451375313 666080336 303989376 779792150 54423937 409241268 336906265 651771140 51570949 601366315 571459158 693845481 578313528 643356187 303939567 580710528 155588065 297370491 32804950 649409025 366980690 734475676 635077513 732334037 246079119 800878814 288618701 484293058 384697982 428619785 232763384 757792925 578158358 866950318 705045846 779855770 230978229 315739641 211260721 954765605 587680441 642302585 126564185 502525182 248865281 662576578 15768366 655391882 504733216 852882600 122741057 390372771 39167865 686886230 616431686 999695670 491938870 604548098 438601762 555470155 508334815 675348676 25569538 97102705 72740773 682648996 35272291 988062700 467538054 829020484 807606504 921187851 609226999 986936175 439823560 559634578 8334245 920064660 287869510 947554357 513712146 902222135 435610559 514636027 422477276 957928026 285073409 299700687 1557838 916857058 437545421 627075561 72928632 223692682 53601097 475717064 29388791 200983371 170004070 559739206 541514332 654254134 629642807 740985646 374972402 646872286 62661813 759438105 123833008 293688533 23666871 899238448 96843130 614617814 216863130 950413737 96961640 290207236 26174489 388723948 70555499 215946042 6940502 41424963 25245521 965457446 577737237 939948165 216734543 491064618 57681653 744748716 720980282 997989998 755867969 913853730 130528031 434091067 282004969 828141750 640932837 918430884 179868487 376089730 375983637 853258955 738733107 745863413 102150584 423449620 306856340 606553803 467581978 825229393 810424357 910881633 65686933 234147691 140496989 361932039 282115703 311073597 143062484 615870890 319112149 503200515 126837519 172779738 46620070 74808053 72571653 830583781 324454076 988682052 753349105 946610188 741707298 791695593 77278334 456795822 5314782 650864023 507791502 761300906 292705036 500325088 342308430 721885417 705916747 831176027 569243271 616959052 392465271 582779533 51779787 585278775 468662030 583379599 445391156 875543525 545243459 955746508 829860068 957628532 869591113 875519379 741915935 768943916 758583549 990771838 815301269 867679441 753379595 866762258 16202229 327240396 70515012 862102238 361081452 612630703 414869555 939612437 113523049 179074286 106305823 207650576 14170904 231064951 73123775 560693792 270931168 391208545 166723736 440098014 320433849 743753906 730200188 876522912 786390560 816966594 671421576 989612628 127838294 720249360 264963638 517188152 310391789 918813509 63914300 66084493 15040671 612957874 373281677 696090035 653994070 742208625 684061638 751164984 617975103 913482176 876333702 984447469 489670618 517960924 218868746 804014858 389842444 541498224 346326930 603292255 97516841 135652499 58331889 980574714 590206960 820148565 109400412 479552066 399855995 655784863 350389853 851817229 257121413 775912339 735482604 778233205 409669077 613018509 415477959 529703665 284838472 481110977 186720408 196143025 12235148 112444313 51746340 242300929 22431963 990943568 423145367 634605850 107218789 608531247 364874131 542723655 349805345 749233984 116750898 324480028 109266622 513136792 295627044 538956623 218402105 671351002 384712056 794436953 671181934 785468581 532733362 994118136 942658936 981014172 350937509 698593514 533238372 657894064 115812748 957792513 685775074 849041720 666680416 950332082 883745039 928492522 15753592 411322991 50771511 175729465 69060436 514758456 433176210 529120573 397376211 419242059 319768209 856409566 126906769 431965016 327851556 591840935 548053130 565700553 226675615 990485567 757010914 800077704 299872415 858734310 309412219 615127847 381058705 944128736 222763278 257963382 192256650 421814918 395846678 606117425 123925869 393048176 96006707 121965228 270411 569892336 364420407 552908460 448930284 614899732 522445090 909580193 577743921 886929252 360756702 762518501 30206479 724050529 477440786 928830772 532352761 660760407 306158713 803088251 543607109 868852087 731714475 952842144 121135314 629418891 187213410 722158298 258413200 782697411 108862162 915666822 818198016 947822592 873649555 892612642 107628127 841731561 370531691 911479398 560230693 631219503 163650137 777532612 588794152 806475437 708359994 802552155 376009430 800707862 571855667 892189943 452739556 847440592 828118503 972349003 840991903 865287066 418061126 545734088 86646695 503439048 382436408 385519138 32161038 219488195 158347908 519484097 372334523 741339464 497546534 807683363 480715958 724186228 673224541 991415384 818673208 983977583 777872864 975438980 590469702 771306268 51391715 768399219 591785693 922513807 698035109 963526825 98812736 903103338 111515778 829599798 806442059 826296805 57206419 454180811 10048953 987171843 190384312 393313861 162190026 624305074 520962763 878327528 455524192 945766654 491981810 664763648 547892725 647069407 74412681 256260639 180007485 230893635 161816880 998089538 626227727 834605715 605770314 894219926 652655582 867926591 662254536 812078392 75995729 856603922 661468688 823645754 816263402 942030076 745527282 768939697 751250651 781948553 12927888 498450858 180464760 592405519 370110949 853750411 565912144 680966207 21003980 545953579 152157299 500677683 16962143 66817486 56700405 804620490 310135283 865879928 679155551 903537369 446195970 824715309 391473057 651738997 542298763 870596464 42929779 782161451 452173490 492862277 392740274 462395459 316678103 721994285 326773351 769575730 242059732 837629274 784314214 871516524 441865630 493084933 321330445 929615886 518625450 778439923 726238367 859854667 742360764 996179616 934251210 974985976 684845014 892669464 545547774 780037249 108097458 866570128 854945321 901896385 545970468 680984893 326182500 779902856 56844356 243114340 239224082 786776814 528119212 640046533 553324080 599078270 390319676 614872478 78751758 794917582 305640448 602629254 188926073 819198978 3820009 787554520 432260372 995455672 751538943 879280981 172953831 958525334 762347342 799840571 352691036 892394914 812171340 926378153 880725187 886189452 218423887 482074893 155800653 162834805 114113145 817138598 186053666 690603737 417969554 697794110 100571386 930532926 751979297 758003378 375036103 958112096 807067831 846202848 131689431 366521726 204934035 858218761 409189255 760590836 158560987 736054629 546228687 947473431 44683507 257170751 179982547 642969305 389940501 727443519 286337745 413219821 39988044 665913733 375849010 503441272 95604248 867608935 277632747 411115087 347889101 445319160 87869980 519087381 394332169 847635218 17842157 44656146 3364966 339996738 175629881 577366546 302752126 380932358 328793686 986303445 632729818 647953405 312068623 323151674 88279901 198866214 110333046 863579233 363354646 730669508 14621611 579505926 430624509 718325869 357745594 996537773 775708495 827443065 688724414 735221892 482050709 525559830 230878692 933457921 482743465 827049445 715508110 983559425 893180445 998407617 857749140 861649592 793022645 983863919 692967697 848211311 267344461 607314643 525292914 849159609 24068216 213050459 212146570 398607069 190461635 400351360 218777570 905190425 96992877 211699980 201959591 325147803 150353424 916763161 17755322 647432671 43124333 596359505 412740079 562552870 164543022 977413376 740686382 943857934 80681685 949301308 241338825 347654535 189688857 638214250 54738772 250772364 8492701 940383163 320756294 424667985 7586415 927201912 415490879 609539157 591924468 674787842 38867755 676857969 60401300 987571937 759724160 976741099 872492976 969677932 368352221 916983872 433473645 846047855 788367641 985460520 8045870 294012907 235484296 815463684 68984864 437579245 4472535 673090209 534548193 687213137 6690271 40183679 35122530 499869274 329084032 597515844 248481895 549075548 80404477 877207197 658107579 981997219 520336601 913286695 32988647 197768523 75524670 366166515 342534589 850120138 450296078 750988957 69341047 157180033 41518357 447432380 97237352 897349403 628188198 981309154 823507867 955558815 384583526 433913409 368460644 449056703 302741998 535876878 490364538 805474685 571924301 658457020 543851121 919522339 543766140 934268177 548242314 671063517 221622704 799155666 369595725 986787396 362256264 651872246 270215637 465261857 379107991 839028822 659694683 833347679 390861044 615486656 403647112 922960961 591887767 827276335 15935054 869020566 435925731 620746880 397150695 896245887 536697648 742201996 56608792 880386524 327429010 763929388 110897077 842302219 802540125 911693496 758107318 935346772 637438651 675775502 596637978 912169929 279763996 566719431 285089134 907668169 821479909 873459363 850397499 875747180 111386243 665576226 28255502 41829545 23444205 589836735 368468593 969390971 482843123 768987853 340143616 703702026 533830857 612955117 124173160 583173670 6983308 932246897 21727186 618117425 104822969 111549931 3247752 188355168 23043647 482686079 456044991 927483741 632768236 709669307 186201049 995006286 737487958 760003519 566607375 828842475 364612 323995678 238751066 843487187 397122351 741511071 559418917 728838976 584433648 680324378 489047631 651656479 644246396 870182879 670695502 694526933 82560785 392794307 27436095 297585835 135557806 366659443 194604453 373319256 44478898 166653707 67058314 283675210 274958281 581593261 212859404 380268814 114082578 789891650 517131448 715331440 78432151 167549475 131818869 591568716 19635960 583048336 44387735 941890725 343439473 831044036 527949150 859204635 551819937 637846420 474390057 880976653 142291683 497400143 219376427 638968664 287448216 999341003 753318855 944051133 538901158 878785387 445057789 773926108 681689773 796280816 508687575 881854969 611858764 844260330 313425116 855056492 851658652 989637654 948675629 974264389 695082464 809908004 793160863 966532898 821615212 968440053 96235772 132542052 56603727 365323711 103534088 354570141 320083159 775617541 531825701 995570777 38423345 111736440 32413761 390749365 377736859 574734747 201629979 410179151 57534274 464705933 382586998 882062330 328364859 651869120 407187404 587156868 449933850 952021270 285259273 915296044 625400480 968768679 209941809 268238861 50104557 465011351 32877915 556432564 11566563 392852483 120173218 585223929 265712757 364405818 243006855 439546168 230476246 380523923 152674345 935816897 811282531 981027657 587770019 945599566 902818986 995141259 647404492 892632199 649343460 934178514 644880562 887152735 450885353 533947446 187328563 588778494 555661066 556924522 257596392 721891823 131396294 317689915 66050071 518001237 141183126 488116282 460843551 867935081 640046374 747479385 227275200 851770376 672473543 678675618 461996194 673666781 253583399 841523480 630149781 933194774 305124616 685989621 569133320 670533183 255385910 666381343 5667922 829728048 3285164 37349080 4467986 459708419 192321195 576663806 210752485 391404792 153245963 381496852 150160169 821471610 639825866 791606434 418511069 610715862 117354680 991908279 732736629 928003052 576771368 711234633 291149616 969849992 585551440 887170843 222160730 717216867 66725355 990383313 498021024 654298469 251169255 379726059 103836636 185918074 19576634 993872661 207994327 236296383 225422102 972053062 909315627 977677235 889809823 961531202 780327233 890496748 760357733 821412816 272660170 496411356 216696257 621100722 62257475 769834808 551163468 589708165 583768228 794582869 760529915 819041595 475534481 923950144 720455117 824336678 476034109 859413462 349379389 523265101 92211494 253383089 192273373 906565331 499072436 987868625 682820781 927984626 39974394 513898772 261575239 670015939 650354605 997285932 773450411 960031613 379597845 748002731 235593701 279404354 97397642 650682760 74175806 786352908 559142058 746305367 81027595 361508147 150618748 725542628 39900837 220310361 60639358 367552253 52519910 979105329 515274058 636317422 600091478 972045224 651302342 665412595 78793152 964144500 649478841 750259959 673023804 991855763 309069365 445429474 227508041 636681671 216620638 639332546 586752285 833822305 781265961 968564528 50191907 598085326 169503329 293752516 279789209 436968032 257106703 834602528 643676818 893620237 6081710 597606742 348789124 693899538 414869403 604411214 64295393 313478982 242735374 994076130 942755749 957759847 91904921 537762215 131117105 373236689 36152738 724591284 302741607 418737104 113285178 242390990 3702117 899762485 216695271 225079718 159843857 564413680 282201928 565055809 291675626 824392240 485196306 706571186 599980621 800594642 359008214 915390371 5051638 838628166 460644009 875713910 820194395 885556733 45558380 678349105 235025762 246550256 231629155 847619274 331379150 802369665 399117747 956482943 937799628 998082137 838207891 960953673 611808080 738700848 353192088 562403506 88463605 946876891 523887510 596422597 134341959 912974200 699466061 851523572 130109849 807307644 470884530 568935963 37216842 919424494 461875975 603640433 559549284 747754380 1845419 740633256 221092345 765778553 124668361 236418556 214546219 890330097 359136169 702105362 445958159 848958661 819972734 956879471 11947066 945206267 177466587 948253031 497843223 568447323 90248236 882881473 512361765 758053830 12251261 435275308 2004008 851135157 37310396 782612848 361685308 705639145 657551804 903735763 398570700 884653530 796921882 806912030 18484281 429051492 201816684 381865827 91975012 523676875 410715136 743024047 639066699 774294659 584980355 736579820 244961737 754348612 606569168 638919231 498738662 997864452 878148582 961615607 882623133 928394713 349108894 446609822 312645040 881479676 135846619 335970626 264291126 695773491 246046091 253588424 40347613 294854631 71514036 160108545 20042931 187345816 112161006 894573193 76496218 686796764 262577161 274658265 168492537 759118411 137610526 556761393 136443824 588311702 489542777 630955009 167584733 238006277 209519421 409556941 3347683 767266686 315682277 724097273 205630021 264826800 137748464 870117719 253201258 781961892 558634028 745964956 486178115 893939039 642175281 729619603 213851243 929310814 169163037 776572737 727531014 908522123 679686839 995585098 397623084 409491608 296124836 871778682 10141636 283340370 232976121 630226589 156915373 202361397 55795194 517455488 84729637 359131793 303265827 844833870 797126805 892599819 442220467 810785025 267715085 930182416 130945685 900950929 391806772 508406586 358616593 485161922 136596194 212952362 2420609 322956913 142375685 631754274 119408106 744385640 500318257 980107188 369952094 771283344 23242663 114082393 678453 610790853 509602023 703626283 669520974 736861033 232065989 454737557 335615010 528249620 435686695 612168275 521935408 966181617 328120047 802549984 217416423 752108785 155403102 187220082 110166271 245969618 193006011 372903030 15045682 773272908 748945556 987488276 305863614 502628905 201706780 306484975 71344735 394101645 104591945 807507993 373381425 951575787 18085699 209382008 69441355 230081359 177149494 726587347 368479000 601709762 395198387 671899349 397340750 415938344 98355251 724367197 229414123 447314660 257406845 944334965 660302941 680364552 361314532 697789396 62554987 563652858 113727435 999803375 707351264 782340209 395225309 411133519 100361817 751256333 231717240 653907111 603212510 793033539 581052129 961170330 736685386 871852344 833469977 905895645 285949255 365157128 336202118 467448091 51213485 635139317 615201543 902356490 790477686 886643004 597685573 961248787 933016336 984818499 401220356 849917524 301614138 353839360 301268213 734865175 613392027 904480897 855324226 917662208 272830124 350945365 204833479 768518772 96690348 373706403 260554122 748996005 520959555 538231332 501610506 896588948 431419292 454215860 375417919 380241892 364699845 837403648 513814572 816167392 571191405 860070422 569739610 971421160 937244318 994777178 478030715 517845390 223299200 666803536 446878513 464044307 366280711 682265437 226718286 746059502 29350825 570364288 46153327 348566980 318686260 927558482 61954181 984128433 28728609 587459498 438435810 800583510 127913905 790407197 663507206 680181121 350344492 482936663 48229461 257948819 170148746 828840530 638512704 789564853 393732367 596149202 90870102 710858760 456445133 740534377 441268475 915032747 37255121 785875017 674937485 815023723 621233920 842674357 308733898 939649888 933693063 962789731 536714600 796868842 379350661 380141366 124140589 291651127 72372346 706749832 452720358 618590018 321035775 336396032 35242068 813453657 466333195 607737809 203268501 568009332 523380815 703213342 509592051 546701776 531482895 991593057 983852876 989347949 456160054 955837450 659526961 983996720 129106471 483918731 455608101 503063275 68267762 858771835 359587716 431977995 389610515 615193334 207241624 721280754 167323174 581562434 371781089 498892204 210820475 483358003 208096067 417416937 54329645 325776497 255107795 879949920 365066612 805446515 525542813 634443025 198593555 523574760 428289578 718865008 379758532 879047955 744424124 796500372 325769660 506935434 1437893 83354540 63576673 483385425 475681715 982870808 880656016 946097165 939462317 985908461 238755831 615475275 334224248 797493962 274030774 858927378 735277381 761693742 267047058 315260872 15604611 177727329 108552262 340064109 258242826 700691475 470635137 653595696 145086145 200978288 165908677 543267007 404204763 598773188 518894184 736744359 3665514 576866478 450153179 656184948 223557800 392133961 389478225 710188614 329650427 945652244 51582630 247004233 204876014 549375507 349545830 509722732 66912912 766581966 293221575 319348854 116496581 623963998 105811927 754981737 446361345 649505564 547752334 850701114 425763036 661115758 386516871 833973184 363456007 721620283 665488659 918514344 589916675 784715632 85573929 162135504 148516041 954509684 681845561 707784122 603498801 785468641 183109819 429415333 113805868 386574247 331336423 722789110 399445104 816326571 626799301 760185642 89978664 434020550 103542673 270445212 186858040 991911156 99758955 390734977 32763603 634690883 586450821 637783445 209583444 399702372 389492109 572302970 392653587 909240298 13470560 151001702 53007583 918882499 241588928 763365665 583647079 867434374 319032107 870502423 772854145 990735097 104305353 126500911 40882300 688217487 550223044 737101941 91364532 988548795 116940717 874890776 580061525 935861118 146124664 520549753 306707148 312834084 198463732 709499785 605075118 905495615 872101831 886669150 823849811 866040093 816079343 893737377 712930023 995966227 624579111 799441588 728078270 952485428 300755711 655707208 254935099 927322180 177422740 520035590 258389268 711880143 376151394 471738372 180558525 660261849 505044661 723734724 177379510 738431318 102167716 803271558 505259816 555944336 372562675 902798727 491269780 932202592 757524393 781465476 394096826 964457334 394701263 796277835 625538725 960433921 590907606 693743161 322970719 982528361 779724557 836162122 68154381 350636654 270710682 846673906 629478066 819143027 31379979 911924296 522809886 550612936 525913562 529106141 19010671 651238146 326274184 708671431 616074560 664792504 338014695 416261049 168168746 168304203 62816058 222973405 193238750 459038752 431199074 557982566 92202824 407285533 26114079 524616733 54864386 207767091 132905321 261180679 4420052 717876023 106154552 142516018 13950263 956140857 397935789 776320496 605763140 782354616 440763168 794070568 260679617 744391257 4210961 838601916 297767055 968837367 868689635 987179641 139624315 972961353 437874252 788306408 378019521 862717713 447333671 920399139 587075061 851734519 773692578 895353399 627230778 988647001 672446531 857664715 721428265 943921837 836388983 860408967 186605485 927238233 292975569 796737493 28510638 808912116 493560745 989751751 759001553 847746891 514325821 953642141 594895047 811818777 306439977 450729071 404181453 784716239 178158086 513167948 167889802 459499992 121057741 475535346 356151313 820580394 281866203 336689079 213317066 401279630 330120780 921119755 115747542 604578109 96682661 589196616 83895576 835157064 488415821 601946104 554341648 782402319 755849271 898989767 109513318 795165840 41296646 314575607 63951071 597513486 281667965 714086019 594608759 973325046 894781807 983711466 556122311 875452954 688198166 856402302 223934313 413750968 182877869 504946077 457744983 664693180 386544063 459423116 218393858 800662333 790969542 985742870 955854321 995699285 850580621 980268961 759788370 992870650 109870410 325068209 39385675 915770638 66371335 633166225 414379488 829395046 754612269 999776828 851204739 957207151 826887622 985335001 95854742 162815068 35539204 533535180 277728016 967097763 353667296 641161751 120931304 653760837 179208121 928604112 88346957 226122371 145868369 899650960 45134736 93253875 75656583 382992336 258351979 368107438 128783093 231155132 92833172 600086254 204037014 409638947 64185919 691913381 106102411 448391378 129893142 235448812 92797517 129871921 39596585 658233470 432488839 485627854 209718970 968605413 117069981 220836261 66524484 384058909 268485220 990790194 167894011 539036878 407939509 847526917 593124079 634278710 604681303 884244288 399562045 889704238 409978401 726528021 479390723 568040137 395742603 872927942 125575781 875049532 631874815 849060202 507699930 758878481 388636042 712032981 251082717 654629266 283076349 744876187 384079873 725852473 345017706 978288850 600434910 958926280 950981981 972057464 581008642 597315339 485306080 560713367 73519313 565343026 218162426 514551682 474497336 847119880 610566335 943650510 404965900 760046938 656594221 954014149 145528700 500869451 311400099 988967067 253761849 592710419 584734006 599151020 556891738 600437118 337751306 672635466 475319868 874806099 416042597 851027605 710288583 752389257 260718289 601478570 524216909 704773512 701393981 760858230 125032493 367737446 366630595 642152324 444950534 865783225 831147835 877613761 465042915 653523916 120923492 585856494 574369338 701401649 553233346 602735102 212718037 556489440 81657896 883701659 25755648 661122409 207085340 909783912 79980771 899895316 801014520 819727061 384207533 848220829 285094834 413790661 96304685 328956286 287853056 564725022 334799975 709443904 457360345 653567477 272185620 980696277 899885442 942842214 855910189 997648783 780568821 793152588 677802402 790601538 566132946 880368165 773170321 935399298 414078863 962476016 961905678 966570644 86967271 151810651 66259677 648618833 46986330 566590122 55505657 917237988 826070643 957259992 549243358 588402925 379752844 795892826 743653803 996248731 207233540 880704674 728196975 887740119 151977075 630900210 37240794 622592309 30189348 164899476 115417357 623985234 251130114 547061194 417900116 825148174 341488680 659776216 350393427 603055080 225138671 627167456 509709422 907016372 786888123 824141944 317499750 926743353 52676121 160281002 133715951 674732856 280575858 780044113 617496070 710144889 243597208 336193564 18500256 605134238 230645529 925951024 555161738 603435188 454461626 779262922 365096835 825197418 340244013 463148134 226141054 840118387 478695395 502999173 81524494 606725011 63501636 102678861 101669838 140576877 92722712 886957614 463084582 802775781 305858651 343857638 19099246 273060644 85473126 856323768 686778347 754626996 295228646 512411716 499229014 902364001 221957654 257729740 71553011 891137305 562681420 638885332 615089966 651694966 205347308 613295221 296942557 907802739 132687987 717727393 345070020 472137886 47565703 695183169 578300016 986216227 864211623 895197874 426276880 876546485 261224732 927834211 477222458 775152497 176323051 424362482 97538965 475917324 413075796 630927067 542018088 561980444 156303514 741167360 738423894 983414929 301556562 649370301 310556755 801346151 332432291 987501384 976770371 977661806 727717930 877639340 238130893 809277694 703393926 810206191 553619617 769181942 495521080 981147884 456125587 798470447 601934716 879623781 878648546 973620066 278127785 976273946 93655774 290408943 156826504 274772448 63179308 976839106 408989599 807125389 14268989 134717752 70372293 317415449 214092006 423409458 133448326 887330698 771647354 966030324 56453575 198206492 147800003 484104987 129302478 465598659 12846203 984495175 418122050 583978706 383049865 783252564 163769894 960474391 431773356 656651432 524508681 838540847 410461811 838833438 101664547 877722781 30506610 999400271 186757260 360942105 184125119 792004708 65152016 472272822 359864525 389797915 388847689 658625071 18269443 435368991 42668613 710776512 366301917 967349013 287132215 895998730 93534617 333910060 30014015 952604892 542670809 583344930 82042287 997332610 436070906 969105504 834308724 931755871 708006246 711710807 676120153 954455269 66330118 121391947 81112200 102061611 29134987 156824933 79346357 733838906 258740237 945931299 429873022 965705674 268385636 824628264 703376963 816016820 583774055 853525930 678396880 701253160 74553154 558947793 465418492 935536655 38875245 455577991 683070 188404726 170922816 715842204 426029094 468638986 37742089 330919054 39134517 701765646 439613094 957629078 925499694 983287545 383061418 661801734 201734648 982760749 820082364 872353387 868116406 965543300 428948008 852656214 202442164 954967244 940499762 942959902 576057498 771003249 538771592 766092223 24156654 329825566 124063451 449171920 256396293 563438113 525142112 598249278 429022444 996998407 770813783 943273587 689056547 718920305 98802112 304032727 168319399 487279807 241989933 432947360 64108789 851653315 276709759 963504367 670920714 687995254 42829229 64078915 34815118 230713072 181684685 215466247 69669834 467298204 311252677 550737968 171036349 961838268 248641361 633696461 586118935 964518259 769517099 798390772 323261739 429857022 387607227 395133376 170437108 716446839 25417303 675285349 141123161 244932215 96407886 558686517 240434454 322402358 189321405 246325797 236232889 919677450 824735590 842547985 288845971 874941173 364041630 493513043 52792699 197486713 145331510 975442756 389089646 583814503 243853443 594775095 539035282 739225237 151430507 891501896 198934056 477705427 6329399 621361202 320533685 539740557 194018977 239312725 212702502 238487763 176642302 603222738 317774766 321455942 254132567 873332708 2971710 172969245 72741689 972180209 120504784 320464292 314115261 562320514 267621379 359338295 311546818 752130989 341303249 426891586 195549992 238818677 225136673 724152064 284511184 872301810 34777585 93259603 36776893 677888483 555417567 744559982 428611920 531209462 393871974 570714259 483474693 826285060 582935078 953244929 752975715 943790339 289157280 445789120 404712524 660946637 302854246 605894010 29596946 542493622 203712752 960416329 455074036 593456192 564712084 581130823 310135664 780948643 598666815 931492874 519366440 637742074 12307444 426418795 143612629 463338439 438914374 751422417 342806563 742209259 529975673 759562748 14154561 788634217 30910272 916085332 390181784 444585105 139576324 777821548 736731192 924517819 236883037 719672874 228186667 478140201 271006300 397215329 60251824 264558004 22006208 488371710 175740152 597474124 369387704 792433268 241205132 730932385 339748802 963801344 883663967 905719375 35639886 584557369 497691938 982552819 529022243 899759458 815775974 871697704 231794233 260972529 63432926 795526471 380441916 825448917 659482891 826620533 115768232 863883329 458082292 994332020 728644789 939320230 167040729 735958634 639599273 987648510 875480831 884407402 800303003 882264812 253962771 408456405 316974945 746941436 197584588 796040511 53739812 815948136 227630718 602963387 265821628 786814554 490845782 814994880 555779639 978501438 615605509 691125121 390736191 892533532 621970885 821050482 638711445 688308728 264041604 280978815 248365201 829911448 672132002 725063591 286497589 752558737 704517337 724792709 500294055 766313372 627234017 858005379 655916335 968040797 915369821 935972932 91369788 950527557 401409954 744135239 127392464 837377758 137731235 314939854 74290573 567223678 132841799 551472139 270353749 414626050 343442832 719927563 62027109 175451313 124095337 910655192 653014434 672649118 612772621 729419938 87726874 719703054 221389897 756045779 730434782 875394813 576014775 747550881 552225137 566285762 128008342 570006384 186363614 760863152 201776837 273029488 219009208 617977917 13504051 37648919 19041596 500687664 212906558 992505187 636630613 787945483 766727488 919422392 304418990 602736669 17295196 109971295 94931434 615787641 133943010 306119699 147166657 215240594 65204863 457459073 200334715 776950004 8955760 729277470 490206959 641385597 415501265 691372165 612516124 918066243 569572936 961861893 45644944 799799376 63820294 369974658 339238865 718767480 405882157 885364077 52353815 165363930 51877574 843500763 661790964 920476388 450815738 557949961 352197365 892703631 596889408 910092863 94038898 529874679 207232680 211365296 67926433 270718749 95448756 750379026 483390918 521450436 456199642 463002992 368644675 881099751 436716950 564347073 523476848 868195343 82248265 247531423 145262750 968546250 57835402 912840086 536241602 901410414 330487373 656165252 639368506 800327964 152076785 684321582 372435010 475307561 371780820 732521866 345014003 699545977 136469449 505881577 84298845 835312118 751873851 897702766 421941266 987272896 394489828 773439955 263586637 751165410 294207350 513272521 134846341 871225852 270714261 315673227 247273149 804344712 356507039 989773501 279000670 910870525 857779318 882461855 689916668 717209554 343623364 778064885 752574276 797214577 178645159 542723114 388072654 647363622 190612174 567712198 118275743 626348438 354028107 711554346 19638582 298720886 125891166 463762866 134883721 579517512 16017082 781124966 203635932 250583506 23386737 417044996 276061194 866789483 543178548 911860526 776349289 897077515 592863903 675302125 385760442 853890140 653832874 833030995 107548698 619015273 107029064 276299271 1238666 654017162 627671889 927652489 14103287 311804979 219170165 767925115 521288155 763138608 240681198 502871497 259825027 480236263 146480617 706631803 209676134 470885262 13413644 158890953 8015961 589540561 447847112 666578398 486283384 512205046 13128225 287236053 24931688 302266605 110571832 774309466 691986801 695276878 563098258 817518510 258929548 427796790 295436590 537026060 200166807 975698989 374703902 451065091 375001121 697066615 622488743 743841278 606821969 948610570 669473631 930060254 546802491 741628588 350055694 654194203 172559197 358176002 120628681 152950968 115422381 198128490 155043177 168877658 141904082 181714931 57037455 680210944 210619536 411997468 59046551 763667715 152455701 692934677 425955289 707826417 7005815 526169214 305076623 402240378 253526148 958091746 434753809 905958101 136971001 828228895 478003990 540401417 25185186 396211084 148009543 662041048 619383935 704515765 612945521 883112416 443018552 462488679 462033505 605053816 73868645 586985836 48461900 625834677 580396671 939943609 818085156 845204152 576946300 795986146 591734362 812375082 308978086 853737006 273152051 935559653 45440771 742344499 235636788 635124402 610657884 648134080 300750157 965613223 905232781 952664354 302242357 993798588 672717011 859276537 217178343 482976137 111235302 443500952 177148433 471306734 284841785 400422838 73923740 601403554 265828266 643555565 506457635 879878031 416054748 915133647 63916113 931014886 357174955 435101590 226396253 255729208 105441031 795064753 431047322 472833268 228937170 884690805 419602816 998972397 930623561 977350309 813818415 977897032 598331395 975520291 602571919 881453088 781646301 898005865 533199865 846547809 293348652 811537857 80968107 145613588 58334534 422735695 232900 574928689 177509618 540031514 369968467 704056250 379555989 778839959 537523500 784176090 111963875 217866291 20995061 917763604 187281544 527039158 522812948 708555086 700402612 828886248 36939127 649896249 190349347 260078511 87471345 433232789 65244863 379588975 145607178 734686663 240836834 574746745 130014407 454191785 185353595 945386837 234804687 422541889 388534612 623892244 221481637 493010482 62267856 637907035 135054888 745945122 327589301 526729714 272785946 695891190 74914545 498767380 10105435 159701642 79671405 630484997 360853928 624114925 547621682 945796538 619571096 866869772 245028425 358643192 255843142 333034986 53233230 466157063 136218281 913777350 449877003 811825086 810071196 930124063 680134228 713128436 133277509 850984058 496063241 763405760 294326255 828374109 526706957 533182529 528690323 726336738 194306893 343166943 87807521 990520820 447756096 843079214 630269319 668267787 133534308 187104186 50298382 715051994 513719453 515933041 250694731 262644195 225772734 612863797 40571923 683349869 361732639 969616010 186420243 623326620 249824732 912293630 753268121 806429680 588259547 655900227 34982396 47709365 30909936 618028363 417865746 483143806 293416454 328491159 275344992 758632853 318278093 902342880 895440494 952992757 377156494 526741042 306889668 612581848 140623961 198187607 109110796 931685868 184069207 865319987 253854103 850735333 752019220 951369290 199601736 508395996 231573039 465084718 294471494 522062420 9306382 144959336 138323926 762864010 494641802 778072579 91716645 613034360 67430886 584783323 577255268 918306152 806480425 840775579 670302096 933815272 337381496 520724374 228008118 841289925 30457643 502439749 307982101 355437794 206883317 814596766 117119894 478534969 78477057 514908493 416752984 533186377 507142502 742391275 601615558 796040936 53758392 233487659 97583437 423303652 411957742 913035096 242595086 820217910 613500268 797345367 406812090 818460737 488622015 662104476 375304914 769313875 705390497 708640043 552924660 612617738 531139207 602041461 543654483 552501097 204411822 492215619 136333645 722925201 639827847 665398388 252082385 643749031 214672462 950818168 937674283 941017496 584040673 732082740 448842846 588741858 565048348 577669772 355991325 893866004 776773343 827525786 631544272 904055058 83804463 771090746 158702264 453151345 157940451 441833964 382362685 771653573 433544449 487298107 242917504 959422951 653714965 820428734 269557338 703339246 431898807 917483738 501155375 739920756 718826389 858329694 92529703 955457662 740201059 916127055 358391304 869088011 701337655 772117269 569826471 876203348 17482805 976980207 212949137 772877875 464258330 962499026 602941860 830877381 446170650 802150180 121671355 805970888 558015557 738190477 26380714 788367455 285829652 793561276 45992078 201299417 33994025 73523150 72663719 280154274 192063931 571377357 344485718 765339725 523483802 711406419 585885456 669740530 110565399 720819882 102786013 644419655 512626555 567491664 349891132 380545236 170688470 940637072 136056897 412212063 353189007 984589074 916558142 972697423 558901408 800544383 359516181 919100779 790571001 796995046 472672358 533731968 80116810 549922720 169776216 699664352 676809156 849957985 207932766 685256409 310554409 677332387 130796807 786789279 277387277 666487622 80341510 221233445 37572756 233340368 96687420 982665388 275457917 482436134 418421916 934219092 636696685 776900649 194682630 570388582 457028269 541338113 407237144 844764074 719148120 975870102 124428938 439988847 259291894 917561702 312657451 993292248 84492731 304655954 5793446 795408438 776240991 876642095 159531909 594222223 67577102 677555371 283371475 449803034 170787451 266951971 33507661 345006699 263830085 703244988 283550920 295619414 231545351 585054666 90239919 570390409 221777181 716021922 23840827 995819658 23449487 344871795 340473031 606569835 527759683 813414410 689238775 906509642 323651741 684523679 193309379 888017652 562960331 570968194 48522100 603027203 526820005 654079093 169618620 670678264 574735162 809908200 321634795 990443433 677751395 740760271 545185889 694550033 577765447 748241696 278635186 312298724 302878974 741242872 444770509 869624427 386788855 480666528 99144099 943924076 493085192 650480221 366219059 695860440 476779544 761427614 441822610 719140475 375052930 855189522 10944434 753886585 469995599 868024601 853201567 898313470 668530566 829288200 115572343 135294726 128304899 243972362 131150875 348291227 240858491 495020166 273284866 625469969 116323253 328618107 109245083 982706352 773739271 840822975 189697820 615607611 215673941 931923207 424291735 598426673 350593339 723257688 264372749 522778021 251845378 408842409 301819562 515933011 60118486 142023848 29246169 253244111 231300992 381000055 141550421 592892955 105128618 511733521 121745601 464468713 352172779 473270272 58315693 981366504 197331959 491757402 409935637 559084298 274760327 333676961 300946040 511153588 333118056 937147788 332424654 817539317 764706645 952254237 659076466 849653581 433256816 795258174 37882408 864143512 735713048 967099105 855285242 967723005 769829054 941888668 823582277 860746185 768684363 989464312 212634833 601286365 348052441 407840979 97425635 956469521 642557103 859292072 773439394 789347302 160026943 731174698 464716422 749383234 515247903 710465714 177831465 275786237 261169492 606821547 167035749 631842032 400139502 988325047 338682387 787644411 254518709 807169611 228669356 684738240 580586477 941557613 538229082 761694637 466982421 823237938 701799906 910728941 81178090 864910123 525090512 831828013 533553902 593143854 6861711 502138601 320615106 545759852 100033564 671592188 32385444 165173646 156821889 272352722 192191371 299502196 279562155 406224269 156372812 189452904 107355294 560656634 418302248 793482857 321087712 989735090 733934809 924975106 912904569 992828820 506484327 724662301 51007488 411306557 222738269 349458582 74639930 857535923 404745408 709820304 330949643 400915917 369962129 983522141 85418993 371471951 121095423 381643447 158758950 896799901 587053155 907982605 784266993 899467354 811187096 916167669 89772878 787355104 677089934 782886993 348575972 584684831 246731858 647145184 241295904 673773994 280863549 365847432 70347770 802485964 590900969 735227955 405324487 406559748 216451463 705847785 666316146 744442922 301571375 728654105 78118736 457759594 66510183 678717160 56664639 404420704 393841757 994404387 135867970 979062185 581564139 991432307 21571352 588332850 226332659 894631535 662379047 735764233 469626899 865303786 143466271 555598668 367006176 783161585 341622980 632197267 174770890 819529388 72280642 658427324 79644883 550246901 188708466 193818544 99253162 186294288 12456904 712576603 430239391 764581630 482328750 806460380 778595507 986860115 692774022 917967590 769624113 967085813 269540080 536479700 122225603 350176584 233340372 960009093 507395191 551114632 386058915 958011061 450487947 727333846 678072377 728213481 45909931 518227836 497221112 604578105 37155612 721379470 470614744 697753790 294565850 801849035 45796702 415427319 197359016 352026225 207139997 703858377 464678070 952739068 615861348 961859243 2212462 277651052 254630247 866063930 484171949 696483617 562839097 811896252 167300078 233633020 115379070 932639043 544880189 964608402 779405815 802042315 72614225 550631225 104143630 870555802 729208716 870964954 516106788 678527486 669061746 875987849 266315597 284867243 74061489 720538355 366508199 902659982 358064831 457464727 328243287 340338059 1888533 63407858 12315335 902398226 422362781 523203520 371011743 729072522 609610229 771786323 211036518 516003794 365941292 686070991 425053824 656211270 609910801 701592129 142755681 645384725 327743658 924321193 78981113 338926274 237738829 377655264 367775136 593463166 583570728 893189980 148356606 572297931 560447372 889529278 451664506 750489361 627283381 771278216 485498418 904983936 391560912 478686639 436075273 902670400 387919613 525004532 397400928 851849160 822474004 969413931 537108606 941483258 834255184 971905143 338026664 892547568 99264762 762640439 632326134 995940631 434214953 638788418 121389393 706445845 333805687 393439754 87486714 814187751 483778572 959634491 726549843 772559453 734356721 854021463 767735775 913033453 618900598 787292101 475988814 935507931 772511109 972775353 644861881 799411262 401834823 645286605 548988533 766033193 172483193 252991776 90836577 153757050 62936336 158886022 122007941 505929553 352986976 368229354 327611353 959546570 409283973 435053688 325664240 381883112 348514527 920027062 7548019 222932382 139662595 556632678 230268212 882363458 743835905 822564112 141505999 301631535 284726792 968136107 698181909 803334467 778961107 898532123 346245915 716460422 618082618 804139978 101672154 209074301 135559908 922052188 510344746 527741715 388571605 941500395 540603660 871624340 737371377 988598950 211387608 638051263 267707972 630201825 193326736 497254419 372772303 574254405 206259155 877980852 745719624 787429703 610538199 781262761 127117237 593913635 381136971 483407386 52140139 600528041 327527960 826380374 577572935 697446010 93409829 979432698 313067545 497863668 56364112 960555186 330922204 427698590 163498039 929543007 893066442 957430070 185978029 228904908 212535113 520744376 15298106 297360983 178734449 632267679 293007893 699197508 17737538 717689562 151235870 482159403 446402295 740011873 293385621 861872813 363509925 706505839 524808387 775025148 437228304 779395833 659352158 663432383 558982636 624894748 243220626 989708328 763111548 861299558 427614268 725544446 493483713 746430889 676202292 699004603 422360020 936536936 862098432 943675262 798404873 957415674 143326688 166877598 79739443 860737243 523933792 635259905 608554352 654744574 448967600 526713857 408765895 573151149 355779825 813738705 680189831 929256741 5024963 149092375 89233163 907919844 69406417 301038330 112122635 420525367 17422698 347317640 65508357 272984031 11258769 984229128 181769861 799762391 798872446 871770022 543378418 598587366 348407471 713929173 231864760 864790977 411945264 789918979 446161457 489667816 133778398 695488340 554067235 973031183 470437879 637468970 136110773 809065709 477098471 729737200 95878943 837429885 399516778 827846877 328442083 452513431 315678848 984386022 288718463 640663549 59736120 509244810 263100776 745036369 129938708 769067666 227213656 341469531 207306989 625088364 363584178 750184581 471861523 842373405 695268523 931976028 151734407 354372102 300223502 407671258 21273136 495438771 120485108 611337931 196588033 431674765 131001398 229503127 64044377 185914337 94647474 957049065 565418535 587396787 3431420 335056758 301683235 965320007 746501206 936278738 562356040 643776892 612378225 923550786 226104550 467105252 243596852 866044442 356532236 894906872 251815652 385295124 344100160 872672747 107514435 511095000 74073004 304058659 220804952 873335414 60070219 934374975 747651607 960365563 781319733 830338096 470566706 590877261 249495716 554148810 256173040 700160249 147612844 766720354 263740500 641619948 19863613 146179203 28585524 388986101 240416473 499983254 307625297 887274414 734933681 999059101 315188236 660419661 376820370 727164873 530054087 631510209 480263702 948434105 62865738 303676687 77774330 967951127 212480983 507821824 88894045 190962062 141498132 616899288 195896705 351168630 261664343 486342818 169193521 364615025 189068886 987760340 568659018 718868812 585375046 795726140 563770021 805930092 65978254 373278233 98691635 474727422 114443861 463866279 119009423 672140718 539988053 802384440 676242967 678264007 248499422 855573695 229834114 840187246 468800954 500019710 355126820 739905168 111970831 604613559 492424494 627030348 222305246 384907051 226901117 859672352 638162824 683312770 417913327 959439710 603959932 984293502 564276051 993729736 667799202 843446936 202307984 401686216 54726584 602141938 508335982 892734954 385444726 774008216 552321607 641427635 400940313 465687361 363716392 685032054 680765979 765881343 598006803 793859399 605684461 845415017 134057879 430374555 429660518 588648242 409805880 917924098 601410899 903131760 514664568 801621321 373138747 953397611 439364584 480987546 138315444 831235808 349393688 654199998 283338693 995683173 558297664 650582662 405243477 611989020 138292235 929628298 379583375 411754745 133963265 812214467 541414082 795625104 765788011 798373952 448228277 580926888 322889463 998827680 814573147 869916926 682356614 878338177 365547306 973200939 461719529 785752972 371895229 773234372 549826490 759277779 316550833 543135187 25050879 106326199 7463305 738631082 448874570 570522160 172047909 692597205 378757500 782457518 118693662 380906544 311783269 735976942 229263660 513991149 347837833 929420142 150702381 723873171 79466469 245048484 119966809 157973852 106423208 883816164 740870514 936179923 42570752 363539376 88459142 193199698 91077756 730845676 679570625 756605888 262039686 383312080 157334583 264091153 189463463 581944139 231782404 783752172 358247609 965428571 568653994 865428592 69930487 937440813 917436614 977349436 120208901 407179361 122004896 452273216 342218308 501955975 72289443 352016664 113130473 990714325 488766980 556551127 376070887 632544574 327749490 476355926 408714361 962109737 804778513 965273621 781060595 793654249 649461323 702992895 632632956 668251329 523330733 704302779 519359901 870062401 502232480 667858898 175182028 209539541 96924065 683004033 602327747 993753148 872743303 934830108 893981780 984578168 906505659 921660243 474730220 572154124 462861876 584511676 81516919 284302999 245255709 515621874 323847077 731659751 514489658 623371486 604674636 651376304 109076367 957786802 624596660 812417303 400236310 554272670 442846118 578543470 92290413 333737246 209176363 942744144 184384043 522353786 252214696 357535672 335258034 447438343 124098951 977651715 145822409 452377034 328980863 719369891 462294812 565084340 71537414 588148937 110313926 354175961 298542667 659637138 217081150 867322970 165464789 502974404 193440938 447503232 103858678 864150794 612741529 844628612 12469383 21233290 1649538 395191899 322316150 934148314 586409704 984497758 696425062 893488087 550695081 567302495 403472196 593372991 304762980 608638561 115067754 280625420 107692089 728161937 327008559 547943090 456360581 809082367 136690592 795382540 729130764 752976853 580517956 787492370 679541770 737230407 470562512 823766552 200081907 962668402 708044822 940031668 777484571 848220364 293421718 328392892 154121172 901821617 401707858 652004756 381257978 492420577 350283652 898792278 728689448 784372777 306112385 388086498 380896343 599700841 581229304 813314560 397848317 652922184 512489589 837279435 374709667 622715490 601491864 711104425 560580121 571787331 412177497 818032498 561090588 795552242 76701687 862290119 820553121 831865046 471732409 792079886 595818762 859276622 200292229 853042986 215683465 745783217 631129528 821087956 520049527 782609518 643717536 840366613 459658808 973385677 715575181 855236907 332826393 897223964 751405717 829956812 191223528 735126851 407253479 964243561 333230557 819686854 45576432 66090326 34556492 428772677 305826110 605874853 9849259 913151537 384895601 709558966 246568005 778362633 261363070 686105758 21092401 738475684 591599612 705997933 299520591 648079665 598977130 832545670 169806078 253132785 191194989 422884987 139143052 462065538 259877173 907889195 569807761 711706527 18223022 394120278 144254082 284537920 113650792 123747886 112098735 719810635 679411694 895270232 252224136 411846179 258919213 975882059 136744444 489332466 370657471 397729475 62993434 430869141 124985368 597315614 13477929 813069171 91507018 487582190 409960507 806695094 579396507 734705003 339903694 917861576 421093090 781915596 610352990 806007562 220954656 803649727 726673399 850571841 518479444 863009729 14411800 884888607 805465451 899904039 841188068 924506150 848891973 874214002 137165819 722646141 162602689 501599864 47595620 502559348 158513950 250444751 195654079 685568798 334913132 460231328 236375169 314152144 33139745 749758359 139367697 496007926 315867480 978260973 380877858 895680279 266443625 284608176 42329134 270262014 13156790 15219538 8980255 906686003 70871835 776266779 255680986 260503954 226576458 765744080 24979194 785080931 23202413 790987297 720668409 854667563 147184947 491075650 439317193 527926999 399567800 519563858 451566025 654206343 321098484 799275838 776271828 781457960 504222339 905136928 72662832 706579067 313421875 641292298 513914101 638864587 346347557 578174408 390067350 921273535 724751911 778182076 512399986 524548895 407781934 491926698 97569726 603143871 484053482 555035254 326480192 465238149 319316214 792763364 271905198 794342575 228504325 824356598 494572524 639570805 474732817 476243172 433943986 660832946 111543521 519166416 182194791 748284743 121433570 464194334 125246121 718011286 29325528 329492204 16981880 932053604 364015633 365550680 163342461 196137919 109051277 989760595 91748373 430541321 306534222 509978431 27069989 971380462 970132894 970344198 688964151 852382733 25758496 599235036 262446332 407168495 17261645 472951791 117539212 214825608 174877912 323291611 23485573 359906579 267117787 408670913 343289278 649646441 267742640 900628504 361624155 572732987 244944455 729158249 220034108 681030903 140837061 316613246 225025780 433647185 401410148 614136196 386343941 847114176 63883279 610772130 235232467 379598391 256295157 624270819 65729473 494160562 389244492 729429369 354621933 918949512 614986054 961561267 311693339 379424833 378051842 582065778 569125468 599767419 328515905 550977813 441211498 584353201 29312390 752958840 248816390 891989133 26878314 741243548 114665192 761348864 268204579 946321733 800550639 931827626 519556627 638236219 426573741 799710298 667010651 813327068 561357071 968145144 685824554 999952593 539428712 803886281 677296027 810848909 516576033 633668921 531665831 930420503 870199821 927849925 666030515 934167664 41237652 693934374 317241605 405265256 351200058 598192286 46025635 795784258 10568475 833696263 774959506 794407133 505612574 572733142 72763753 181766691 141229882 705309841 604435478 703981815 372321058 892487963 268970280 422765801 350037214 746291885 619198021 759391737 738431166 948863542 168839218 407779466 296984855 440443519 355221613 763754877 495829071 919932050 293191944 360437418 293169442 728626360 238480709 910906254 874631035 940501129 608313821 757558566 195695771 340231388 335395784 882604445 321848003 466813947 107846153 555556810 6960241 709121725 533053576 821834168 630899078 676313900 624744485 958966776 256300247 705376738 23040882 959390533 628152116 996474500 191235424 264073042 16889040 749565934 365229459 503654042 35748707 169067588 105824678 203638102 7855497 269805879 34318521 596947197 81300433 512053627 353791962 726083194 646781055 723255993 60339498 402060602 316364259 506945769 244545808 684354485 287937774 481300032 138038816 960854392 353829722 779686543 61126350 994348398 321019382 566788194 403747248 752828299 413213977 756164466 163652228 629219471 197036237 966094663 20402218 118763350 55414829 794037658 331726914 990891856 368119468 662302895 273853891 720491533 688194485 762766909 237841184 525179267 93983368 953660962 548573549 600144130 326582430 845699920 573650115 675494172 346792916 775796151 382426852 866060473 361826557 898268110 720868629 995466214 473660649 731394931 326476492 771541014 49021483 79135230 70283705 517268681 30375285 174912170 100160932 735590906 257538056 942087692 531301946 643475862 364883461 412019632 290581861 401975969 292690482 942822712 493872076 714590032 282075818 319944645 211178991 627549975 402664522 966539877 625912006 758094084 334463812 849238367 136111832 400550028 156362314 622382034 361821658 479253142 214294118 216493010 72727838 461592165 263767199 985776326 704570843 811222845 271663456 363141322 188821156 559254344 251578154 357004026 339426034 700342075 462808622 915898920 512982706 992966209 125989608 146987019 14358057 925508820 212090591 841914735 423818929 583657547 126390622 347540114 308591147 682395309 675480740 848152194 214153145 234349248 180094309 429628907 166536639 193795801 75681719 142437760 118914724 220766985 166815352 290498176 224711886 358264955 126588109 324991821 7891088 716941552 35610424 69562764 43061929 800855403 198479550 271083078 171558072 745637267 248456648 357498069 39807725 585025191 422549399 762707938 435663133 508889606 412828004 922707042 152729239 284888856 51437470 208927382 31295791 444107985 340070720 706149277 467540669 660337191 534467925 536342834 169247471 454911604 358254152 767922033 212635410 675441058 658328284 994265707 226940803 342103638 209270997 561976234 327937897 423888545 26737946 66133477 56383940 301696252 216024896 564094083 87380657 999205050 984225778 995487931 566620017 955677207 174631219 648508239 12663161 936105443 475001750 594579471 405663081 490515761 234762650 247128478 200865851 671720396 406371359 823456404 577710355 644750916 411284931 907071012 828519778 969735108 285409569 318510100 123318739 847955393 698598217 720809302 87625043 144973282 58697740 655651421 595535351 780129315 383930676 870094652 588451164 979565759 924555213 965642668 789763611 866032567 596333553 681861314 303641585 545130055 216965742 455305581 231220208 931575648 322304199 365830368 138998949 248221931 24698919 597212754 439762764 999391886 618296127 754293687 139847102 281928222 24475319 622341863 141461205 368784654 198358440 503821849 157175297 464767370 461289440 613938510 34772951 485651678 398516752 756137549 274719273 951704288 280125782 339711145 82728779 317449488 301751813 933051906 319084748 523124980 376294905 970900116 47885541 674048390 378231750 959700245 604550999 763557494 158081725 858548157 711341388 915457496 445665018 599677140 516820789 736156895 492645816 493477983 184827488 883899016 82604215 154714556 7173766 97995709 28306299 946934579 426260058 913041772 776310540 945913629 394632796 792761930 339356917 532821625 241583324 593406579 55262358 645668862 173618157 792734518 454607328 794292753 182647235 353825914 92079596 543888929 456809863 992794411 382493758 446753334 341739539 667383440 242319749 425571056 413096245 899425407 865065500 881955165 563056389 666304457 435248102 496027835 355158348 442636978 322308604 814588891 488501749 536570107 45235649 145409222 143367530 635254558 166494941 856218720 418999746 795403006 170869152 813716420 684339677 685747034 494605068 561456439 302735048 515977036 266912241 291638432 169095832 950615505 881070674 904678858 424082109 790211052 997667 760912397 310601293 974532385 246866560 413760490 292017357 534960502 403387901 663865505 136039343 328307586 83475309 767159321 194655034 252710692 2911383 787945208 312684423 927098261 397211580 755314529 612613268 950212534 889515342 913076123 712492771 874528599 631733235 664344849 350657566 941062309 659430276 904702788 567379629 783860611 71671230 223999589 89209556 597879940 188520886 890148589 417118682 451439551 262236928 805110030 384641676 855758942 767824337 865265044 153425415 523652955 417625424 630076084 17853011 973578460 466495079 620322123 296106328 510041339 170494036 689389962 166660807 257027818 152199267 970983118 625329825 989296375 487247552 845898773 445405258 448266153 49368517 56271094 28073255 529421572 456789391 896953186 227517002 545822436 137326066 856107645 521310590 736572716 629463092 725745728 27024713 72732479 14437370 435916781 115546948 561222544 133222176 647814759 475824910 570850130 50591182 480014052 324121753 803816177 647502280 753592745 37378555 782055207 227333832 348000386 47751301 527759729 337381721 843649911 495354525 893818029 391724444 970486462 475178894 917457322 353095386 451434607 50794798 382969226 348831113 394360245 199537222 884799194 132304769 139064580 18654697 138530919 109144490 676540378 465992321 503690749 451661332 932293504 845949415 959273172 9637501 437304788 344296194 919324168 889384995 898443077 673007534 826566113 213033907 616730806 9215155 859188622 330965413 933939304 483166646 952170068 572866135 979388704 690341510 696595576 458481068 555625763 227632895 237561393 87600150 858366029 488704300 724519482 599888324 935364981 901274149 955432586 438847605 934091427 169930653 430897715 22805437 166330304 133857844 277201774 275381872 761722202 350918787 483993328 390937732 834638941 321730846 637933794 114035134 736250641 668429369 877728778 95049364 677051021 411068114 872030463 749231262 997053345 471738032 709204946 262160691 891522612 753318580 820662747 611869408 994102678 647176842 695922467 128838211 131574810 64847173 783050201 695509229 767599523 278144459 640422278 212424869 360163596 164446058 789133608 87229066 847707094 744296934 977874690 639209240 835042718 734574693 877630474 282993677 357404022 173711545 606953566 139447275 698581850 279271841 779563478 753529176 858134402 461784181 531497303 493409283 536289967 16906253 478669158 160561806 971772760 650747840 938788985 476473079 986525281 407244841 748751866 431872939 899316327 162376929 702670525 31281658 306545502 38046898 297577984 247257116 784445855 569137974 896774165 6680150 530274949 5122727 266037304 9386748 581195334 578260134 864170876 779699027 894551947 74791213 780146655 97030217 396935592 187580539 423400488 383434535 775730777 226750973 933380173 32336176 726528265 285527699 335423958 48260286 468425262 13893974 893508144 252084978 310970378 163547965 825304203 438780346 964989448 80338109 354439919 218846521 757952851 580041704 689906878 402243892 677156842 492458361 668008303 197358776 415485838 228712161 390720537 190404786 351933006 177715216 235852763 177078269 975116008 168424008 985813109 4058456 965010714 198020558 931437982 72534164 735359790 728817397 921403683 534586125 653627078 310866395 504267962 165069340 750044133 152042912 265910683 62370404 501229042 375337806 685676073 492397245 916058657 739355590 954882683 675087782 895734908 709770237 961690052 223570272 461899227 191475376 869996839 386788249 850700793 809176803 863407653 268387268 512456257 228664123 930884831 433241971 833289008 447535458 724211318 294797573 646763561 486822737 736384629 404955723 617723069 405592827 557381860 207239801 516542469 97466544 150176092 140650176 745976718 358623553 720924302 425934215 730645200 284253454 471590884 348561204 767136383 367309102 685043107 272101290 362751892 291989095 885825292 778759585 956228266 118103008 355242765 83040573 664757515 474104064 713726672 270544828 945284669 813142544 961316889 668467169 820231278 278414887 450861876 198460218 537715439 106073644 774400961 645104923 984186642 612150213 759385459 20658706 118451128 33272855 825930444 158970442 912655892 355827949 911852128 350939638 913399260 265409356 601077852 7627112 414927987 95802379 279900278 96188227 455331061 290896682 954647443 366209892 568835509 285871503 918131324 207883415 849618727 512894584 725320554 560489092 765779024 262200848 891546294 782497482 849164556 490479600 530137441 170904617 254044232 252221894 895403832 763504994 785353102 400468915 418016833 372443314 504089988 354433470 953724780 742828507 853322191 82507639 867709545 319030267 558898731 521220745 835445770 753233482 879029481 338270591 495271528 469551125 704107852 96594884 518618966 413533841 687843711 658837083 995472793 973086850 982503749 200074238 243000352 224873876 318716456 218108521 679649843 281657046 900563892 435566264 832294464 22493124 972571906 729462285 836666004 833540303 937501505 123874586 964213220 10501829 976925387 854269868 968699875 496667278 825953351 77402927 99630541 69828780 533515742 144969274 355476285 226501792 237396918 48059316 437281457 376420890 876309636 856540080 983201254 845852811 878707561 492009153 631484983 339679781 959366473 791660651 865052357 398039746 501894209 262596419 652205574 510767870 563638505 244176153 300183058 168873542 827960301 757147814 820508798 559423968 664968266 656119143 968840736 551759530 641806967 620372032 973766969 266261020 332565794 2496109 138003724 135314232 581990549 296551356 317903773 242639158 346098482 223467381 618525436 382127948 956909297 282618786 912525241 568481416 875466397 764924290 795563362 245784092 392767039 213877150 972680768 561956367 644657722 464893400 650738691 138463256 695538482 401847435 446749858 63072195 876479678 334369247 825317105 76751357 269533710 124086851 499180780 362351550 540584964 30697834 643280228 142623561 605757508 226232973 953230876 594378614 855487580 169744037 984343227 967228415 995201856 947047127 973195671 472226291 605790763 102408921 164999663 107456763 854140700 338707402 641238454 605316931 903588558 370665387 971250283 751430864 831792734 678743245 865812305 532294286 980896834 801136076 969295799 804906488 858785677 187051115 480658762 44632176 168485252 79404813 998019690 923116356 986766985 76316568 669871741 11275457 514886975 105465848 932451858 849020880 881233601 778387191 799850384 199882895 514419642 422295457 790302442 361456414 810597560 736615094 760958194 442929247 909989352 401319702 817668439 322199811 835112247 727070645 912850057 652698176 743376420 625423312 739706847 168067098 548759821 141741776 211651669 18414572 33653897 9608591 806411331 466198944 622273368 35615892 700214857 165271682 529309224 36609960 405030492 396640793 895915611 786986089 868103822 753960726 783105494 668580824 862796095 855277061 913229865 348617249 422154576 112563124 858834452 753557722 891559451 305644657 440144731 69311366 198229412 15345826 568871490 465019675 471536055 408299708 625623634 315224340 370428943 239545540 329967336 255892806 495027442 199640784 971472791 600563001 684749949 463669372 848341496 450255928 714887159 691487349 862057321 302088802 685139057 16002040 189057520 156512251 773880767 768865256 864834922 814550311 999495703 421270666 655972837 634963052 736363476 591133589 875007410 856308608 925668960 488151458 634946612 595015261 824974014 335944536 771119846 429514802 503832101 114481252 150896592 101500062 507392039 230759764 880120026 234537065 343936632 244038209 425644372 177757996 373930429 83585348 939270163 153491325 376248087 145047870 182291440 22442410 140013888 59993762 368931239 97236865 316925557 296223610 997734390 981456387 990457695 338906099 340158948 219631435 246223119 57062367 89716783 81607603 927590450 686348631 743149354 315596072 639848761 470004958 788949286 136346047 682704876 23209067 856768886 802561742 843842357 588686336 883859741 695606705 810752973 254198219 882354585 98044636 228399067 171691938 679809713 67997032 109991011 29289580 471466529 14187835 581827840 339325976 356915366 142676779 182791293 122815539 336875436 174464666 399753866 369200228 504493990 499000019 535789930 294063942 386046423 361664894 733220197 536707296 828527862 319821681 649980704 514247882 770811932 440291590 525760567 118167909 934719538 637861358 762199302 405730743 601408418 128261500 848359429 264670760 399129365 265468476 665816544 463999148 650525780 323576910 453766117 291864829 716565863 335428771 402302758 325595672 595500678 169870552 598347581 176227752 436185406 273887683 379251534 129924852 256024920 107314696 370144954 324069414 551933423 237228374 560047665 433837521 484369828 431414212 922822067 149793193 733120410 249161031 570151005 471506935 780095015 45643029 924328902 165334391 452691867 250252268 296928830 19793241 273231018 172850259 937704987 24494272 272502957 81722521 281328594 50025553 445310700 22800326 164729092 99500434 802442023 326781534 893140563 576176723 628930894 136975449 667148747 3379205 436988101 407753857 884529077 17821041 231601344 193735845 615346194 387835052 560152228 373472927 877539611 740531488 881174560 53245839 802467118 694587929 810723237 710545500 808853941 769179030 974321104 210950721 990745347 527155221 695949060 215024697 314380956 280711318 750946657 252471920 898901185 642463859 650157260 525585000 993932898 544919139 723837635 18235970 404406168 69736174 256864812 227255820 805076912 629975288 632128230 273196930 966856386 689892277 947641500 782508622 891818699 750584978 917135585 46780988 830749828 364698189 610912616 451265957 761730065 750229113 986266919 530409809 978403561 84692912 763260631 740290862 964125020 340411846 771001302 193777376 671162917 342715342 393965098 239351802 561503888 328366029 396365328 133648456 831992124 28457647 765651592 299020211 718468131 228505982 701136625 142988810 697810044 690061070 865661168 744813004 837677473 342392638 956775000 348713941 940378769 1117945 514595571 192983612 335744830 186160896 349176394 96905516 919161788 717810322 743045820 682098589 949446675 902642309 925145161 502118490 984327426 949983843 966509707 668009137 929938519 536790509 932790413 877866096 895145768 592111590 843323394 566982488 839518237 500017386 992367313 113780389 838661322 394129046 665902032 92416627 507452088 377493933 955587613 747462031 965715818 646280709 852954758 8041615 146451067 119911807 682807444 482742719 719857437 44171271 517039182 276051698 648704346 496682213 611054742 456743260 987980507 783143532 977618382 929971704 990909358 455497254 460634803 391126966 953821765 942051212 974368012 783817513 913615851 593559379 702406547 249459645 717658431 350984298 978854419 905980141 942328814 831972483 964378976 667893677 774658078 81896665 934612436 622732657 806076252 153596924 329766674 173877695 842154361 489581304 522090779 450972322 989389627 470145662 946542470 830405314 884924302 651840048 976786366 583724168 631805174 35908203 401546253 371115296 812733811 571394633 766593007 391571768 884901463 150420329 887109936 211391363 858600084 7601210 752681736 749839991 902793791 180670103 870118124 109024700 203955002 135607040 911049759 398657095 482302913 349636977 398414770 208292321 850957702 530784201 561138121 277514482 680170141 477420996 525633797 174006040 218646294 212289179 964886028 250356208 780229108 726083306 863931505 215091416 217294720 183025133 650710797 51934592 54021909 53278630 297695600 198131719 258714874 70802149 309880908 49429017 821889189 516024234 874088793 149806876 612972814 606375033 699187621 151945796 397636925 159765315 161325024 89583421 312128646 182895162 593250381 140106770 414776759 324530844 502223386 60170926 569814658 301701669 362499599 221618060 383694137 46728286 101125011 68404959 943130161 923806676 976886659 209776859 694294313 3487456 936599047 170075987 312456530 268848121 749639818 159471632 448605793 76562209 618891432 204175441 362407149 48837545 463430319 343864353 420468468 180174016 524655636 95968520 208916072 202343919 261376396 41511824 406758838 200024562 919532644 371968269 803642362 27266263 873018315 519549734 716113653 709468884 738235651 538451283 957145497 896072563 988537972 953923608 973393422 333605802 753634802 550331627 727009654 595771619 681376439 106431795 265505998 62738513 429562461 242717844 978761309 355830337 874732103 534805929 901515554 847236074 880802822 683016381 776278387 648467496 786047731 267686276 315902894 103631166 263707370 53835707 608879786 365065582 751110358 90674556 275866110 102999451 384935212 251060649 868547729 800361976 956248148 25185151 806836055 198094778 340262825 98933902 241110437 116816061 625717402 36661907 62037620 32217767 426964089 372343545 855923223 121421495 881124668 341678074 588698213 584604769 827270394 625121183 763086168 121779923 515010187 488205025 919577240 184064421 518094180 166426955 763616263 731454479 745376860 55932678 534258933 102796521 277110231 140380480 143841086 108023856 689187037 368058539 392438075 211918519 417259283 56196809 788166329 162123372 853165442 474842495 881439145 448440430 873802979 499641061 676332427 612356520 838830761 789832737 875797882 272525714 755599680 202269405 598790520 529780041 706208549 696411722 779768756 149259699 348636175 168425159 643277522 360042092 466726186 89420011 712806378 75594794 236490802 46258227 985676937 797598394 926435482 480895942 779110681 355184984 995411972 322770942 398313082 360254479 812348548 452373740 655172745 188231951 477696672 53075091 126382137 76032930 741726326 48331990 753980383 376554357 387045701 113114659 935985710 115814170 549742133 503771612 516073124 233133007 681426945 509332934 789881280 635418491 951854751 606139252 931118256 377890641 739637894 473857650 526485515 130375337 545179712 10180062 556559324 492187897 512672228 200634760 881934681 747520736 796996650 488188742 538067578 148910672 859535271 54573290 563071799 112403454 607274804 204572892 884725934 91335242 95023718 38599898 700212167 443500398 681782454 665064011 880547977 239319091 427577936 168031156 854106979 72829256 984934646 324639707 577384468 454450522 507800677 304225126 349197384 22158157 48862091 37967972 608540799 126731179 668957601 10105774 896586764 713587350 734137934 108287048 323184479 189721986 876241717 756841590 791431647 772724747 853562926 344374778 838212501 821154304 879018604 797262265 887130511 861674133 893234097 615258154 855553542 837873078 868528625 606931950 710219981 106122272 594641180 53082711 863895693 791102 812134368 217076183 612149997 114802528 928357160 23794519 453714054 424895532 819145856 681665750 997008869 691094193 953272593 872214114 990525219 610696968 619149544 212224413 351522019 17446268 202990230 196632502 648439163 378364971 699647703 637770663 979079206 533698590 825088991 181673927 333582942 59905403 261072658 108404491 567631925 257305580 387543674 379586110 809683354 201169425 556927428 238694825 747485406 493561007 871234450 779229267 785260427 729122561 951852909 478656588 922069662 196041200 450659335 47814864 649255978 35512413 646544842 345409329 568357449 461243806 987306948 502925264 618191864 405069278 719178064 555771240 846741099 15397482 843181999 650147816 915671804 34058737 673497657 416802504 746842682 408200797 745135792 621185841 914807784 165693788 573060055 209693100 649338223 329925354 777304258 70885318 596476736 333345559 335138918 32630277 323169682 241565413 747354253 103946590 306074278 135498709 676391131 458717774 706000801 483263893 905764946 258798324 285598492 184691568 818580941 277924753 663591628 465394248 861326210 220027249 935820662 862768642 939501626 131235240 226902809 76221272 499353888 72162839 883462056 385389172 931272693 87104284 197890722 11277428 708664015 175845026 301116828 7724399 320401387 135958512 161295228 134886790 316343287 273468179 911577740 612850468 801859956 763459087 834233385 453590266 908046353 251048041 635786700 10384562 89648714 20813479 697538633 480082164 993731293 617594380 660202657 222254420 687888987 476299270 903531899 123537334 198454922 116291771 734181574 667618094 794155575 344882847 879281576 249656358 808427926 617978557 684071518 539268061 874333069 845056031 875160933 671928121 844339567 439148641 622337837 249986359 920319040 559748575 949916218 365589315 917534231 137539339 783556634 379420705 962058489 708702702 876090920 544339199 941509417 279519044 800253254 128477863 679141573 437716514 470312109 419917779 556947925 313453940 444480786 151511822 354408518 161147744 876455627 553237159 999307974 72100698 723653516 64683096 888415935 385108668 600170970 418512306 947074825 323607988 609313753 155942057 516444085 380254767 713098732 217979802 812441060 778122124 894990821 844690902 857721249 590411135 769165935 498451043 540861229 298363745 916621599 858474270 938064234 399048452 736874799 207631711 613768934 545948355 733698245 543519306 695254226 622916114 997752670 778808273 870377718 615971538 936594056 312365070 842764782 363336198 790700835 81291519 633486699 66473508 795384653 691025335 977575769 721336284 999785974 919815483 929874062 225376848 696998557 506618279 766012188 486645426 536897133 272102918 730259755 576046061 900236554 674444466 952140224 619690294 750549386 556036505 858802375 18975473 319846110 244834511 789765491 555501264 572153346 375511196 700079773 179810675 548337586 37587487 120054269 111823986 654455650 274427118 734065978 216414472 894161989 154654709 579036099 195402854 535496045 276041520 939618673 542769382 835707886 176803286 555266733 303096897 510951964 44949488 892686242 551920947 811487376 195379997 214263049 49800900 877934401 367995357 654203129 324314899 542707654 493540538 837710455 403601206 635425669 585536363 696562929 529427959 954645308 575765958 622247533 153096394 341088610 257191879 959358410 849326589 985213376 275856668 661548001 17988427 523319376 88491795 953278671 652189556 956838583 248226817 878877609 698824973 790686952 372164505 952744734 908227235 941505052 564876325 688271581 373408744 814894186 199083131 620310611 212030290 912352688 759365191 948425168 610119877 954691403 945983343 979204310 683289121 794966628 179827840 416222210 33395752 601521736 265900303 310275514 127626087 848899505 103083005 207837156 138685653 674896866 320320207 844708208 309725704 314315198 35449338 803791184 450446217 941089871 64478771 953590393 429923747 972393658 723509691 827014463 645042749 909412622 896314530 972064872 155199671 689664554 245926598 600435570 493481672 761236871 244759621 948561840 344089097 624989777 486057069 564061530 423510122 537067375 94339144 392852810 180426675 924555429 267993025 767974553 686133375 923384073 345243680 665650630 272786797 557125115 379152130 967318099 665790057 813469273 671463990 894892797 277683274 794754035 123633470 341059192 310761316 780333292 232120655 755772271 123393902 536736712 482927415 497547321 311891417 992043419 135308065 655936671 425957660 612395031 116531687 250434321 30728703 846328328 49840257 268312968 66269142 905886069 905007124 988283769 689643524 699605440 364613224 859307346 758486330 832535740 395446658 685411671 561021059 956902845 551480889 690996328 550808574 840312965 41346059 313938225 113029983 579030480 247779504 419888814 376874942 968158356 706999374 792939864 266089607 833467638 546917481 791330460 196544471 875425161 617815719 990360009 910618448 944434632 114302168 579496227 355767817 994287844 370993632 500828046 359075255 936956857 206559053 821029036 70020142 214773217 44531419 996314041 715159050 871649061 200904431 358766966 134790732 655667244 39524356 610238612 48599313 892122425 51989104 128002970 104809527 821445361 261627070 848479663 267052549 738286518 597729200 994408536 226370209 908247707 191920983 671013762 83288915 857483880 774214296 826490604 471508178 831805045 19734960 43835145 30614524 438179078 178409542 997945469 113791569 533446817 360727435 888929719 8033899 205249320 115647484 615760712 437890319 825780103 550398427 692035667 24684488 680115129 589301457 719515919 47866002 989619995 930617211 962947682 281145673 910320130 732453522 769134537 378264120 716542132 461870251 795762670 644472570 765438808 436109709 870672297 252716210 285019584 218456383 298246714 14808358 681378272 397480471 534050682 366474820 792880467 670817279 723959863 530077229 837918923 815964626 860166656 561046394 649150676 108016499 503579489 74344058 391058132 245912664 334402581 276681744 779702787 567082374 711377539 329874638 741290629 446295591 832793592 720383810 905928416 425831677 527702887 425089009 426157445 346894573 869892740 484500773 887189069 850763016 858207185 287766623 493445566 139021673 554654109 357904554 844841179 667975657 756846607 251230129 311259007 134216868 582514946 244549612 288448040 115578547 127790515 101881467 914246903 804257045 825069280 499267668 746090706 543119857 999340619 15287004 870427667 10955897 955809975 697675429 932459505 814124921 963663528 733190994 829932855 465019865 829604028 339367315 449742715 32029373 952939239 423127554 661570554 615905497 777690749 708128925 931889416 677644319 731592745 73719357 423346387 362508800 945705217 551721018 824741545 203875113 545578438 259417244 604822672 6267166 734289548 596303852 763409107 386782416 850082574 369148950 439127518 249760545 641869064 130037302 751432910 229082061 662994515 177268199 935154467 495286521 673663874 49893710 73191568 9190367 858049165 340440123 460139473 112407408 628508171 285357558 726740949 290166700 972091467 131604453 862249981 279802956 728163151 116559234 601162578 315606993 997624484 255210911 620799996 465643098 934876750 879848773 990986213 51637340 972032637 884325175 937375686 634409478 927161735 473987077 769818727 204610176 287765870 132028763 476649946 323239823 619267496 237067345 635839604 411594574 714684101 49982912 71131470 13243083 287391604 192868086 280585049 204841221 970805970 386506631 451974016 371140757 808139519 156806252 493016825 377502583 758961297 506471461 513399022 438966908 752104002 686125208 851333473 415681669 864656923 506475999 542831806 153178631 310544582 130472582 626866458 327246597 852403553 330369586 744061229 557076336 657932525 388429332 701938867 172708896 642016376 548213263 845580453 157588982 392380070 375400575 868082982 518394008 621619139 25081459 153993228 98018654 379402250 36102156 817749877 621309153 890218023 741650094 813430800 554784009 755730091 250046094 663454541 115790941 374134231 261356991 269445770 191897048 299455738 15709391 380301336 34959729 560216395 558329674 665008539 33768352 79951700 16258659 568086466 145004266 875887728 715233227 840469701 318272286 515278754 95007033 945932650 644643367 649068662 497724480 663460391 662050779 756719255 564440002 875959848 525516982 760971887 290611994 854600246 347826723 615952831 15082629 902510747 783909179 847230619 519350635 905915264 769267854 827111260 613570573 775556770 257978450 958132323 700560813 707484195 248356202 658317569 282597354 934337332 255190055 353715132 203100864 983837327 81357513 278185377 241572227 541955871 533454040 574515179 468099192 558885987 549855835 685098617 293369717 610431747 31527958 571708831 249376699 486413033 332495924 737607265 430552861 655581147 498714228 989784329 118887129 271026854 220861012 255208810 92285299 218148767 204082556 905137220 729023432 865138050 675863447 987108398 423918220 580192660 513663428 959994902 1255076 693853384 234507741 398643709 378416178 553073668 52325216 862935865 349018758 749797261 98162315 827831931 75241445 661283785 358076995 386446758 13645086 603498044 78703219 193062734 168224052 925082181 438876203 728417687 488016111 533293378 251319533 945624830 499494523 866249744 690586719 966296149 277294207 792852861 343567315 919582742 821323089 999806411 539237486 889290973 505256857 779749056 681981009 689037740 632557476 650708057 535624310 621183468 394713397 609421375 411462482 594315468 542501837 781001508 149925242 656999235 3194167 748311546 235115803 790693763 395983272 481334957 304921190 996936031 410815503 947606549 277955465 309421748 205743803 918933889 250733941 455228623 215605070 702344623 646699951 654610736 97002414 719408773 580583687 729829625 16457109 806952242 780708598 933861501 240325428 421859848 273480096 768942067 548277533 903051106 116219281 928708798 613156045 757125151 90469477 632412921 322698915 520905028 45468631 660245738 161933335 672372335 79479950 838993387 654607500 679838425 284485928 827061824 553565292 627161018 285884198 333031049 150467134 912398908 725601769 756612296 563975965 584621187 67933700 680879484 674310901 866723994 826872330 986585916 73532080 633016529 498320555 869283489 860313641 908946064 560976466 932909392 333515977 513430296 338331594 547565760 450205174 712569623 92983147 135773397 82885286 765307674 432958024 948258363 387066337 470550509 122672997 302061392 190588006 443598295 325437655 727368039 268364661 334537040 252891041 792777085 101953129 781037110 608405999 934722198 838151688 918580562 545167932 643664922 130233020 590397503 177555801 256037232 57542400 569758072 260048134 893299102 856442075 881881352 871715309 992583102 328530043 453982237 97453799 160687912 149405882 983002536 208857758 411282546 41739544 905218732 513005539 861456905 178762712 634022870 318090472 701157710 649906282 726920030 467181204 608177644 315371526 431992501 64297609 835557494 437766829 941954313 927019424 991450409 569815552 850374628 689262703 892785410 819776215 935888160 565768840 843060047 822794872 980050880 373309380 390727864 201122791 381617733 356324958 834587880 431713933 984843295 466289429 589942946 479383570 867157828 32564899 926383124 370850891 923371465 34285827 842025189 94907902 481824443 252879831 480236723 211619096 926745186 341803467 766482678 88232163 331774592 16016361 613795634 332567607 542118791 315968997 534550674 488686034 660482012 447800323 670588815 309401325 427354277 134586844 153400418 138366772 555312621 283482872 331905902 211515350 652030017 367187031 463820545 88229585 109993854 104217630 167071838 95047771 135050975 40330694 958233934 28548867 942542281 462663144 627477922 471628908 568910963 40273548 819616619 781320438 953860691 690033614 774331952 291008976 656174373 199936935 461204069 423410308 642266395 604180374 697923370 388028670 412644269 90212462 175222946 67235927 209603103 206475162 564975936 108152474 384107553 109976146 840254915 134953651 662433016 406282469 816463155 18124832 631232649 339757439 679547585 568091815 787638148 67914431 876315589 96546742 515396055 244901845 338918938 193563655 575706262 382391204 634070398 291162010 597104894 443622445 737337040 369249246 734823972 502517666 686925618 91039640 161685159 82719156 804073084 217175793 365044999 32990734 600689643 338977906 779966733 270954119 456220135 67385724 420003429 294847290 520049651 192455 286873564 98596242 252209320 203411769 971254884 310429460 593044406 517000288 567566075 498545165 656851653 319644374 487904598 484117632 815337517 492833808 493291283 98030361 172361026 1039302 852262890 116526601 915863225 388225875 732140877 56711944 142386507 62460294 147965343 21921373 148815418 67123279 556938391 532088854 970599167 484708403 756378505 715789454 783252667 752336642 979256033 359401090 530637986 325679525 426569912 400388498 443922862 114368743 715873717 315594549 895588808 266071793 679562620 307944679 844076669 170935319 387050825 269399553 421114949 34251691 460702766 365661662 456602975 171069765 324232194 304163982 743778426 417499914 532503474 368309962 509042108 4585777 894982194 204677616 960468519 44291707 610942404 511139692 863181840 296809525 964897797 905861650 942157982 402547893 420995996 83093958 95604532 83117249 681232936 11795431 355778715 159626124 310446044 283855929 430582103 331276077 529297158 331826614 674614189 493365076 747352432 88061281 905720695 678418308 734085871 535910013 666813938 630744693 976857401 696039074 808759706 582585470 832199286 338207541 990913367 752865124 926151818 56303793 441067393 107814318 829694674 476566672 679198037 614306355 828825867 544091716 811969316 480790685 781556166 82803160 624329975 236277015 458298013 257947969 330219399 291947540 316200044 67525608 427414425 141484326 472330380 297581104 962765903 450657950 688732748 285932586 676568881 632884641 776208027 360611972 622532705 107055360 671777623 512896857 784438971 559355117 930774964 99237829 902177520 160668839 852528452 421649574 455859020 103209458 957235020 168810554 691820327 108717630 366360843 150363144 150554181 125183925 162613314 86034137 453623274 236537334 408279436 296173804 877967585 749631319 866297581 144679083 630526715 613763781 705649980 303320876 447527155 398067153 847168261 7847799 681934578 262150333 329860853 100357572 535234025 131805235 349860552 32534911 622923076 17344286 216142384 17520371 140104928 109864302 519103020 271547768 810278379 780240735 791145269 576587172 882162850 165914820 386817233 296333438 487794726 137850678 612519703 380951452 727794197 431962399 603379149 407156498 902970201 771327849 804912254 484671535 780684966 461186736 618352036 21525667 964102227 475208107 720571189 325837758 335622779 278265501 418730057 73336517 718263302 321347829 463978315 129044366 343632901 72324855 675256961 572438022 839099860 309177280 892306587 151225874 438064712 106164193 570154623 216344274 314257968 179109654 815408758 254869465 534855508 269475768 480361168 41241681 524942590 288795380 591005520 561284686 867199815 360827146 558873809 169037780 180322866 22828911 133255347 121513005 671745764 105109895 857858511 208801251 496839279 274735286 947895858 914859563 957782167 27111798 848539023 479418236 801478489 579249757 967674713 223116506 245317582 73095288 216831482 161786215 767491958 391826238 518097603 224465804 340708916 174104016 795984975 154577927 944360131 238792506 630235634 164494301 627223828 567031065 656068373 275760279 844005516 375266529 938757714 373982533 530484669 265104112 359159469 298664304 343938237 222185069 534940307 444128748 589975878 342506957 883170062 614034930 885775477 185764072 789603034 693376983 883248312 658174188 720819216 267202116 591123039 387930459 788321690 340227250 811014166 314298566 582329937 137330479 418089318 109934232 294419606 5420784 501841897 70456316 100016574 78746757 395943906 48647813 617415715 269764369 932259055 536754938 918520791 900793456 979411425 889812817 941142500 787209025 999248963 52221564 202674847 181678608 505786307 223367340 646423512 119877923 546804729 334776549 838434084 378713656 831649480 635797313 917205322 893699165 957508168 586193751 871171128 383723425 956155580 96213674 572538396 536980913 910720167 266056148 395275542 115855597 195611040 136807795 453341477 70272933 121120507 42010127 822182309 566040969 943879480 379430491 513312611 390502082 685093720 348708847 903851368 469009158 635464314 178251830 424057798 397653133 928258849 332613629 636162322 170811968 339178927 175287918 945288005 230616840 444990892 243995336 745469261 114282713 786853465 740799176 747458118 527856101 809068603 787544795 921597019 558495897 675120136 127779974 912835403 125816714 532068274 394495524 417240280 295030624 659136551 547929614 674600362 358169079 375905960 82344867 287209793 82744955 312550439 155790466 634295991 92389546 145639474 97184205 929340056 571210119 896228321 878151279 912465778 341433442 672261651 284592813 421245797 177861149 253648690 132625146 809538803 398741054 711657744 4693569 729131974 584154576 778069115 21530133 499107800 200292876 966453430 52011841 960219857 209031804 690725915 538885144 867636155 229185223 491747383 417626212 594444687 207748665 901036022 298366459 706089393 687385735 746358303 352315182 418186306 279606084 704150244 206060264 578838089 350462018 726295501 468964741 633547060 450249733 839293993 117270072 330246013 317051755 821935260 313017876 543386711 392679085 536182565 496593208 918950466 832567986 931539682 214160810 686518146 54969380 728599520 363264822 859955327 597973651 619158363 150192142 835499423 684975771 954614093 622067066 819297754 352102897 820625231 67563230 630468867 65955931 502228828 342968867 762731103 628488805 676605537 408252514 691040367 259240845 840990197 380824774 682122479 129856062 285339184 268138656 594751385 246472355 936527985 307528413 865232367 137886210 243039354 52474664 945764975 918541679 979805976 555367230 648889359 288156857 918794439 785984082 955742117 594609336 813009057 403767632 405513699 200995414 961476565 917801695 920754212 587349682 782378542 267003823 588584780 181109707 851928986 755761716 758512240 8968610 424580448 20193652 843455364 316336488 550441170 482481489 654900075 336484120 674610832 192597390 316860607 191071703 678026833 476942941 870706386 148781641 150415525 114219686 268795343 142114800 934825136 571768656 737943503 440700172 588064317 199409750 728126907 402527166 408033282 330135924 713356247 518769046 707344240 17122551 520073957 135085820 527674703 420216684 727069602 274749778 854615755 64538133 663237786 553541422 894952311 352248179 961111498 69778299 847482732 480149021 752634843 60363644 992728761 742247336 894847635 168519016 964836216 578351250 865082060 142937315 678707328 331496812 674147206 294259231 831686685 32518165 475603778 253049727 959467300 816719937 885887720 884736839 891513685 246468480 767266678 430792011 840703775 654520174 761213483 295658965 916816009 136884824 757514669 726277897 802349834 353906028 410337062 310322638 963336855 651921502 699691313 366793 16002023 13351007 105129472 33957942 107350102 34705630 527045624 456889041 521469911 362558965 497017580 136954918 994512035 288160639 527182562 73729560 819644644 729988142 926884622 380441436 552238951 24116074 516777905 434439450 825362133 567361550 611753350 425327543 736597737 385108174 751319551 654085623 788044504 205485748 471762832 446552198 806462121 144318559 271358557 30286311 155703126 9207843 925245889 721723868 942464855 37037914 934132726 253063779 865447148 863711664 912489410 872271850 926125914 242258032 511633777 94817014 274686188 123807909 375799695 215027672 924545443 687180271 747360857 709683280 895990072 758182139 831833883 72357967 188674269 124206371 568783251 402517740 855914238 659763451 905529004 358351267 531723726 93135085 769246638 149511310 375475905 199463999 284870525 137556913 199585417 65653067 768719554 511841657 989229091 632537387 772019048 534507012 856328496 250651000 652799568 38321370 337011326 251664556 799218221 4569120 644286141 120904879 621150985 439951388 802842039 80944858 229220993 140388165 820952491 270101509 999201578 283297601 446276916 75579439 836103834 689075488 902967619 764210312 868293374 746311056 901156356 482031744 846618592 651498684 932496047 728379359 919857530 426711027 683264094 375869281 739478093 478344279 954589382 226719480 516439833 367640605 973825757 181419728 540060579 466771583 892329751 521564408 784600502 133188632 620472342 337967173 540176336 72846736 674948058 256828013 411129518 299773600 964845081 93683332 158153715 66691766 400834549 318850692 645975384 178213358 310022698 236952771 833095435 617931435 798013777 156148846 521359311 433940087 892802266 664095228 670704734 533972181 540835869 117313576 144289713 118287132 509862772 384620828 988468056 27973895 736247683 687443403 943865190 421729177 964535803 59443905 352217233 124283667 740209053 105899533 209119883 70146397 441085492 21537780 144315208 18016203 686126397 637674851 889168262 153034778 304193856 204292478 702741632 311492733 473927704 408466734 504943643 100717022 249953906 88955835 317819776 81015038 268162894 63229615 671539140 631709578 746412654 59091782 326631838 55482471 255970175 13249074 492893650 283476105 547425911 234291327 974423636 377309266 716131529 663239448 917351496 577711976 855660094 238790076 389968601 262326320 649557370 155273965 317360587 189779985 840717821 538282294 906751012 460465505 861450282 792449464 812349299 710245432 785871627 23242809 509009651 297530823 786353732 545871723 741098260 527576862 992131620 782389795 853340032 709593451 849175254 53357095 62792472 45675638 575271561 90479228 924825572 112512420 413022937 86410686 946262504 286917139 754487880 525153959 620482839 123205502 997208093 789395838 804549953 126292956 181415860 64535052 216506172 51669914 392593405 287281884 859256771 661039309 874277511 9490119 264495412 228172010 276742123 252608005 332384265 231765357 954751058 647293797 775688552 243349309 392127228 63606948 932508266 447676745 779863084 271090665 639314518 623011549 789850784 289500467 604190943 180264426 531078212 100091021 488106354 296806708 809411863 431179157 620963602 115478394 424015182 6132614 50679112 796148 968585766 507053311 873040092 53144438 101980380 44120516 118532564 19688986 704935629 652676478 951828959 713099759 892172428 822213420 909717536 552855805 727298929 584340232 590835565 480623861 628988602 157304150 916477015 465275029 649483892 175779563 538668699 41592891 870598248 835723014 930549465 506664828 954923494 7634479 673774953 485938745 715595664 165111517 681631327 31389706 699344210 531522694 680685228 657066349 738210574 306437304 964671221 804366614 804705254 4378974 952347856 9590202 701565263 652997653 760331668 539516153 593569817 459429467 597988377 529423622 885576525 208834324 261237437 61137202 152147588 128608638 297922913 250875917 919552267 91002970 787716775 305350773 406583299 91843622 484977737 277858227 415923183 139322777 962905709 522839486 873909941 681085929 780631154 678653444 950191476 339190056 850603894 819565452 909175023 680745667 934378499 141129552 925237030 186175793 953052258 691429716 906516436 735030526 736968216 627522806 777317701 708975648 763699748 203739604 717589806 402505783 506757012 11048780 394852292 304174446 816174020 485173549 912383310 866969013 955960634 939735888 952205667 410653194 674611166 281628081 637887514 384559460 710739291 462801526 518034888 239305530 536234411 53101235 238442825 219579210 771675413 667888394 761510267 395053427 683513049 442464747 816689665 46809315 197366487 159951288 455343510 160338486 846703818 291454195 501935742 227382336 965257369 319071020 675818380 645736487 744750037 335572690 890998770 97423723 603464748 112601462 285438015 83775928 334260661 27724052 159773081 13761726 230837128 115261316 690599710 434540900 858177274 452283234 758644460 115778310 844706492 276990294 344683005 210512834 691260204 481043830 989319388 908974102 960853139 122354115 626398660 203891317 935698708 782671372 988553485 897437185 916996991 501781262 682749459 409343938 614414407 236228366 828746989 227863839 956105789 349477999 891513748 557073639 776470110 283706023 976060057 529066138 837293065 670916202 673973510 481440427 906695762 218877100 997955702 620324940 664856722 443351115 949201541 590346155 954560729 175437454 680841075 384746910 957785814 704770067 755262351 252620419 384077562 211376172 836468483 117214200 706328938 440720503 990055272 23935788 821946712 725823598 812785642 131483396 658378515 203617149 415150363 213755505 759448472 103537819 305946988 238288077 628151983 256966954 415745989 209594748 736344701 391320285 566290419 454718009 631990695 434504680 561282963 401805431 428879293 334771141 950393090 453358205 937170297 929158713 987129916 148141941 355264924 172068709 507326290 409654819 647509215 408067334 753805756 646941251 830723552 240367117 474533536 169375894 469521730 431910361 495354682 96595961 645196908 329796861 808481019 18308139 162120355 96060024 715736795 307935512 610479651 405405974 438548852 408970791 927057426 344847506 790662452 135124266 920780318 365946836 380986012 196322962 747429573 411630599 599593632 206987174 454399070 378485976 380704695 245861878 566242799 32541104 483547585 7638315 41571649 13818492 202995868 23398380 972103094 151906354 762549775 260800051 830221498 395171871 989347392 197441541 395644375 304119525 875945047 630908521 756847013 569696351 635976522 349824887 372962478 96365743 342668050 282520582 303579011 49935554 688209827 518129386 772224485 114080062 293663112 76461319 647005799 172341792 367718858 264234917 914634931 305485741 611575238 40757326 205543207 163032460 709040598 253964571 461066904 367538451 415943560 370205033 472591318 229361181 858722069 422782404 785886396 94804222 192615692 84105106 963840067 508793028 748797131 32773358 949302821 493190725 855114264 600991531 685183819 328285875 575456044 408986676 613277244 129454970 822647122 678778116 728366307 48191605 494520712 85553399 625865837 314689453 556087532 112866359 704301686 120697838 652286225 70499776 460695758 13751981 385128084 166891655 248289875 152143583 498397682 270935253 928352327 479921957 835926956 123895883 796771331 546466167 602820084 169435281 174766178 50897244 289794794 210135906 634321557 33288935 236908140 30110980 265331916 36004712 89048174 8062398 378490772 67954509 415503865 315371830 899650943 804923268 901265802 836467742 983420558 529880919 965032234 32991506 992291714 59315804 759215933 358099428 938967401 285662185 633666116 442639469 948253679 255108355 848573678 796200975 984899304 740683825 777987128 461202149 799098120 418425153 881350538 246236380 990208832 510133222 658549384 181910901 398596521 287442492 466813596 365390656 930711643 157161815 363826363 62968350 250639823 198753550 838561460 260362094 332175960 116962549 436591225 92163119 903174720 93157799 906942318 598590935 616137471 445247833 864482131 135404933 560385824 129112794 501521191 52186314 217983277 47787489 971228483 239853142 844369008 229555069 428947691 211795056 846221217 574519157 952998204 320882149 662076541 521936446 730471383 430514160 669437562 382993180 981490894 584434911 707600616 188442285 661680521 149583024 741909959 22731480 68814902 27031364 774499900 504091796 536573075 291325989 849487678 634408711 920012889 350096805 551087097 162353948 247996410 49819945 854406266 796395720 940918204 532191530 651504610 429234483 430499938 102761379 804384727 430187935 460609553 222409333 866632603 125555318 875252625 814297933 941153107 72072822 114863843 23652564 418105971 380658242 606377060 56153792 516857040 156464218 986372903 113015426 126155400 56898667 920311457 36842355 95469635 24788858 122976282 121878799 592363799 455044738 833457791 474928180 503976738 484654428 558785810 315527648 566909163 200562007 421568956 33535546 911921533 382032099 439791861 41845645 676682179 492824592 741197472 160444780 844574179 468670179 728521031 644287995 762929982 29369805 951626058 587119243 944989621 334678893 671331994 468914422 509066731 411207934 501738592 52262788 996392966 941172445 998679797 392799690 705959813 1204521 293537712 24843825 363394045 274083201 916895085 39095609 104589175 29555024 965913024 262664214 892777560 642781251 777046458 470613585 944056635 717500826 881091788 262295677 948108358 94073611 647622948 167730708 904626053 663974619 951388396 895881603 975243739 420205647 440869779 4256283 897173575 646720551 764578737 265904784 943755543 107928325 361073202 185867904 428778539 36668851 177910343 125493978 436464263 432988085 957859093 44561692 522343027 483449916 609378233 97833118 540019627 473646209 867879770 133760302 830234682 430043840 510484361 54517241 164919260 542147 301522885 221101536 765419263 132733140 281289136 235380124 531035401 244604964 722090320 273665088 508936790 5737165 784450016 552452551 886175796 626106007 840512518 831248572 913515743 358866677 573942546 163090267 203259849 83107540 740113164 619401345 751888226 275259855 762351712 54145882 476013015 289031498 671606333 495874647 790746699 249506640 260211853 94002641 826347124 613230137 991252604 614674251 858517807 146732676 893912729 86318855 699754752 115539207 215710661 190739074 786623429 79452912 599952010 64762945 308805485 153658781 337888995 180688993 852594707 220004100 928229992 693426512 738971697 345336103 519272994 340596863 573720341 93053905 931433697 337521745 900218284 210371538 371066406 188969185 835873755 509460995 976423261 43962174 293846752 136125718 868709212 532434853 696510202 278834670 370241971 264869778 980788152 863189458 973170461 777835248 858321407 141670174 589034274 450355715 475254832 454192087 467031199 17675878 67280287 40286140 984011270 824792590 905170636 472232143 655334492 611990382 929850579 811030792 957379227 241792287 281471707 226111629 516010913 136087656 151615464 99396093 346704402 259302383 568946756 319336001 807333377 558933100 588541357 25751859 377029975 800289 271676575 204299107 352870814 202211995 335025497 66701377 894948476 326967253 981645831 447171543 781548450 38576957 972014889 238189454 870236685 189513549 371410057 268793202 746779992 718770340 792363893 708973585 996414329 416455850 955066043 256452353 408304430 163884046 309698694 22589946 993574699 226914709 711849437 590986321 965703879 681509908 982620930 450005261 754194682 431410303 431887536 217924198 376088627 254526613 430302916 106453827 799132029 692095464 942162753 780808871 830364220 63339050 915906364 772525561 845349385 361021182 870021101 145407083 839997015 821154481 930770208 908816148 999588983 917943025 921708361 508435527 776180462 186708151 593683968 374345166 612524358 234626332 734425597 602356704 621654284 76563119 461429653 383568074 530335167 210014741 320085276 243994105 822381787 416254451 817025356 233161069 381189573 119144475 275979233 87233005 116691265 67445852 126474886 93780667 346034928 196809270 620144633 235783513 506684343 119664817 214478988 50858135 661822457 451675801 941855420 443636942 819406871 531204875 535023537 207864223 820110456 74889 586089905 410412356 633823707 160402752 492692573 208441976 996510165 773253340 912488784 625454078 974766361 177885005 947499293 604435347 609739456 100036697 921002360 210633342 748541088 142740498 861214037 620761486 811408146 771362690 860796490 466835095 693129331 149699186 799888273 340255565 455860794 160381962 589494439 281583718 587727124 313851524 544154322 341899212 392251293 360324534 810695295 747610070 796909196 660629286 821724200 703552271 856717261 532210564 630921963 235195826 315316988 195335368 435313354 335452411 844316881 67502452 761757241 4947867 713589630 49639010 564387682 57795663 979526441 830615825 914415144 52680296 192016913 175185129 918549035 611991572 762569664 388576800 658079421 336855155 757832637 152084562 199655614 188927621 509990095 5129647 308661745 227381109 718587626 687915682 995722451 654803955 950982316 289529707 521262918 487686327 907624669 251862120 744178628 627805780 950214273 721502155 930575808 64712430 529265604 426736295 936317382 494659263 613292904 543294402 902206306 866442342 911810742 497358881 711865617 279601948 503577579 318572588 762061856 663229625 728906446 118982933 849075763 170955421 341546743 118885003 751621220 226886682 560374132 179251672 560661333 205363658 633942125 552866924 619134503 585001129 590989786 409533629 770847777 344977632 595928737 294311626 866181974 708375396 938958733 27253693 437072373 244911436 535556000 259686382 598364348 167214288 796299025 683974933 871256053 367786120 982419312 601076263 922520037 212306202 556008678 196977195 353119446 289490825 885602067 344136905 868036338 676174360 738895952 636619441 692019405 204850279 423302299 179167240 272814487 73552148 799376923 129531540 880996755 110886377 433501188 209539882 573156304 330328189 458837193 321960425 783824164 95651726 102049156 11599982 414112631 273559993 907796600 292436163 584729202 203677406 430497554 224988256 279111241 161775802 392180150 161873161 891548354 483079169 545411960 443852244 905792875 192842782 197947980 107107055 718850109 389923563 452493476 407240047 849326753 56397158 353205428 316688056 842774657 548159985 651675344 40263498 606130267 96849981 133451656 93693552 701210376 258437435 550273654 77661617 664895253 594598493 667230778 342143328 892780175 813661121 925707184 123065500 852185328 112461058 584019639 29231384 511905432 372182633 828263452 620895663 739250687 111904400 504898481 409505135 451887109 337360805 685514752 644694981 897826631 487476997 778480362 752036099 975159757 917406879 948523345 362842841 888178588 238105996 505723781 15764545 923028368 632677795 771812757 35931379 153643007 46907303 480667507 338033748 775438363 82047703 287432622 84987832 734070409 629809301 726627466 175944550 819347988 205207097 486379214 460023237 729953965 490745643 828165880 274703918 972094168 13871753 398318478 142399742 294607716 273285026 993481348 603526764 760570146 181847303 682871870 5737626 496475718 234775863 682268732 138011771 422822767 355882664 908074671 433513451 452963893 388504993 999700375 467672187 662830838 305839267 981055192 908698194 972417424 596973247 822950055 290247093 505544832 483622127 997439357 574974057 990147722 66384572 442924133 212562735 555043340 337687683 561649213 120949819 214526053 201520990 759075351 33829962 725276528 3259884 568305341 273128138 515112276 144258709 252691099 222143745 703502429 44362098 845517665 826548453 984899994 929684886 999780107 867947968 895120171 429235635 977886917 721554280 831963193 648370067 659408368 469597378 750288348 319866061 851733492 63751112 658496325 388708460 527523578 214693303 667402901 214763614 286043431 123541565 505001513 359644353 781143627 165089796 401741549 303033229 463558516 242206248 403769070 325651546 602173198 552832549 711788719 427518004 513433420 59102641 538585547 473212430 654953794 329702849 902217740 270830946 921454867 712683806 908356733 858809250 878297054 720683463 730174841 60317696 627037057 234194635 519005830 353116364 472310544 76345332 900327745 665990454 932445575 670117476 727196501 5864383 497484410 482937071 831539620 3792440 612534564 458161768 528797262 247893475 564915672 529583031 741900917 329850832 547724295 5909196 936901981 766595962 875640653 77190324 373951647 341247964 771231599 237881189 258603317 70573576 182314930 59474613 901501443 358918201 362106950 208776015 525127630 424784280 631771243 357156779 617327263 545819547 827450197 733995485 972293245 666728728 880005849 151288046 474494657 174272599 485950996 133904392 337778719 288721628 634222168 44255885 517706682 242027797 644071897 245279636 425316805 247810769 437954398 219551968 908359369 59744237 771409799 709103749 873230077 722309200 882041756 262072511 635325667 407531930 865555762 636522785 835784764 400938899 557809425 177799071 302819598 288364410 614500806 195614848 397268800 288694038 768986124 83858404 126533582 78931737 512924464 46794830 89966221 1431289 55858901 39460091 317859062 41120789 201783585 31745419 417037995 83999399 339268289 232716204 481184860 34844453 784683008 8444736 27362511 1868582 96643992 84136711 100043678 62052078 507740328 73135576 766214849 8045910 946762501 837033116 884844772 479247506 972487024 460472212 974779737 849346214 994546737 606134211 680477798 20571297 785913891 166777740 683615954 341352202 421559337 287434052 847664690 425571571 446751481 14113614 782061532 705296791 911561199 490138663 892725343 225303143 899296266 42058912 587876422 242260346 855440906 358722379 639400213 538323045 598928253 143020555 482862492 225659836 701416271 152163112 495576610 365702549 599993241 35574144 166276501 89580536 544782081 266167609 493385545 274216673 557652432 395713106 886111213 401054174 976923467 151366238 577267256 24418949 632786020 263834670 545515138 232707658 361446178 308455615 760787637 512895048 974955789 244243422 637009873 317046325 803660305 387918936 957972217 465678373 590406351 72631914 135381193 1813672 46455842 14184927 746409249 458311421 833848758 580053215 753685611 443575706 947434224 580220629 769611303 326738388 420107855 83944707 614755143 549230703 610260103 100683539 522455538 504264937 697720563 200927001 914148815 489066017 824816050 40328375 756675160 26160778 417424501 253763014 851428605 290858447 653444182 546682974 855885975 403165097 916063342 429213950 923640252 590443161 832753468 748063286 772362705 64001213 589689163 359061911 408701727 253176491 480842019 71794841 744321217 22223788 668359145 129475914 544053805 508153014 952965772 248343953 771152151 445304597 516726923 364140554 905715417 453664258 668033479 97906588 320185973 95452825 774569354 268842713 392080103 277097941 496666818 174902682 607041549 519362693 549565508 73051616 564814954 338707583 670661433 560224984 949215198 829336634 915731846 494174904 605958315 208365608 542952890 230457406 703958301 566415659 644370475 196896220 446082195 416328877 803684827 515178220 602839187 489312071 556711841 255391678 937456968 82629239 262320853 147910316 934888557 270529130 666295909 577075646 772406198 197958011 815918763 373499779 831144608 546088406 921055220 295788501 319388681 94856380 602782238 544700309 715810880 135959922 694610305 299377280 972395750 138108114 404600955 203174287 225844842 121242492 583168058 319899293 660385333 410181041 481338489 9412171 264539918 222459791 777656451 200208729 293631713 149709636 876829602 238491848 552109765 395309600 787907461 703568192 952595064 93252688 142845823 51464121 870106521 205132126 347865996 77140221 798244187 725819732 894275363 401770232 567144514 44605042 937349215 178149741 929352050 860372934 989677879 267352920 375500876 314175457 814229452 529814386 875759655 525696423 649170178 239183004 724898326 616273735 930267634 195413187 495837490 364554646 886706455 802072451 828566622 592908980 931338256 59996347 659795279 46254429 772789341 169170291 894824842 752576705 975685647 514147282 929322284 526423802 972921642 833236101 871184682 507170841 789059730 499795758 944236132 624025203 649567962 105224447 342633328 238456086 812705259 753231721 892762373 210708373 937692348 145163320 678240427 399397978 486803831 434669939 755075086 678625441 993716065 917860258 984381368 699876734 927918319 23287733 66989701 39705710 419248691 187945927 564476620 445914023 454708552 244080797 570921698 132374971 797027826 68641475 793056852 180871790 526490094 337334922 533595968 344074191 451585925 183986946 321568042 263035807 456726156 32001994 169070932 76442078 143112007 128871773 132808544 17367041 885653925 693585017 747488197 492181077 855866994 59248456 89793371 69356150 87584114 56533303 667316009 601076356 914249796 353166930 948944814 341345862 656152813 234740334 275318668 136355185 739231762 540550513 801888709 762728823 778896613 455772343 586374622 435382522 521364512 224184289 669515483 335096290 462135763 277396405 737914953 676397604 927440343 642383502 743470659 217616244 626822265 581166578 834696880 421427122 900386002 742713451 998495645 510433164 936674162 563957559 950903856 99192585 989135759 522048112 945418710 496295054 961212269 566074325 997738345 882233363 896153339 629115556 836723229 535100226 857446776 551191778 992167649 360116410 484781846 245943600 495645766 145937821 406499372 246015124 860123431 440960276 812660832 308625358 940919660 782935394 921212703 747032097 997637134 829762028 999326989 32741367 419321967 51229738 155834284 99353682 387561029 199750833 204445593 182266778 827515132 712951437 840913553 721312890 978107184 769349774 789178196 315209880 922996580 295159432 715145885 255720749 960015875 346166756 854441178 700910006 878643529 163749469 207479565 135168381 815301647 372039370 956743908 860632874 889218181 831220903 884546830 99781689 833920424 597575957 715816107 164044919 921046292 375233739 379782874 147155505 737637191 543627494 879723867 472408291 966482236 273291761 936417910 742157687 816946495 683489649 753634781 688360014 847221959 20138170 766732348 750113606 995091111 236653727 595813613 30732279 503971075 302066516 801529685 137454572 204148988 128801044 818447362 513805501 709644580 689148948 708671874 100814647 719256529 166439606 439773225 399102213 847783856 598964478 980390557 346964433 704605370 152391624 258028702 45298039 562334119 169562460 751276723 313444083 915441057 81166050 421651349 56522396 997614104 254716874 710615611 253867135 843596519 173782829 881942818 816193710 927531195 194587071 828129706 351191099 999588893 385329341 653234774 514499153 971104515 700351967 918641782 708032004 757756074 441630101 939463252 185668184 447110174 230506762 302174456 256713466 420682734 270144912 866579706 126849388 781026326 588699354 590488345 188339585 969602906 767067478 923406605 477078045 674255857 240489974 340829284 89316646 301550484 70286100 310018344 79180989 358156682 27241193 144069643 119835679 581279829 388253904 873455451 757452596 805542387 422048540 504607819 256236822 915683341 630946161 653643971 354967194 670460710 164602782 628702569 429917334 512058597 452852093 757851362 596523455 685520228 264213147 717444121 520926464 759989756 411519899 751496017 444859199 957908379 56838457 596795138 347246359 613023884 514094815 712214094 403102151 772848076 200881377 804906328 217145593 264250312 6184782 793852555 57805739 120081267 50648977 578615415 164752455 404955790 353922567 720454561 19250249 41734138 30585635 539081690 37202265 565245416 318100943 966578505 243727121 930692810 168057330 557039113 139208327 968573553 418044341 844528641 16112507 643435073 507646735 821370644 671930151 899645467 474879936 934304592 512751900 642709286 139150403 374902829 272214000 640440635 278872249 692300466 225347292 792095887 226034207 913509452 725559230 755647748 11736370 130630461 44406144 654161241 175517421 614715865 339750340 585517992 403448488 593451487 128630339 888663329 638207602 945645902 726317662 805472892 206674033 474307315 247392725 626861562 247119735 697588831 430578193 687285749 243664114 623280739 609989585 781987735 298041862 353182053 19380104 916536680 537089172 608746293 569384337 715771456 11893002 575108018 378402243 652641843 19521308 531266897 305348692 981582951 597754121 898313278 498704903 924126909 818017827 902629572 675279857 942627580 54959786 590982191 95090504 147413950 12267453 536165967 77452133 343311977 320608634 499914919 73758084 549610972 268511496 737898940 141995419 719645796 331094083 476470271 447574545 563530884 526484014 701267491 434310269 554321575 428661449 843909210 106936832 479879824 399271459 481423468 25015384 335817602 65135627 173541630 33923509 853932748 554261858 622289326 271956112 908092527 364245823 958923796 76675855 497315841 79508365 762039713 152909662 536755194 101398448 840327596 569884951 624106058 221976297 578584590 431504152 517746876 512756155 606156346 396618854 487482711 43491054 132886837 82265768 985501702 849842192 868864195 473954349 535974033 44434025 357979542 102789834 676042700 60413238 107157718 57722371 424304911 244306490 294941870 139123771 765142213 588404831 861460467 72188567 120505163 66681567 837927040 797091132 918458318 710434294 779563524 209198112 454310746 231251934 821548636 583305162 643334149 325504118 862375089 563214151 620833451 17675817 462902243 402655797 447560366 177022277 527456921 387572397 529527014 384664213 949431867 946686406 979052377 99437236 412645507 51751711 440233237 24678521 410804083 281388992 402417210 316634608 799470165 726471603 949809311 560244507 881297319 749700785 764770900 438942700 821852061 672291654 918939333 657412151 834827662 58131993 193752576 103179254 158722578 17387557 483599343 59964875 967027694 95551052 683443543 425052476 809144522 308112119 670477114 435581349 667973855 210197130 722013141 516787743 518647232 314935883 770296888 477562923 808476079 28723830 591735857 158876590 731564860 460345423 988838073 284882311 737990142 49576270 318206012 27865779 358749938 62963590 469062530 411155690 912985913 51906986 808241301 596789933 874444995 761536038 798595730 665359434 919375343 150847298 529060781 187829455 959047126 85588452 299111637 102248907 487165507 419822624 704699907 584872909 762899940 490335944 568417356 88517766 378376661 347632854 472888058 82265329 857373791 305433373 746142743 26053648 541117894 309690232 682337924 96199219 911281537 273436854 631100963 351634825 689396209 201680110 354086422 184798200 525732067 227403186 782803711 522025300 843739527 173078551 544129030 543776386 895425761 794676835 829349795 677773177 973200396 963395801 996012403 946172140 979948432 217766899 322008984 318160358 941412605 903246661 933721430 508173045 938033208 147678000 872274477 19290117 351375136 132047175 729257242 236021346 647559064 342977501 424377191 360734509 507466352 123399501 444494832 182701827 315937992 59723966 405197835 53968418 880489156 858800151 988616981 514699905 595591475 579701848 593519771 99225220 461412682 47744449 756314673 536283338 913496321 399428821 730185401 310590385 794219428 461261858 476199854 213694200 276634567 67787081 474057744 57030532 882443696 452448871 822321966 651250865 971777951 520317114 693888017 443278024 619566438 73089812 659627115 71053949 283867238 234558731 323419692 207328423 717691525 116247465 692838541 73488587 800102979 448794041 564634814 330365347 679075340 58438184 655714090 564942317 797564818 642644711 728451964 481987532 745212515 58257201 866449091 322076041 559312828 57877721 622660560 121415009 364412290 67834658 147699952 58680398 370258403 210294942 593920424 279807023 996454853 241400988 766444662 64373341 576332353 239869064 311543945 291777831 523543396 295980128 677769087 104248182 791452662 505421238 610918794 249032610 403630454 29110568 75079396 71813093 168538706 12934637 460868357 135883440 525421371 256427405 976783336 231850212 633608023 103164731 195574401 159648448 338985335 67182752 942066462 941135939 976074663 485614501 971331690 230207317 941313397 755085910 866210905 849068736 869016122 61491345 95785285 40917968 154239093 107880453 390174164 122418129 627787258 41462554 317741075 136482282 264664839 141624366 306259387 224172717 998855532 208182477 454909267 296520187 327813818 294785141 957007093 475042590 614012100 438094400 726534395 72303606 845477230 67088221 92539530 79453562 492687783 398195921 976637793 706455252 878458818 612582042 746976809 349793989 845799595 87961131 594098897 198954420 391803212 206954892 563928095 479785490 829379810 828751181 859523958 546999551 886102421 778640638 798469368 665152189 896349600 536526703 575097339 281494936 490052106 1576097 574033207 456896919 971098427 580169932 676826120 433895321 701073433 611019623 823822393 412761186 792762555 8139099 440140192 278631217 669518156 355428074 415384650 80206040 190870489 66785093 469473772 432051656 458063846 61527624 371467280 212196779 253130997 93076599 346501362 47019451 506871376 215511725 966047659 409956887 482562479 206460425 370432488 120280382 317461410 271537767 997858806 356780505 794097060 99924891 812020036 531011575 564088909 72175856 679545497 602565828 679870878 214422697 732365165 404603065 594026112 89929971 257004753 107750683 817135108 369791806 929188062 347283289 905150252 111394539 521195547 16226053 853032138 763598226 792196984 516623809 729862769 276453149 897632109 594946320 608718073 133383070 733015543 174926264 578422798 20447625 659064948 594669367 925605552 106229691 490125358 394010102 447035897 226873632 660155178 457635278 987020230 821422910 956835122 54752428 612829955 26871424 355514851 349257142 775768177 668073511 991112163 288741895 990277272 46087773 201429284 22004290 596746333 122894228 267901564 65669944 557128654 395787447 657430975 19872905 371230810 5391275 241477888 208366288 622150430 84593989 801182455 637107761 766944616 155075031 772369640 365787713 533605194 109292665 826945794 528355258 929559738 428549364 982300464 659912193 741642568 445302511 608267562 91085357 258876485 211873373 926464701 154269906 366078887 233485954 925380398 107792444 399359179 351355371 604928292 376783317 723387953 712824575 789960545 308365774 526851602 458899225 925688571 342769759 680545357 37444829 267263796 32602157 473483337 162874833 558236464 249172782 541397643 37540958 994766395 17193013 587683289 327154221 548768775 540627530 728560287 470678195 817279889 186532158 827899679 59763655 257640091 157130894 582358584 238656474 897854155 278020027 350516953 108112891 275475335 110212102 235758198 135291262 195507289 60530242 682546087 299487259 990608908 358574061 868410032 605490878 637735706 217028882 311180393 137235148 735019205 51405143 389514879 282063782 393866882 1035847 391953479 228966459 967524470 849907633 996339898 850633702 991530635 729264205 769507046 704336882 853286824 707806645 949055808 255098508 943584361 828059864 995496564 801748836 953360909 229038751 400015328 367881641 561372658 362126622 423521241 73186991 989846301 29254926 518818702 376729578 954397503 453522500 470554837 34515275 722480551 295786950 341559257 207850511 679264895 341253294 741367470 428268894 812784756 267779289 724762822 73971415 804400826 356599055 409704604 86339306 371003514 271426324 732282094 730189338 999079224 431157263 712446796 115122444 635752372 561227214 667190619 289092649 312245304 167576196 782853122 694806429 911359552 740276346 751002162 15209216 90117888 24581630 166785108 156750006 712018656 109912703 450465177 137066589 682874609 4807789 708005740 204374910 850308907 544452195 907758890 681402517 863841086 323310305 397253671 247502709 398027895 157223593 955542755 763015936 852836231 460283635 521079904 401579274 757032356 167252723 580063756 74020846 515366504 513472218 746980460 394458844 585206841 83479374 361328055 359877001 708517870 122316602 701537386 200598166 916184507 175301217 678074761 619092891 828993545 776617302 910311597 102926819 188925186 38574392 780574895 731196836 902143210 243326412 826273404 628431914 751584048 378766823 959069742 92876138 716119574 279223211 603311534 241326579 351891429 232901197 724479059 203891154 828935355 394354290 696045272 588167596 772242808 368468372 847477031 681101526 791860656 1321223 647119048 446972437 504026571 237839637 819798677 739960533 899189414 848867471 852716563 519865515 980808271 305576403 417166122 1706587 559169276 201666751 492685890 160169084 753899710 737831466 783935556 776457834 969058408 452334907 501378466 75592910 276003359 258048671 401448633 383204168 711186894 342204801 555609189 550736115 639443719 28237023 694472902 394045013 827889532 468749746 618979725 605487375 628013628 588499259 854360196 603046684 711662786 331160842 432231231 324178431 749704751 31581093 543948460 523466516 563395533 259477979 385697636 62653908 611162751 582391791 871630120 214895568 491392770 29399657 465978438 132102101 187870649 150639586 649831766 476128482 762750995 446650143 618569467 397044568 404537647 141636072 208146573 114551451 749052273 511872088 734729975 615555523 633110354 53311930 965776249 62747982 751581987 446451009 795798195 152336364 496143393 65194226 454107676 427185863 862466876 795164990 929942994 588496166 685973433 161349136 479277792 303547826 321325630 126743256 133733914 2176948 119754857 66181400 610332355 316443214 772726131 609011519 944455426 409418544 840173830 789313247 961738430 292368824 768537724 451485926 696805196 469691340 942382006 912255613 944558630 106926738 813875461 54876335 365804221 138639511 163204106 17445380 263237593 221871812 764324979 623782766 783140889 752130358 765383816 37567247 677360329 43417837 794856423 540236589 759502202 648341832 902951962 260258563 617816604 499520072 927276005 489346286 698308399 697359620 913820706 96025358 630233338 353655409 555599042 10800191 484365527 397526020 401852834 189873708 996696069 122734335 443983748 16308831 304766028 247181415 495830140 365207462 631659185 442557418 763220157 287921091 747583843 113940087 615268972 71239425 400932151 336521619 631167957 520564204 859062510 424693411 761616761 439106388 885367314 258606525 541697514 463045984 505239560 359343588 503937622 371823047 958238420 405171540 561932455 295262595 343756796 85565769 632696369 627887823 748211775 291012082 549605811 213569719 215821896 76642162 150790338 29378491 921693357 325870845 786918102 315304572 502248256 429535761 849789820 813271734 852195396 417499581 894018590 243313994 846369210 568417393 898044307 478679778 784130682 766945039 873342713 656057912 716254696 138996639 695096298 99549500 583281613 358747305 490002400 112800086 858777426 668539641 687947111 318326020 720733110 118155755 688110588 498452183 937029762 312029107 435848592 104950674 699295107 367101298 831519759 162990234 575470885 158123362 606096528 424433707 641600962 211920835 978458541 922623360 981757467 356890818 995909586 581646698 883602484 271377487 750010642 427223292 487433238 179081672 567988481 299839466 948230844 541214982 886243649 132827563 408824436 278229964 553710518 237512971 962231823 481181017 521102315 323849720 479525643 449783043 993949752 29532647 918730451 586924617 646302443 363271774 804614595 126908942 962061808 928275519 964522746 855975002 879887193 141681935 718736848 40768931 662709442 397365087 969240929 834595049 838189123 642647412 758221448 625705194 977043651 283968943 657289049 79189670 82180216 67803665 91022225 37249575 657715961 42191420 734737523 376697061 657634193 376060919 837639131 458813675 805073490 551973710 661406898 269179077 764996604 560651044 625484877 18735300 211467389 108770818 335693174 24750456 652362387 575296687 763274863 661855952 669134585 499299515 552401005 473005187 812261420 596508778 993644881 741883407 854029706 536068695 851561656 11718605 163066189 108369415 347823001 243080235 499630260 444568526 597695454 385206711 622454001 551600841 866402992 170022258 807762487 77998994 564722962 501517923 552912850 473706570 908259245 27058926 818761575 766861863 793005742 702236537 870826004 441976615 806359670 258122440 313653040 151226531 763568886 398134850 980522825 720938748 730554860 242092130 914255690 374190394 585267438 107336447 799542091 305161824 754564507 314349646 758652332 696675839 819148745 442724697 883033289 462957984 970445035 404067784 894750758 834917105 980918289 704606385 896920097 848634759 875779956 196179897 593284631 142292907 758714911 656335218 823863553 382069731 860401045 128673223 858560486 485546850 818485322 609746184 833748665 499418067 580362192 557725338 724476669 416486633 996782952 256419084 652588948 91862980 915768708 690670543 913953464 391306918 775565303 369172912 772951669 150554311 807441586 296241104 752794360 496916350 611963487 11954661 909195952 468829622 974362191 403408200 502139307 84880700 856116558 442141716 846599794 199260161 695210447 140423920 746373852 222203087 812992645 446369512 489247338 93001900 965675072 248570387 442894221 421045112 443406053 385055934 911664834 881619027 904539236 598768946 810045160 696571481 760676923 212322562 452808768 239944041 260849160 9680167 513031793 63436720 330757794 174471184 936389812 863339782 916781697 646968966 744142457 531503168 541599811 452233196 927300186 93652004 223571939 137113622 337531849 272468176 634776535 521812388 791676899 152224326 395516479 193696829 553249006 139475047 184163439 65508349 304686815 246236739 719093582 440960540 451467195 83758784 552285168 471955797 957505572 335138539 926678638 548258950 732977580 603707152 669805391 370007745 636298035 386595981 507736874 60726059 126897392 63375961 390717744 252298540 840188803 195103729 539779973 415657955 903699233 454389859 497731247 435244263 456923771 371666714 831113165 175474518 906520673 855936409 881751880 579337011 686687513 502776022 957535187 933032353 965486104 764356773 987510028 220460816 881109793 663940328 946956576 750123911 798748615 527444879 644484663 367162234 988458681 958978270 961949036 306767625 344264806 270090167 782672293 236441840 629564720 377855998 607764346 89925193 677154202 567754891 925813597 870742587 880004881 255430659 723164272 348713451 353611932 168351557 284286064 110555672 589041156 243471644 363617423 102452997 805747727 514068592 900507753 609744160 797614190 379771105 801843188 455743986 907233888 335386738 579185685 309105991 958921993 732253412 732995058 139366769 696164364 487532445 669963604 344182563 378144243 318571345 604825314 27417287 459647199 40546592 719011142 427889045 551563120 394784421 764132812 97059775 114532988 85632107 716622021 589748729 982686747 824081271 982942704 315586868 590100820 87131671 94616729 55119295 456760048 241039750 268919167 41761938 997552046 332481615 569542529 41986564 899386009 755407559 798434726 319069410 846515975 775302601 786553533 458381162 788869017 175251792 614822764 565727283 981284227 871792634 988584234 861750690 923222734 784157305 790079066 296850726 658212793 223538967 588253416 173846757 574918296 320013992 551695123 233696054 826702830 193525453 605425318 304817609 779098939 625609435 727741860 127401351 883891789 785752629 957942912 137024164 626388989 192756499 995231416 797958362 910280062 710441772 831002442 458414539 548774491 508743739 584438946 545872589 848583549 149124225 185514980 37583190 820870338 542929501 714324280 30877950 736916261 682661112 866954412 161473625 665891333 286495776 362493247 332336564 628791188 587613566 981873194 550027047 729797581 98803321 687216172 77270805 534522852 381714570 984430273 457861502 674603464 348907216 924096553 906491321 994948396 14130404 594415259 142314971 343668927 48161067 233811481 220532646 305773147 36035580 828856543 58836095 254730878 250695730 256320739 98484180 709813591 293103073 938219514 916941434 988014518 836166276 964688811 344101718 462106024 93380308 540400682 225297179 514103065 437076312 724703682 235364430 936422575 153004493 651866070 296047042 587645482 553642931 920870534 360039687 732512420 686345663 971443843 157210820 789040787 298963165 867444074 790811129 908826151 562167989 930407414 252399500 556909794 402972384 608533453 355223870 787514211 58573340 728042817 433730014 689521954 448853461 576590075 352938766 776419364 58466156 220107446 5579810 953622901 480816845 902814960 133624793 815175106 396773295 578996839 327310215 590199266 571872059 627812329 547650946 791679037 45220682 808618425 15012089 54954639 38967337 883891720 452793384 994217960 506648532 737273141 645131304 968902565 121166361 710651234 604304484 788721960 476786470 817920832 344075887 869323360 171028581 785802774 486145996 842265304 755190019 884616042 748606713 967785401 882782512 947884667 170502024 171822089 109028978 713353492 203196754 709575869 142392147 825508705 311344747 603151408 571953780 956748952 82909943 929499150 240096738 965154730 195402185 841685193 23087381 953390279 282758989 340803452 37317910 518031321 179208734 822350506 759999445 951320850 586774113 962650645 439022620 659761860 121134465 797756526 760145883 798747706 21029737 848228937 667179782 992384642 240024668 536590701 323638680 352186959 259608548 659698146 445709283 996548726 975977890 988334166 817359074 888918156 154706767 345732739 333425201 781535066 329926831 553640818 429884286 506437977 34774117 39899186 19886690 880702188 8713915 235516392 171186495 619241217 560650863 778425188 678563455 968303754 125074205 126521292 10144196 789619255 381777684 657978951 131897717 296861891 245091114 740190070 675371950 826321760 697250889 801602982 614551281 753126739 548907698 573289625 428153071 799912980 730445006 969841556 503890085 647264655 240921258 498758357 3447805 730819807 145468506 698854388 83783647 381168961 20745910 743756926 551427177 633724259 291408216 502804917 135537127 228028605 89218863 394483990 225835965 991953185 539104221 730496555 435336913 606852315 344397306 806288144 684993451 806906234 446555309 973101073 747266293 946214315 877378136 993821276 537802571 588439033 18280210 842099435 568336288 667501366 268420193 378540724 302496157 532690232 5329307 727864849 207709057 303672606 299393471 862271670 421733912 579439660 468183236 565709158 560101528 711693705 411978038 874076096 186463144 619651050 495078739 612653481 360635480 954845119 15287692 302621995 121984715 346558781 47179297 803287396 18959629 164872648 105499997 211732463 158517312 577815967 485827327 758969906 111131649 946306502 611735299 856969456 247722782 277103109 109641831 354906133 188754331 316583411 295639817 819638941 109407062 883043351 345390768 482705658 130098865 739320633 25088819 236446949 195740969 727710875 372941444 590334760 276597929 360061536 8039021 185732467 6710959 730959408 703739636 924539308 784621314 849348521 46910910 917078900 567865910 974895736 200008560 676532721 220633811 319294651 61085803 382025194 194179975 573705466 421970241 915656959 359799769 659123881 217554524 639712378 447659468 570108398 94925543 888460204 245131784 797138901 763792373 994767483 766872981 967435604 768324339 880015141 773506650 887416188 506515589 718996883 677924218 984407799 491793253 559752837 237599711 305314653 151025909 256121342 146006469 640505218 26254747 288950924 117560140 633077168 183259043 950649188 99787257 566963025 81846098 573970808 368950554 817205452 726514621 851553415 308190126 320192925 63301951 426158079 19676585 74901067 19457219 474065544 465087893 551472131 104822696 152178140 28670875 286558295 240181254 361104381 20345843 317278923 84375246 485336738 471052646 592062412 425059746 947706619 385934774 536406874 530791207 985690500 143929754 965783376 411694266 420400608 409651303 773758781 175683797 711526873 85864791 799013099 588598324 778979755 666106711 964391712 744252969 753187550 490950218 494559683 377733200 917455253 127065206 590172746 573973129 794385117 311711227 844627762 565126338 583720464 152617007 986007818 12002945 391731181 38870233 596468347 195646931 439706839 309267465 826176981 742565563 923836738 661992038 984003312 265041443 316005617 210443335 695826177 178784195 212697855 203276861 325428726 121375064 253531623 69722734 207099228 200528723 567378568 397264677 919772190 330453378 438132770 169486937 717382496 269931649 681909036 265710 242354926 101408914 243279550 5308126 50722792 16051765 651887155 484963555 509931930 310441809 512727578 402739776 613274147 450738357 588287853 307750458 789227452 275070970 850351381 692635432 837133062 163654993 282537875 131180171 816514951 477386589 544407884 60200697 470461594 181016011 811229451 316332599 759409506 40267514 858129529 791278636 803291327 189905289 842705153 160511045 328815098 192053067 386310190 148800439 153348775 119513703 697117362 20471337 616628340 280029324 984852103 381139118 695465293 165839805 941728579 158124760 734786903 62186326 178804194 7657585 632657975 211827217 334008020 96186679 721120262 15987854 596364486 249849642 698657319 643079218 736361427 378758563 677159987 624599957 832949009 205969130 890065164 180944948 691912827 385037019 773171381 42763973 234871699 64078236 580512670 374956332 952127780 569764962 608938742 574321327 939599623 269701817 731425050 524243786 644583461 216103734 813006389 735554966 973399730 465164598 972420205 839222215 872013614 676632356 977863871 125401278 534015173 117344655 933454450 46021986 990622036 29702970 795468265 229207915 984286802 362790308 424148737 74225982 929506357 707684574 843558898 352942767 750246197 602601905 912987027 863202523 905762350 386275854 977697424 326488973 881247004 122850191 349950110 58559648 581556260 510210452 781533599 414737992 791670258 178506460 797854656 352997896 993677809 901107307 991092017 957741395 993025938 357681664 902415994 618799374 805210246 285979147 772182037 468992940 637332518 478686434 597673831 18314526 144525805 134724785 238765396 86597949 167933759 49442934 321105551 76890458 372821437 61376011 566879697 261498998 550782441 233859766 342932212 53551389 288047736 209870173 777652123 113515266 278428165 111076102 438070878 186837227 833350223 818723371 882684199 796214506 911284318 773430202 866086772 678009691 790437988 2675431 787559120 34453775 680704851 111360266 429750553 16138211 795865540 128622326 499883831 441567531 638560098 161521056 903246424 12787406 308981608 67097835 970589627 28795779 913038170 527493882 770249520 77943872 876341166 859430500 958021785 410190597 619575711 461262849 925523929 826138684 944473876 318055033 455376669 262307354 869010867 54893567 707997767 602395829 868867027 133125045 672665015 383390809 406245064 288362897 855281119 415907319 740284903 600182680 678996083 472571941 625160548 198913100 360418867 70073814 294112011 84928241 901892241 80080081 422390022 404701645 643286883 100076628 425555199 213459774 374302014 23641338 215866523 194477497 309363404 90249407 749694592 565347124 921542696 852900356 927453403 540003881 715670607 640243859 873076047 442762764 803465264 111763171 224935876 161144110 321329071 135929644 187578862 144856018 705780548 474727965 677092519 586277330 775633200 294650929 995396605 617605069 801235637 268169007 326720937 3250060 144518089 125250170 215741872 91092032 318528711 200074813 899380583 819057860 938699020 259562140 683999619 289440233 541777511 92973725 631175096 456770383 886351464 869030993 936373462 225749842 482543639 36421951 261147045 196080838 753637927 30758589 686863491 420878200 432262600 154684151 902167767 847007963 909472485 104005314 430889835 131951901 694289516 466359702 588099874 397101738 748998450 581507479 707684687 302138074 849122721 506511900 608304347 470698673 848376539 570692015 908036466 356543488 982125770 891429107 901898377 459042239 840487640 691926501 810020812 406798592 462092093 364915362 911503641 570338988 995584719 606010116 779660804 632259745 644770426 99520768 920426841 524359584 671956394 171002541 498630240 260767519 885885362 5531838 93505158 16169617 333144079 29993821 454984999 100840982 389746546 272624381 830198251 522011760 871106853 450011070 639520675 371548924 917290319 559955537 593385761 239371948 455717333 153741973 795590094 581653355 890233889 259773428 827460656 117199866 795476359 46604875 303374459 299932162 699616611 444444012 919817240 284919128 958765886 167718955 186096707 42531006 512335204 259567464 348719239 252641613 554567791 380304568 796209446 467109681 526182499 333405720 809708144 63364073 839692109 253533478 556044870 446134368 585193305 184746264 286441063 251058901 619075738 371823779 704083245 358022588 619341436 507051211 999707846 579380051 654399746 403156203 776451362 165921702 561242895 252964932 290349962 234188122 407774293 48475191 131858768 99120602 229644338 108557033 594268299 22557770 746561747 314336640 394266960 260287021 542552039 125159645 267407309 248386663 697450456 205194590 669875618 172195289 402759611 95538556 267678813 169783930 252927444 174322687 205023165 12987895 547808749 55080131 630966811 277843200 739156810 737164318 940635724 531466147 622851391 346938333 467715539 445393682 590518947 199029616 823966348 550472095 887986592 809004935 838177463 385045297 753662911 742441007 806893284 125209933 315961087 155739628 772911564 755282670 826434072 718200637 796299934 692413895 703748120 48173068 345446887 5734890 699831447 82479659 521773897 42807139 339799401 211302009 798088789 678168400 823691684 77228609 364819084 364747164 778615546 364435879 619322856 350193208 688992750 555780499 586235608 14399680 87348443 86176565 192220311 28433602 169408469 155386626 569130350 531844277 928867357 411298339 557692214 506259419 543747297 460845355 552418082 459096616 897178138 62265088 568146045 444138139 989945512 715760996 802314759 342734952 749023962 266588867 670448921 427888921 540708388 271972708 576302654 5589540 752291289 339736012 758862949 468858133 901939406 809242763 930122318 184032007 854048131 664887563 730183739 211629205 690742707 285391388 694991880 603964416 965705895 464413319 860338289 242944528 703771725 340864404 460069619 365437249 679765220 427016259 492752522 181767052 879982741 740383614 749018585 118339405 235544324 14597480 317813392 193823534 408792391 358801772 625723740 53569839 352661434 93368559 704353782 74899395 643321788 592170308 663030364 424006283 752947445 459578053 928846380 780703087 956297050 453332472 992264515 965418221 971195666 283782924 581264744 61159866 598755595 43844793 430514902 319423145 742267665 568436485 618968934 186661324 598513033 371425626 396178354 371762684 685075093 643036088 993424441 778042277 902905327 124938654 389369578 278087195 628240919 192195565 745418730 549849693 668146382 28113070 546386714 264581541 620099699 368371015 491275914 10255344 581198623 45664939 509360896 425373958 871355837 508550557 928117243 367149207 659180106 26983045 209475981 168229889 489170595 481925846 647374107 531781700 938214292 506982049 682893783 591993453 874492271 512624440 513180933 445848725 879556210 551252786 657107433 197782725 636900097 149767377 322400647 90693058 286037118 149627368 821925504 403072950 526364770 284481286 615563063 319275444 812029425 225878663 279182618 110169099 907582776 368244400 700807413 12354135 13589807 1797285 954035265 658034363 661310239 625772377 967786619 703132538 856136962 429559380 556565317 321987786 735842811 256906956 442481788 92931575 802114993 576987035 753184927 487813663 526516482 282069190 692026106 4109452 245908218 238676281 903099878 843918922 992139099 896733740 946517380 698634489 771441018 489935954 683925434 300063516 616043983 410342550 516543285 487176837 881714655 730419698 733035858 597608949 621516777 580976838 880327159 260288689 938163111 852849841 859920989 260167487 639301092 202412371 578394491 371357470 682075137 271918158 958571056 521179065 583274570 103304941 183389749 160568775 901257338 566815371 851461379 732978027 967644608 824287115 879894561 32202526 737765304 140459166 476742481 469798122 837495400 743632864 965941948 311220657 379358034 117651328 807098772 682265799 790920246 238472811 368427004 145131937 336227164 135664390 729335743 558978172 594805135 495004683 566724986 362838478 838544321 52012799 758553483 402487926 779785138 299666082 494581463 122335021 439599456 397346122 494102550 238732138 350132802 305528160 436760353 193271853 367274157 34901446 908821182 217413894 890544426 493036926 705189975 191893110 856409176 120356518 580864001 107826287 174235137 163310372 509189502 95259549 284940325 37110838 547700540 82120335 432842052 238504051 717766315 461439122 744327266 147067217 167291215 48546305 597149420 7283838 22758065 15260882 65562140 6727702 269516221 148962189 473019422 360836140 675335205 197127700 295868340 161566982 489064582 184226738 680899913 86112673 278032820 245822746 324388497 59767656 296363176 161562994 805849314 506068090 979463771 749608350 781972472 361469029 508475453 65786922 955641413 380072574 681023239 301025604 803303134 413756927 443648916 51797259 140089750 92393243 424794246 264001139 278118441 110030937 498071245 358427429 956801397 607031488 967746650 242393074 277199580 157105248 415511447 68402831 942584876 762697650 837124534 64097931 398132082 390344825 683365235 39538825 991492959 470959768 513994468 31595030 723339566 404617529 434066949 219671601 341864680 150341131 973404687 712990485 759928860 239926680 825389036 722563002 749097313 155914827 532972563 435059025 779612779 23662023 324209780 106838455 188131456 87060694 844459241 222129925 770671405 126385163 433563880 352636651 755985298 542542143 861674150 327353655 506571341 50910626 499818747 203551794 537018158 456402594 856455421 98199037 111390988 105138639 279240294 19281148 554227447 151596640 429115880 144141739 275540593 250928683 817672217 136047156 356931012 75891647 957416585 655282876 986086532 950544276 991839592 143467140 552793702 295899774 787047271 687245767 704819564 668909506 844341287 819595344 935006072 848761717 906406949 482853294 671890930 319113510 512347991 438155248 501029968 151240502 442646476 157397925 467520598 397168489 528571713 234184688 755727440 74478295 106002822 44776003 985374866 719307244 732231844 644929965 972941891 457320145 531004725 103708892 959924199 200624654 762950328 112674875 405915008 376282200 771030737 196179106 887024153 131964131 293362386 216303212 987974821 371651316 774316030 593316100 780194722 140314533 200232878 82322394 741119819 362732136 948437347 268325698 283636253 83275259 823662805 322674323 766855647 34003886 603611357 487132779 909386922 197550832 273414356 252503094 463124330 148610836 322459378 47772186 586302183 547231066 862057339 394887685 909896097 581765306 874468296 189443748 970748217 580450761 794426795 531165901 767079757 509273837 660210341 548387440 587848142 10173476 927443813 899742668 945124296 918913127 949630205 332243945 424731645 101674403 679197198 620831649 642491867 72158877 553494441 266134865 668338827 586160553 972148431 206888878 647401564 54833754 781618030 667721240 674890978 561939517 811937375 409921409 993535260 988780630 999348923 491556454 731725463 464712296 755280235 588868446 759717068 523444040 614985767 374744178 461541721 35787328 115106168 12850183 743152637 716837720 790398360 724035275 872195193 845382677 976250455 508844001 588471735 445906129 994119080 874491929 900956953 94381288 708013784 299562106 427665568 109565963 764314216 120283158 519175366 427980011 719013119 115820368 840815726 605573839 662726229 8922591 371749350 287908416 715550421 174061852 797222450 247785518 716722782 682961132 950084998 143233797 926697827 240669187 362880719 54397684 422192194 384246744 852165217 24534538 954582022 354354900 498441057 460994448 772192471 535298930 937544626 33967620 848603481 839363000 931504691 675421112 691569804 16100897 313222885 26174910 314753280 93187612 418570969 263304562 750895040 93931238 226116607 214051184 280730356 38899994 759529757 39498528 836678678 65560119 311677593 254218816 254557338 38066744 530818079 199357072 841924308 608486391 772592960 310517843 419968586 49727861 805007439 168431832 392315789 276498388 710958709 373135516 529240029 427111233 477844515 29491578 324596699 313537318 909766233 185853713 290442817 139455255 634425278 442636682 734370472 704175490 729122707 18612969 35003130 24246730 820008155 147738112 741349891 300135964 778350261 135810205 660427565 33527829 729187795 271967126 581355941 7506487 483133298 88718879 877087731 364433522 456724359 321555759 346392786 279097936 508731062 340375855 575231175 494310414 796140883 609102951 966478207 173119599 897617263 721120133 929384368 862958169 984510162 592817240 604340703 429080747 648394185 67226137 502219908 460242493 542057347 270444384 866817764 840099276 865332002 500204647 543606296 72992822 291743978 97832070 646528437 400751937 605039034 510771351 673676130 340329153 884692513 84849686 416397816 71613127 675186627 63307308 603260272 427841746 840176357 173516175 426765438 316688537 626438420 305400770 780559799 637640406 682444184 58037500 876534995 160061577 628435948 382689214 839857028 126082849 707836763 186840048 368872068 86970531 828208612 230376792 415487708 47908346 545719816 542474901 807134173 31233040 817331406 590831926 682952690 306327097 805825583 159796754 716247410 496516805 647040993 252190110 843280887 825472995 860341427 675372408 870836938 485324177 604956107 266037348 813355194 778988807 965079043 438049364 883518558 433677846 560810575 128208082 792675983 265989598 369446157 245459602 251946800 103597428 220507701 44721347 303144889 69754047 588864602 287427657 736295032 603519650 817434049 754986480 924787911 772381982 951465675 51369575 825163111 770389793 846865175 728921391 885916665 251535530 421643091 144045656 613199393 139436786 450690847 37661858 187533076 50058026 501310867 419208244 611150676 362786189 502599168 239602255 922521308 85601830 641935786 255289707 364920023 221648096 492575954 49813746 667715412 79056001 922957646 109748223 757177847 422806259 530276389 290862825 999383201 42937118 845066609 226576785 459221552 271479102 889370302 63960671 957838908 924808731 934805878 605537257 815188979 500277642 909313591 583801679 604843296 241115700 694885117 305062232 958567218 846209770 850176367 154842333 732259537 430020301 630836673 90572690 737011983 496779541 936459191 740416373 876097231 447303016 827607380 730994921 918820767 182719243 987120671 813372392 958690871 78040471 935530260 548981490 550527386 527530463 928366312 746926323 863096167 496305818 783162422 487570424 868467690 448862768 503512130 235572680 811103549 600480866 776054953 91612350 277014620 53300418 600410350 113075780 796418532 10966517 351466497 261055819 656674920 583704861 944812989 394269024 614416864 268739222 498903538 294223110 320137320 78319697 481842859 402035158 795579743 591656486 812459054 258810234 497698347 294196728 676842215 251426113 320833071 145776448 780998024 124849123 820615570 516258686 527774676 164597419 808783816 294219524 923619430 895558424 979709836 502819265 743072545 127731992 276370413 88775106 653612810 196792534 904039492 759506510 826425145 486025957 755198529 718482097 950280345 148690029 483423124 335907835 907556305 528540449 885046054 62067614 454032706 335014342 418145096 175856310 222739229 194347146 323797019 315867743 513718644 340543667 584549382 559022864 872366765 432314709 497369967 262282672 544848055 503482397 738516208 246087072 969613047 722178324 841889389 229751358 811230802 451129725 658947753 369843364 425555081 43668493 599487560 285106 734037593 483928381 694314172 193648869 809959982 119765571 179338212 64203105 951615347 568286384 749694123 467180947 613236194 258167570 635521038 561811418 897158282 871732274 897840356 328545515 803718755 655411591 982867427 382751634 785517002 592919808 635306953 191633166 684244106 419052027 807733638 775904982 849250280 129383006 869909290 254334394 888029094 723583253 800383751 701275892 768287895 218501818 628722983 503319992 990743003 964116093 995616434 330086419 983231360 151243136 320147710 114420447 553720869 95183005 450872189 325328337 939324155 767653281 779963583 52808188 365897296 15713727 885283265 858417790 973559288 928213061 989944696 560850149 852680078 791301927 976243163 611316526 919553732 107523247 458589564 286250958 626550575 92886518 130863662 91330477 134551006 116530954 153681516 52522117 866675498 618409252 722858019 342684207 654002759 44037124 176359477 6017509 438524629 415707080 967768641 98643431 418437654 300359975 705754179 14747003 29068084 24926443 832504590 623507648 999401403 448362257 922462451 232539768 543464428 132723246 955048959 276687139 957141414 168838503 197259916 21475676 534681590 514121716 940372016 704376437 885371676 414451593 817647271 688723231 827654516 677058254 757891555 403832951 507582649 223837947 367445719 20721432 419304641 65416613 854144470 95246552 943668337 681052837 854377948 816734407 816788110 179371112 899289910 143723124 789546025 632145154 961623778 946570589 970546230 829711162 962183062 754056672 891737728 27015501 84274957 77001051 966034728 689499216 868111338 448293626 551451845 26706088 346349082 44367025 962538395 641537388 902298168 466264522 878951149 155987127 601270874 482185482 832635970 198432556 390588180 102195607 188544762 27892194 922281615 872507722 876390550 430732966 630169508 258014233 893562327 350788556 980145896 41982653 178186268 38552423 278980734 269138228 690824043 418216713 438022725 141349471 606907091 34779602 512091528 228920059 591327989 246789431 917109683 739253518 797652127 685743591 700730458 386852031 747202824 82478058 483145528 463193971 823584284 414544762 649429168 7325052 108633071 15006534 695204716 314733272 651737042 432842440 949433697 30276435 111283356 107018605 232254412 222485683 669577759 459687988 652419933 17405825 927910982 77911318 453783896 449246824 994424872 370396995 901331936 752295320 853716011 219677470 792677363 602698221 980823921 191986280 358856791 49995284 944310987 117124931 825263123 469033899 862576063 848430438 960779678 454510736 695248628 302822511 734724331 89895083 591042529 282453239 473401525 450259185 870361473 516391051 835439546 755557684 782481793 567876038 906212507 227634507 485101096 164542587 381603702 136742433 985637415 707110767 818863666 75233928 613790606 375197585 623832679 346530193 639203938 358673539 865023429 108494266 917004557 268169572 647872729 84118717 862763931 658278852 855442957 12573162 79865196 77341029 602016883 258296131 836721462 31463442 205224123 175738105 623018243 604180020 638046974 115128490 918778923 307229269 889084988 705548368 848819563 276749867 629789484 335682250 513779532 289309602 462792053 344859345 814487430 251486622 494849239 58795808 785479172 7364933 677051634 522041765 804804015 750399893 979197201 577093137 694311814 329510212 907439566 853410729 894753054 707788763 760722523 385737779 932506330 499646094 659412531 195272659 883237536 287976886 680965880 273460921 290350718 83616512 502640543 339851117 971785598 695138869 953044699 392145470 668297244 618918202 776476483 500653160 918153452 786393078 974810956 43337376 776012893 751245120 966529937 618671558 961730772 534089370 561556321 65652369 972928173 795203420 906823386 575079712 653278724 642156561 905090253 838026793 993451477 473492274 851343345 411202326 751089654 664674950 715863562 399086676 746914549 664131213 940061058 448252939 462081584 284319629 797575603 546781365 888697673 778537132 967640987 749062602 953912263 568207791 864879644 376849742 589263232 405993297 622463762 434439923 442699189 64356439 703246677 156915686 983120074 503998420 939696285 19657021 386454111 202928317 606640803 190782912 733335709 309610071 312017581 241325606 887668816 869657812 950574444 560848160 665147083 64799782 220308167 195278195 485876387 25269579 438426900 36513152 905741736 470010093 582706645 6800247 59869105 13717977 588714569 31629492 523666916 181550560 468024634 258616813 454014383 232672376 609028812 208427315 682255511 305105928 734045306 227306685 462344254 341843502 553201681 425457861 500872623 469350730 528317379 31933796 239091067 202329561 252764247 78169147 201879089 79228749 534646395 367022115 702942913 328694041 394170338 341448295 582030478 178792536 603602922 129672329 140478871 80100559 636610134 330663473 419960549 112203372 113878778 30861713 748822235 671032175 684784408 136174217 793655235 611188124 871006127 184724951 565019861 304093580 317267976 134382268 993002229 395285980 507479418 333602790 755821754 380842261 916268064 211000083 461136180 45111112 102300580 57584622 460699048 74123994 610976705 144538864 573643238 104070717 322407896 150116477 493961856 258652093 396498456 252823105 298457577 181908125 271420657 134272984 204675739 130846670 949783403 333445096 674645313 520618980 949928587 336436475 863876768 128790897 295155887 60525690 244545973 111076632 254757688 215413388 217836754 61880862 913305679 346459907 733743435 607385368 646080362 70963401 779254206 233845330 482040858 54721290 759987681 517683859 772768407 224791609 264671930 153211093 408839837 25792931 901505557 180673883 595660437 405435181 646812387 138217111 852938749 601366132 937576023 157808394 757442343 637948894 720083176 307107501 798367260 605581049 642286263 335699280 535279205 291364667 445328194 392263136 970129494 77861325 133359166 11035285 863459980 379724191 698684609 520204463 931547791 675278224 963144476 635560739 646069379 331999188 626026759 546380506 647501547 61444582 868412179 399518077 574055554 530332983 546574720 209078569 416799525 345331587 609024902 73332896 364014374 289877787 932836435 182392565 388150095 195821459 983543796 763015487 906559033 353073879 583505061 36002924 636076312 477934717 695987767 653756440 981836008 21461082 722885298 518276296 929793772 171823374 782328171 250128398 830387943 518832743 634616038 299730945 904275687 352472097 663842343 134733145 757159385 128113429 207402877 64360477 323705770 166770611 721766543 498730137 853092224 690722958 736760972 151858409 633698924 588988056 806608326 436396749 615400337 449387198 987634926 882182442 985378360 417876639 842404171 464295984 677397032 145637096 188544560 97487728 585215249 203915485 449167678 415309295 987895685 620715273 691736890 72029779 778279266 333654244 962558647 942719957 956884749 707854476 766839911 684491496 727840798 65362858 445444134 314232375 916424346 503912968 508687636 35921480 617544508 104523096 152535025 70929345 209942038 35923785 61588353 9887050 967441984 797915369 826531469 356979256 559011889 286000299 700267965 616185922 742132854 238168885 409451425 365426002 456575458 319684099 637193768 186898351 331284340 299137118 933819554 770467401 805563671 71986208 853177058 502828174 662998912 407876354 968200159 197213338 820148243 46491103 217357636 84196003 550920030 106167254 259990120 14856976 781305073 297573376 370385233 203379804 826989058 731062444 858652915 44389389 943032028 852547123 956736776 45757421 564058792 135487779 648983808 246723274 824051677 183950756 989304891 791108369 997948492 576670654 820718527 59195575 393112356 72506518 174821999 66762311 660853218 530545693 732395409 488126893 992771858 592887308 924159450 598978128 694985892 552480408 988949611 426266536 844537517 356011303 404398347 359030257 384100488 94137026 594336401 25759924 336141238 159104597 544506580 257600253 490368442 153877445 475873722 170542564 533154010 104923233 265820570 257934583 634202763 326224106 584298806 628556 339560152 202477414 376067105 248020086 800461600 667589863 920199986 581029578 830437395 698569416 711668515 198966671 790418084 653976485 827842845 7883992 195328121 87177940 756882735 60563869 409108186 21207261 778596571 235705900 507077559 503053052 912207151 27339114 712255163 289256054 901325993 393773598 788505102 4075579 265532309 173065301 289570837 115341989 867481158 118019882 595974327 141499428 724142661 4047007 763697610 553156013 881074412 570588569 693308322 13893826 616857814 212629719 539642484 445813346 617083350 195004974 355366805 128643688 575255870 471088584 958607356 342222847 539980062 298178503 865487850 674350076 875395132 667623384 778158171 246954292 894488039 789338468 791685247 21361289 164036309 89893603 772074467 547271781 555812896 347076907 861786451 271863547 443600583 364667846 855323262 767558260 817445787 413328012 976653164 49384228 510294932 152592011 749786502 381091446 894928209 285166959 857853677 813077043 821280628 295257861 874270321 181507797 555498188 216891226 882009810 213528148 269260487 245867086 863567156 372199802 856370914 487566653 837624448 229576524 317121314 66772771 789624839 703637398 733053551 721681981 777425144 202063490 858408493 456388984 661096432 398654117 649374062 273695068 691133831 28073550 366764532 10172494 975008779 447096011 598681270 126573577 461596197 305375202 524746280 19653136 154062877 80247983 561243306 240417014 693913496 104679263 223609965 1156992 251999890 85120356 618286717 52795658 191838463 139158446 579694936 142431259 562957705 162503562 939329582 933471020 961090982 517247885 615453383 154225812 258390982 245882089 463356319 343400294 743661075 566746555 868945578 229801852 520127738 246715245 972253714 243084118 405209460 109200546 180505650 149610610 860392067 34607021 751655593 187499246 566239536 40920450 227664154 181174890 188145433 101804395 848902704 289156585 530816644 350521288 406240291 74941146 742824389 275790606 591927135 222325646 832873630 456705143 729017316 420887261 606073345 301107391 367392211 357421376 629844437 207919464 230362205 195415287 495847454 338082315 950995732 134260949 479615775 117982612 523022058 255788880 499141943 6739653 258615655 24124976 432216850 193816010 790600703 29986968 592254999 364846806 529615484 83576805 643693678 186042178 512132414 279380426 650492029 220939718 755395593 287908721 452006793 96716557 174444836 21161712 776550269 211018328 940305852 440309119 671963391 271529913 672945268 23292934 51538959 34287012 402562729 80117315 528551260 442412157 954387843 67474254 174491067 36941033 868549736 234361398 418414038 265141935 740923714 282506271 377088657 180391364 315391544 285221644 417218677 375347995 537820996 148244236 977886120 874802266 987504561 636182648 636872317 141547647 358011729 67611606 608325110 332542829 641034648 452827788 496777520 109812316 857237210 787797529 793495173 277973019 794351806 338080583 682368865 486101794 803258287 231549419 703839072 239975936 921315473 177626028 180259608 160289135 252664188 91669649 812507405 20507778 780474759 366188467 376153961 24985193 408045832 280541425 438705768 177746801 958262907 949493984 969280755 186942522 675264046 651623071 727908016 716460993 970590745 635411242 669498403 306345645 505078657 339630772 796053738 329059451 621576678 393919956 927660472 333411565 718239770 202533907 262429542 146156838 198965321 144136604 561173888 184278968 994004338 765235818 944657848 315826368 890222709 669369006 938010818 374320647 446925174 188434348 573104063 83020959 540970787 309392913 403852072 58657108 197430049 110840001 254685382 11099944 125789755 100807262 971880063 527608193 928508694 185586944 975792744 323293453 509387133 42543716 330237207 43648802 839245103 682933670 840030922 591836602 753104360 571739344 842968537 33490887 549198496 170101047 245067973 94494448 282258615 93872588 985409949 698585199 741075574 340931684 719267939 487578772 649410260 471581805 672029856 588735073 886402280 498609454 689293423 655194976 942822598 132079263 955245371 203296451 437282943 284155931 387560183 327351675 689330394 458023791 656098346 490507610 731932156 6311277 260975403 103974997 690156598 235231126 440037585 6637187 676628349 226672061 507266347 7543051 925790482 645829863 828229839 677977397 854334187 765397135 852091969 537363334 818223841 781616186 979843809 661262836 869760519 254115817 838125187 314087208 535765186 154559077 277392775 247296972 775064722 664636347 827127859 68442995 163472351 141415088 176510720 84587672 899975843 438400140 492430534 361158174 564671881 510188092 742563275 65342846 842456785 507930653 566251550 75737757 774028435 534317376 956890578 226876946 321909831 288443322 299002375 254997930 336837947 39393355 842871154 457273629 823693201 86789489 330622903 180322673 710065844 68564980 888171179 519942301 696263807 324308356 902422724 106828400 797364046 726758460 818942396 372737236 578699644 137665871 855535775 123341118 607729773 481165065 711864108 90860972 197609287 50767944 346996316 145618260 656986196 298438519 391273173 176705889 351835858 26340582 466028043 8098985 889680502 291512582 825003133 327502145 533866446 301336711 948982555 909369511 932133013 294569730 554143735 44032026 832640211 582828733 593625449 547142307 770691568 324375671 469929959 403799362 775451103 258217615 432901297 305503907 990149046 255479896 811759912 312498803 441994123 341215709 946004124 351932369 971683800 410581230 896807244 19395694 251924293 181883397 288382705 287277279 554847799 5586718 630372049 595973528 621778992 417830166 624685245 214583893 245074455 26419408 491043868 463391051 817336697 278725417 631498254 189297980 238318396 57107343 568464311 184514218 372082289 114671606 991591516 989995198 999030376 431544067 605209549 275445380 368036415 110714785 642042085 319679826 467447930 303452985 523382961 14655798 600451106 564223120 957737743 585903113 705833537 689837144 729074502 455217142 623995814 416547851 768920980 85312084 563955118 190600465 638321936 122035323 864837415 497596983 728321819 286919839 725089897 681814681 789397701 87304269 303982976 184695100 646015804 242411891 910499825 737614865 850537596 518931559 959783132 664100375 828361563 22072292 706797217 590021467 996689276 176433189 271520975 130254045 585488909 404166805 995992751 630360095 767231071 462936778 939184582 613398760 667189038 387944490 700836976 147810522 498989845 291297772 656892175 515152259 972334687 19316159 798011246 246180275 878598920 399039274 855441524 637227173 855001497 241112437 635840488 488452884 991424250 838351908 909068913 419476505 982107059 269781997 969451170 932554976 955235765 357418979 648671932 401880976 626629775 176236212 396899525 47454509 681822216 337221758 580126537 60448341 127696477 70581896 910369250 411053019 912708821 777221848 990795480 306503375 578445186 219356468 956443938 718942077 927870361 151090332 587370268 354379244 778028727 107251367 342786644 123685873 186284115 86552023 382278357 70731740 124092073 116429824 243884096 208226204 274019396 133343470 399760496 32380062 987861808 653256511 960878158 563265885 719324497 655276307 822753363 275912344 646041635 350183927 949843374 458373644 903465419 129810582 719393005 34586647 593552600 560199127 588998312 159916143 283698055 48857318 659420505 470468440 846776908 118649250 794097035 698726699 750696895 278421853 684264477 436234060 495478628 431978365 865532082 392409898 786985684 306655965 801650774 558805285 808504920 361406936 545845570 416278808 590161032 176544245 348726606 185495855 244549326 156828127 663433557 408540113 793767129 639979431 796399094 504284982 684117111 112961780 765158666 57616486 525708671 51893806 393045611 381983025 405752843 68408981 410204017 120973665 681758867 294133480 529172064 32936360 491038749 131362183 749503245 672442007 981421915 217724600 604990269 330493713 771092197 68007039 811526747 572844303 947743990 117908316 934064248 230173204 644432924 529901852 827216934 547857522 783012592 514454295 666498933 25901940 441499105 267314933 976662726 311056080 908296394 29297810 900810594 557084689 688553514 675923456 746424807 149182926 751659866 447075599 789819626 623587330 913047421 227485778 416447417 182032208 908744031 326265056 771650564 198235767 779115210 771294993 980920861 492104421 691283437 433135289 793579703 354962639 778471299 21974477 719034200 37053437 922163001 127729689 210413739 119879518 418718408 410042105 915711101 177137410 406010361 185972001 808275289 271130965 526552636 247525618 699311720 281494190 779143616 60457695 647796705 368442185 378363808 250521205 860717840 97038916 729469739 316649742 988025412 406010764 479853865 451864736 456001480 242358643 711165866 539420047 646851021 304053888 601462994 133564990 848243260 781363926 890412679 889592561 929940700 441821771 956949740 911516263 959313978 532713032 562936339 258126682 924017746 49587149 421930866 87936140 685019664 318735884 531610244 165459008 956391016 823218339 852099989 133710274 146607775 71514880 290216626 40451976 324249981 323013796 944660805 873846515 898156320 332258702 370902567 49357385 635120786 612999157 765635216 308105153 569548534 466800838 603952084 310961786 614923904 88393811 231473031 178721926 746956155 655877804 692039569 555888903 663514831 222768325 305284922 32810779 572876141 502422485 797998950 177801588 884692544 450970071 560338775 291878589 393354073 181273875 825117985 279001027 994351423 631899599 862829946 791742145 845786064 775413065 974954682 752287452 861416775 690350027 891813000 162574518 417928981 300838894 805145230 235764963 294759212 169254370 837257594 249313911 986932240 625806656 818521889 729487005 953140714 636196482 793312324 720951012 863284983 391567867 717208990 109453127 620359551 450597482 886660790 25212763 484212258 184536184 374831066 72847 82623009 81070156 726971426 107343775 776467693 679229467 730435828 324672760 534271310 320864073 819502505 789355705 994558192 249405402 851631456 248737553 654390056 135997121 303423166 283103543 465695720 323361369 587762349 81197648 924225914 662014553 948442503 112340247 638483737 603760303 968448911 22611321 724056322 18268804 317038818 57087909 499637129 176134633 487455035 354073492 612712196 97245972 542451341 426408494 471711760 89400510 611906532 146649934 278490116 263382569 379893992 132394486 943146266 882293673 911383967 14854540 155991506 82345907 690026281 82288017 643840904 534941140 589521694 171138073 859655218 123392968 142390075 103164823 119640272 39473902 535247973 299840319 716221104 364072752 590354674 575251747 603761317 11700641 667894720 398505737 750093748 421872303 907834580 875792755 967386840 704225118 760805125 126150224 190032518 129287397 705484285 38929494 113101319 3468204 866632302 74551783 254937897 95663766 542926040 12765148 752001501 360370354 518705523 477406424 670139574 328839531 929865291 304632637 352648564 125113459 894017914 706420033 906715672 722568884 862134047 21744133 669236153 465712538 581306142 148225092 369042168 70265064 742217801 261013044 681902669 271629568 960237257 884802582 945124224 214910321 443086675 282196559 622845483 14466019 144932390 97623481 974545668 832184782 835664215 223891931 397910389 198227575 838637862 454655767 606083130 194199874 892455387 524924038 962524187 796829377 936283083 284418498 547723034 29158849 719383703 131244252 596348156 480512120 928093777 54957305 423205737 170418755 732816612 406539352 602662942 44751869 712906053 542958182 925958933 556399010 820130094 557387050 708174148 221276035 700195340 17314562 205569159 6203759 358210671 89267695 906272913 115462786 176253423 86323797 198657188 33781915 987876091 174216117 250507663 158563601 286425265 166771476 296047835 62090199 547141171 207065097 299990241 136301541 663265064 122272453 930200080 10063239 390688299 73705847 154261838 48298909 305846868 133325773 432115647 256904532 354337571 244946223 766872424 251230863 425876362 421209776 807059250 547499330 900601754 66884867 687921867 406903891 806538613 341922279 400879193 144498815 182455629 172051815 805756894 52455299 493109135 150493739 762344924 289657678 564082799 479482967 611708507 360606207 714549903 366590276 486821163 96380228 358301287 174563733 905801527 709110089 721154509 476264071 763615350 757193409 894014019 878958147 975429548 613338903 769316114 94553552 648833990 337342111 369445582 243814662 456374502 42356080 647670288 132382466 221839746 101797529 765877443 255745373 607362739 467127045 736205716 205634473 698338187 510866570 846608233 659869329 926699960 654727884 817013075 51059213 514657377 43248075 988289994 702172107 808294597 201366312 420958908 216359570 264569027 132905844 454928698 387595830 565626189 22389883 994631351 37721769 861314227 398604856 647065440 105675060 234289383 198005169 296986397 171662706 929398465 782298261 879910347 437680591 574675421 220107433 695672439 146636818 860183811 194545641 297694263 262537529 671923957 453199888 474859053 397336457 735212552 468093543 513269973 502251578 765334224 727497429 907537390 279063742 431078393 150519120 893559445 198186885 314500982 197258647 743228972 20491268 138261573 48087836 963915183 144968215 316031052 33943374 537465569 156561552 953979965 316211311 744080891 181523433 656579499 470209874 595366691 324799897 605418894 441516193 445226787 273717836 742514272 341778643 542355570 449542039 866589706 346165682 398866059 382109360 424403430 193242705 288931031 65132435 685444566 653179286 975772096 853556857 872778189 40568017 860577332 417686057 923275294 643056604 859028516 575361970 980944319 6682842 228950408 49649732 784355293 28654302 840779881 472865683 539003516 335580390 761521827 677272921 973946523 351762157 571814868 241418512 569431801 42151469 701824257 68773186 660641744 267548801 455808777 170815837 490593789 238828749 669404936 620288958 754809695 580355326 974835813 695950212 903856125 776105648 950617061 576834917 639901497 431250064 731493270 712163851 729151153 182011740 289845309 251061038 342658816 320945364 473086472 284384603 465377600 274245333 424670981 352713279 793640741 638489730 919895690 182836611 693249551 410545222 966695792 201485747 325684360 224953227 984719075 87259776 233530375 174893482 646675964 599523788 783786242 575026338 702987242 240845474 701178039 540191005 771060017 770867840 893685808 588896936 959284685 308211950 920608153 70921673 549656010 241709748 367124183 157594003 671732307 218195813 852856781 221372151 697030839 522510884 736405470 667346357 846777955 266938021 977646393 141760788 963061398 147534764 578739225 205658836 293753357 121916499 347907815 241015912 672020974 151694766 682903514 427463261 988736724 945222089 985810871 155935470 407857335 125287293 413200624 363381054 740050019 394037385 787220176 7517219 659977643 189611495 257750892 41398573 58066015 57493114 167339823 14798229 182028297 132454461 333914732 93729336 648641998 451159240 739005100 311769179 472526164 93824037 102311335 28061477 837944981 313813952 770955157 184120894 834221178 581852330 583743651 83387455 833967410 392462729 774385935 450776664 742030004 451900156 495582552 276221050 309309775 233505634 829474765 200170787 307380397 83066789 280126329 198511942 347150199 229775958 663215705 643299747 753828457 525641061 560617267 195123323 515677530 238956155 623083992 60664045 895719305 278710631 302298814 120394282 902103284 404575430 971649212 440875101 736914352 551588814 977469302 258799402 574209760 102262828 988984507 493711194 728217856 96359823 729847523 29614258 188514815 61599732 837578893 78034057 185207498 155219563 387472802 379623039 399801274 184967026 412538062 67316271 676000392 369697539 412951249 363719997 876755614 343935607 638995703 268034654 601335622 64067670 581398611 71350140 220743954 25644336 476113593 35010296 335280261 261127485 550635551 492099666 822593389 26351561 975314927 425696692 569107807 103728970 612439772 216282287 865438738 738692478 833367462 685963364 864331975 495522413 996466961 929418900 975169403 162251330 704401881 117328108 741040360 724213380 736408830 500715762 531032085 262149015 364757378 325109486 789767875 424997639 480039582 129742645 429466291 232057715 297057031 56090106 798166048 27772427 331817307 211867584 716027888 608004779 966223646 480355795 917512279 290783113 374748635 329226607 440880830 128455783 189750743 58114941 220005680 114650274 515534307 286273353 353023238 288665056 399634961 84736623 949455219 219590558 353068076 191217705 695457182 283701990 477649310 25004220 407254404 380268722 480759494 207993803 614757228 186304342 792522051 655956676 783764419 231589343 762240983 453654018 637278423 7927110 22395711 6326793 757909056 474532330 602941265 136393195 845818867 601770506 762771604 558110405 579541884 127833143 130299325 24256438 795875623 14810367 960009940 638262493 989665231 260656782 433428194 75037750 883664298 475707763 953771992 281088638 600736946 22963066 619987525 126358709 787838776 173902814 466758235 141271767 712731474 507599777 640372477 524784916 545549766 535311238 776838977 299087120 347833599 307390225 615846276 35424683 550213644 164498081 456130934 335925183 399039786 238670839 626809267 252852555 395101301 263101745 731229480 600204798 767364146 302611955 767001733 236660496 835797582 245740366 581579570 568051357 893677492 721775909 997247886 190480615 820515329 818636720 893256165 586863775 640201565 545795599 912454321 110181557 435105629 406859563 787507158 364840223 774339311 112648993 167315954 130212371 870992959 851296560 901769777 599006087 634914390 50276991 126433564 104838399 326008689 6596184 571580475 143972736 492492243 268283953 971556587 206506496 730350609 602698804 727057125 57223217 569050435 560759919 623107827 140311860 203727461 112996848 681864558 532343887 873078677 866297951 984987765 281342061 865022611 191670100 434589925 347630684 699131418 494740827 657177268 420895946 793404219 788052879 903642678 514740909 941233361 774337635 932562007 846001173 922442965 261461379 886156119 135807495 595878223 53493573 195264213 120473632 789852859 626442792 927212348 347741928 803108625 787805619 959804077 682258701 970717615 53261188 982184599 911214160 920139564 808196700 809861108 705066216 768945688 714811530 818152864 741239277 991835671 604581553 751883608 477133882 529279903 258172148 453176425 255922359 448117283 217409587 615043320 575070725 896903852 283942923 531510638 238154415 397191425 291278408 732717454 217695723 398345757 58007270 303751764 275215995 838822232 98939457 501044497 310745389 421165718 369753774 697273087 554699386 566144734 224747137 317814584 159078756 543914043 467489258 525766790 357655721 522547996 228030102 704615575 55518717 618486347 248710639 895317140 707923159 998346507 914374390 994889785 142830881 192047554 133156652 620933698 471033255 736060337 5850469 35989117 30622871 836156372 231214973 337928827 332657366 855236019 222932877 781919260 515188245 628589084 535566315 704594930 633527387 729883445 413151980 920129690 439787528 879769587 538955341 965486418 186249760 410329988 268828280 760896228 526547065 723618100 169450675 864852991 752145873 988871147 834848773 944363740 277334525 617104962 437071634 526262538 63663949 306267802 287941971 946439374 872414126 976052299 930638123 947379721 189356186 750403053 373652327 850209743 182071124 850285233 391445746 606242180 87300144 471609682 460664874 901211689 84391700 844788450 655538210 961978551 726767762 979309017 592974314 977503338 53643598 666309583 560848068 867234232 330701148 849014206 478237697 498241543 430652924 925679109 4218173 822420983 173316234 526037758 511253004 823349422 746234927 787248213 281193918 414245224 254847170 388670129 39050847 812314332 159119811 249371360 200270477 840826933 756355027 762724820 749212374 867187177 485645166 810199095 598314561 971087187 652401248 892653803 376493146 530359213 222379730 420198735 7699955 129244445 37598783 474281240 173511916 535840074 251878980 558770308 599705 964940564 196960660 291642371 127097288 506186263 405818277 622717230 478180140 850215586 542013156 581455424 538842431 799451592 757249255 904035987 411078479 871978861 176506888 337570124 304627168 835005700 623713202 697201008 415023734 775704310 526945577 855779416 843957407 918255226 618324926 861923024 816768375 978117414 746689279 854636377 524321981 781245018 61522812 251786843 119468669 922027162 663749059 869752237 831288486 871618690 99401809 786713417 29650045 994121451 165201357 906111601 718235906 915233938 328983577 918721713 275628976 379598423 373749807 391668929 258008409 349298004 154502847 212487302 165985733 305194979 249638473 512884908 465739354 585653952 134791725 923094130 856387203 964194058 234528106 585083166 462215518 946377674 863421835 905304398 283163904 677154518 171837698 962907250 494051941 625744614 179266121 570916608 118384210 893541406 829206039 994078700 952232849 966692554 212001227 304215422 51539861 826437226 133609777 769626734 762334617 832050981 116595749 600579053 349842276 872361336 79098313 230029177 86431647 227197421 117974463 501483606 234679052 269510930 19884163 656164627 442039040 604771960 163115990 965555087 712244832 928260792 308606660 825860514 460604390 650865655 85247600 804498483 794122034 979698115 751453615 846150580 748238693 884529591 451699828 929071551 429414007 918166209 542483686 862671658 755693270 877458277 366886007 552670120 359701450 844660390 844230991 951787253 527137559 891113376 644652278 675105275 350115873 990406344 301991394 978695589 539596953 981767139 870041506 880888602 798934484 889858785 121319026 603882117 126710493 873909068 710131331 760367525 644850566 924688901 379224275 535522063 91481808 543909154 409179128 601457674 570223395 889637075 654633383 884729860 68598528 346773596 182686087 717973177 133088415 276418981 68458580 320167987 214718351 295854641 118033912 895826354 812586103 825702073 306557047 597619556 496813946 928712961 438718640 806021050 193704099 833327658 307597854 794122199 213037679 510386601 377969650 984801572 51752704 485039283 270314103 649061228 605923317 610242972 214317662 968178372 468515632 502303996 362281492 495716303 31151306 346115325 159690550 911857329 900216717 980416474 433739900 442833808 395759781 812940809 393150705 958819807 330946844 635912328 223254677 743347120 463840374 767974413 13913272 955935545 423076652 614657617 556894239 963851690 169873472 625294939 267072394 691534569 62080150 200160450 27709791 753636321 78317593 865668806 219830538 701324996 174105548 290573552 143309220 409852737 174740850 460414105 249709453 603307562 298572582 396865991 307249364 992897036 657517953 809306332 628902816 820382498 56123736 462912601 391475975 896072500 162088593 893430350 226758772 839553982 681133084 818461417 632154081 711662041 543579990 670294956 391954035 789656000 133687757 526186414 337602618 372484416 136666261 474128820 184873861 240919509 24283357 615866544 611221104 990816765 534099935 874570461 25594874 365107059 247439261 805850061 136789847 171004670 45741796 596959003 394944027 437183435 213342783 550813875 543458113 810960044 598014568 618449026 407151002 815642613 689683319 692499932 457300948 984497827 631216944 895199323 878152715 944515631 463871943 730342710 427916748 552268694 140939393 952115302 193562747 630418141 604245110 714968710 395268460 678463624 6264863 355747617 100716022 357293181 170543826 844338344 458249375 676735425 376173631 674416954 463463268 513222819 426318268 831813129 134108763 192034316 187938023 471651974 58391681 998641406 939487784 959585999 584627821 654838846 238907032 444186469 299674853 515915113 440162672 813515689 805242915 810883622 148344218 319691593 177324431 380476062 353504404 544826296 273883987 523165518 414589326 567395927 280832845 467268804 115930792 427750772 198922400 612249679 227831977 486300055 454269242 825809146 83996067 121942318 13447770 774802507 472561444 730885937 545328125 988363330 486104314 877472542 546076321 800869058 98119260 518623857 473633285 772809071 180358755 722788714 603214299 692229097 218378670 845782770 130068283 658461280 251518075 438112295 158127117 935034451 241449176 925994517 380411952 434187020 147424260 945679822 935831255 978827876 110411258 914633985 339786026 892795243 828428278 875399465 369086692 646252313 219223218 898511740 380079746 463402011 123488239 752832869 605380916 776609716 564870079 843950550 357928371 446679089 387860147 420918547 195827038 296309625 95770951 908891803 213973147 669123102 308951118 406803905 337468826 427893574 336248960 710324998 183998727 258265372 229844991 595008684 352070734 971786262 342919741 606182466 372092484 582905769 224005720 608221203 312726087 856778547 803212313 989793275 306321611 864586752 58756667 201737583 129280466 362816361 97006588 738883408 663883952 719921221 533260954 831013238 477492203 506849234 258869118 902356963 427897171 947128411 884344553 995491067 979246888 986445538 57888471 68421614 52089525 214875583 141099925 507810708 28813296 299815657 181578298 656682026 265171542 945456777 759295569 823117078 717903164 932548389 187721899 299406599 292144281 667031316 505325979 726582325 397723875 531591060 39252452 740115207 31307047 353116251 113247760 787127499 52432255 900322601 514627166 569442549 113791587 477256644 162266517 990941933 729616448 818419510 807332884 828776889 86895972 854745273 238334701 731818176 554631617 690418466 197103865 866116871 485159438 696195332 430608981 754283184 497410757 635539563 573621826 644732342 40943745 767371237 672112476 824501638 613432899 972748074 245086627 639713024 110143909 361821845 120372808 542070330 240415195 250467515 48160037 417718712 167916801 428968278 381216443 784723652 122451943 948270951 945630701 997204679 62374465 864651368 645811198 647979168 128497175 747306774 611927927 782035757 416177510 699831611 151327050 804993636 796185612 992903604 457198887 477275053 322049240 608285038 409226277 998634675 242675631 771786416 212201511 534197377 319279230 730221071 547198939 818719022 377456279 772939685 674685368 899439356 771206067 773071392 694786922 861763867 441549393 881766315 353281085 600515779 229670222 387851694 134209060 240715726 72149054 953403156 890047631 931881268 58186446 459632566 143121572 478381730 194564710 951050762 728390153 855660470 366969025 686203361 667959532 856720512 660740193 728099704 576289931 788995540 537145236 730197232 610560808 706358688 351792774 739340230 716667820 905786928 231386558 500386090 191921834 861527955 742135951 982279001 952180687 975343501 23896388 958144690 63567979 909627296 551461511 916153537 462537584 681646336 472639890 864022983 372031800 645044944 556623742 819917707 327470387 858481258 473402651 876282084 334338750 573853388 179537299 199272802 115773256 762026419 194524375 394333917 323408413 724023895 333127211 750673626 720049328 843959816 632871798 979883075 530134851 819804183 566106042 595996467 82175398 947454864 300526136 632446821 85110880 951929399 426328136 924044575 349447541 495728805 48423682 781326749 379201943 500370712 131519832 865163128 12186989 278632219 190505375 414245242 342169437 597226875 156186365 842296540 71647498 128395304 113787412 511311051 501674538 519158041 326908796 992930189 934321892 965120565 299424685 420737340 205853537 793837805 765070474 965524766 451648991 705942929 98123474 890571505 48005307 719680556 642797664 997280144 118220139 783447113 337789819 398205945 47793070 835525184 156386726 340115507 231959451 656820245 405442003 454865902 189505116 980912764 266597330 427506139 331856556 364310859 258069916 836789596 504830283 879513398 595217658 970301179 416649159 859801589 803750891 893460797 433746431 909829673 754938872 761577668 688933571 823557296 458968107 716054566 638676001 829393087 528254507 708493335 182217231 823728466 808051713 921076175 910839969 958025034 394418880 811870885 188454950 799617366 449848502 496436119 220526815 271340232 228284149 373420616 342904394 925083461 435133380 880271357 633025663 801754407 601067897 952186992 303929145 448938252 68580896 609044878 53199725 953985062 173128952 181033891 62471327 343689735 21820886 793299014 42037521 962216122 483432453 822213934 332505162 989680379 980006351 982636001 615654089 681056168 416814027 457416541 56752355 809102606 226298658 450347281 329053762 954680874 850798932 933359937 200334615 615280832 176821884 528509151 510169247 985226401 785175805 961034025 451572406 506821496 431098382 948297869 120632140 301015867 153549871 238144808 57049815 483071328 447101748 975545217 944500905 975386509 872659870 900001503 690974544 800150808 275214311 643329835 77673952 140793026 103944471 933718408 191502918 674547903 511431147 974021660 628820084 698768915 657643847 934769178 791302061 871182149 772590261 814201750 584063576 698279629 15587754 587169379 241138466 623316342 288009819 388684178 134061231 818140620 4810426 597288902 458711337 930562217 737173065 748106903 20828507 646626852 441895041 743798141 60814985 470365282 334568481 439498956 259193729 345273074 72760786 499650712 162601645 541535586 148955424 757884801 55192256 631111232 311175579 573744491 170144349 869648058 754010738 866890512 843129830 904892584 108128236 591243682 385760598 560420292 483177306 673036993 436968853 717548244 333272685 838502614 93552658 849515358 323261646 553561664 313630657 396023686 198962468 535604279 382783219 959849031 384034676 423345160 90617455 982436639 756567454 949484730 447417414 586710154 360722559 379354529 354358814 579485380 433515285 470579616 54109010 781355316 218143456 590037343 164140817 480742427 419902985 951863162 716271125 884303147 361157417 416159596 326408563 880947962 260415764 887346482 689902439 843807547 562456281 827181583 187317181 670357645 132480873 455038675 346276735 480738698 349309180 592133262 296453598 562028178 560844939 749152581 436908336 725478542 536129257 545037320 193777248 895445516 623128521 680307602 133181499 760080472 609586938 628765162 261686627 989485876 143778010 793794127 540491548 955942477 445119782 508839427 238115224 809323630 321922458 928410387 39266484 514283288 257084499 356213897 342031421 433656702 375322372 948516357 870164987 950563886 193672282 984275040 549603150 855142517 817975561 820849188 198799882 989653787 545148366 848503131 36264422 282161711 266449870 269864244 140591970 445684022 39353003 545659901 465164938 974034150 417489127 894593999 443478679 685931607 256496774 629954009 230411264 331313582 221212752 648569710 225533404 829492944 121512092 768886926 119361354 895893237 244674140 425621203 266816080 656307541 216974354 901386486 57092205 622024795 13441807 944418751 15850633 426096972 222943254 451996804 379613105 773396060 17203235 979594436 900568314 911801298 84786334 190907069 31363444 132405068 25663811 893795745 64850492 804439053 733452458 873176227 826092188 979445023 413952857 463576782 323434124 421290624 253808563 792640615 100583684 950115932 192085965 450980024 309566491 615899264 472749062 512808707 10140925 768240847 175004851 818736603 610799785 942939743 47885630 945372098 503778765 778599358 631598245 927331371 11462097 645752839 20722656 227429453 168987989 183054993 14466972 270040279 251877116 608410315 555565490 986254938 350687102 974262795 35017521 417246895 174625122 776575657 535697849 789365326 80427134 551914752 185863651 206175828 50421486 704663629 128704250 705179924 174486607 358677291 215543976 656296100 373432395 678902895 313367134 470901344 218995717 392682833 180570934 937962595 932812644 944839531 331795413 616634256 4280239 511101634 397485386 928602269 631043644 736803766 386338724 431505309 74358610 316609260 79298652 847584161 670387097 960744366 817885891 828893157 495830586 760505085 197581651 758068009 739628349 821523813 380649443 938789253 357235686 546150037 438206224 508821163 109423620 908226348 48356479 826522877 317256879 326641951 70926403 376900862 275397616 716761261 663008386 783503493 434305509 865275117 647227204 763202576 712403499 809797468 206048503 326443332 47988752 790042672 777505610 802761780 87317377 875361209 713132496 748013851 435440294 647248830 348921818 514448999 296506181 681845456 104119016 860261025 454034157 553546641 57358315 891794485 302052424 827731016 386748216 762128318 416809962 514522973 392399027 985855606 751074827 843151957 584680743 687426197 488485369 682124738 646655304 816836601 490642499 529277036 488587202 777819823 277920951 661632195 421416782 552680582 29117775 704683665 260732481 668840741 42140488 496017463 454721932 763105967 130845971 568417156 81178907 171369480 117793034 701843307 124617337 341844458 116850156 238226002 134722484 902970248 415192181 960830050 411430556 589587236 73673689 702451051 356210457 967882080 734740111 829634823 660363029 936567805 908476312 994619120 538171073 755034553 741658434 819710061 360983965 803833589 598250147 769049533 165474327 232997145 217594487 391518918 353942671 528220740 506083432 611889000 387510679 731352831 469924245 790641438 738871778 936165552 846520302 991264210 901623734 920477617 10382429 428649903 268906617 289724400 10966363 354682196 166647720 621797669 518431728 544557182 445130460 597781193 169704652 452301204 393704205 722693873 312183640 416491428 178354704 610118413 169621311 872463979 242924677 604790195 271353332 450041048 296854908 551319963 330168823 665032704 575724762 609239789 549813859 574700093 115261257 899683886 273978515 661100972 558536829 789211390 446780711 720599119 378973063 402605426 169990959 964223665 411552679 440618762 224137699 323494894 140902128 571753416 11211570 486547680 156434301 902975068 302500255 954352836 366863755 825996723 262568801 349681127 267922994 723056886 4732737 388706063 307705199 492696837 109304315 768902742 506360283 858350239 70155965 919970109 866076180 972878635 281175292 771439310 439180384 774188356 52816455 396581964 146681031 261631031 228130806 235487259 141852230 946577691 522276007 647340475 285622608 859173488 247011146 465796535 264906269 722874851 703752937 827413596 350562094 915785262 707625491 991864480 853738316 948476115 129072667 712672969 198380614 697081432 473589525 713407289 677307498 814854869 657229097 902504470 450701186 913851022 306916765 626997563 111131308 366221464 155325797 417737719 259883785 348759621 145203364 514491330 74359516 377373152 310943818 979395152 267466950 567941983 282322850 849526191 112835902 568805602 14586865 781796401 728724266 863443800 606114032 763050881 693887183 757155189 11942259 440297938 388102569 500352353 219864067 769038469 114929139 717973342 631607240 868906166 159400494 317741797 242695943 451190279 315984658 914431136 393047902 474020075 352733801 547768861 495094932 608607385 406960475 553839381 102637177 998761522 697229492 920577518 274222449 759177478 298801385 884836100 186419887 366937869 197936059 588558466 488617139 517066504 316501157 754988896 369435676 444012680 95843038 816120842 462066005 844419905 90036458 390655394 219002890 908756142 799598313 996532704 773734418 812070831 395560291 738516065 86923954 828108422 710747664 750487803 366270589 399416363 351311413 593015478 433285133 797003631 303111626 764795339 467367428 555850013 186341242 929514751 340134710 788782814 288093570 760551149 756292259 973726054 14724180 875555205 825540292 956220041 583399634 821489209 295204460 834708971 200583007 714582773 510361072 967274409 883469591 969995581 416332406 614411646 336799224 629697614 169894373 472021053 466085381 470275592 59909114 70601119 3710673 942645114 788423380 982226023 183885501 620610397 447818078 814775417 159846476 414579685 143134783 541469485 247426704 553963866 64983456 553795488 247912257 955029962 216504542 994258936 43019173 704243264 147945396 530773374 360526200 377160480 142432454 480332579 426629063 760219262 480877675 893784856 479505852 552317518 269589479 786137174 65257230 198686312 165078404 710129065 509698687 947532360 70515783 701580364 696894051 756440485 354518614 576157795 281817262 796595109 260576816 481253583 265838510 884989229 607911148 613187376 350231779 783509781 238308246 641150856 86794726 178021526 16618072 721329880 177586533 517804165 147287649 414527219 375172344 425688378 70695513 757961821 49195032 598378467 281939836 908776711 330235054 970582780 463084640 536983766 346635496 910427904 285905665 665811105 45264221 141719305 72518490 717834773 463506954 618425694 545040527 561577251 349546080 671106340 37792413 911934726 69996991 340400681 323930081 730687805 790640 313056619 116331091 869754468 333844080 816858137 130109222 314980467 210545882 780784343 470999041 861482694 299100932 320290563 113921703 180956203 60510577 546180142 10891840 999642195 460842242 510443751 393602134 886797888 232939731 658055080 485373921 711056856 26983881 833590425 729682722 859502220 56243577 691354329 244473421 949033478 549101354 896540130 412424874 489640919 223467201 257509217 251812044 483316025 25361229 517241197 315246889 915886623 866701276 907551372 547832116 922598744 68032777 852255496 56257732 914422222 832897335 915309358 691876061 918245432 401262714 451153851 200166005 992274111 522675142 870871773 778239484 998577138 254902273 465005873 167862051 376878481 171670232 313178876 101052122 686572203 229820445 672967168 331217640 522574265 203443045 510911950 442497703 958269805 615289397 879234281 671440271 854922238 309839014 835260981 303139067 778690824 651901167 896539092 479641292 543435243 482275603 612534845 199935475 990948791 530068141 697280232 363005530 759695398 465279186 738361467 524259680 763252274 723649683 975306834 840445644 954483902 92898327 950270751 279680624 344933851 158929428 217012840 201017301 740672189 71699574 414185710 169984322 310810447 288209606 939660224 860576502 980104082 896990038 943427473 836184544 840980699 343259161 636013710 391930282 847815984 582708277 706627023 201546862 488981340 297742850 718826786 530727502 651675108 483328328 785341490 751659929 820045625 257382355 552899278 349703250 405896167 352626246 931006381 633484026 984078286 701887465 732964767 642466072 671969558 629845049 966796075 696754755 808707375 483635461 520863763 478235769 991583306 871482260 966000229 231769070 284517785 126655391 339331369 269061168 624357024 292549496 402653793 62495904 913039245 582718254 685964154 348763719 858182608 142373413 223473554 80167241 547521346 137002836 925301156 467326410 671120589 165117924 524110808 319944360 850995893 755369212 910613341 346796083 536369234 453531199 553819335 337469791 575496332 449011000 668303440 663697714 724304771 54529161 653491700 424154498 764288254 441169598 489339929 1190731 978715558 358186521 866234456 254875808 500624201 50947171 550008038 83729998 885051179 535541371 755271169 632802287 898012275 277424354 364453737 113351777 502548082 204760701 555592723 257633626 874625957 744693475 954918148 860262616 948760867 18867149 808104754 425552824 652466423 133627007 691590720 287801312 836296140 123852422 769030712 203925297 841034831 317621897 604880955 523342204 935827193 863490898 941969855 636778261 838674965 201586366 412917563 241294923 389935111 3809847 459024368 86282772 341633603 178359737 522360581 285307533 592958588 201726428 885658614 375913080 893898303 97917431 634984466 443614300 782733592 142450108 885154729 454484088 503512053 368154410 505537682 78010046 556116430 391199186 713636412 135858374 390325542 139040925 782329009 148066569 336044107 199320074 524640664 416501189 953651432 737453992 909116957 587338771 961903886 173140758 254264610 203793728 834722994 144774501 202318386 53453335 961772000 52899580 445065966 57429645 664307874 401192207 778897377 183807250 688437194 676657736 808029644 676446658 687295980 129295370 965773503 374895222 848052652 24210367 69820603 31476855 168447112 166305006 661535684 343121597 784746261 356364128 498042160 24152204 891762197 206046149 713632413 339727158 364997659 52262681 368406778 251624197 763920115 242735220 675770631 491540200 918673744 129042391 416235278 183502594 202473689 123861618 551484708 119727731 333568097 101451491 465862197 175345227 383522522 323769161 696685235 568958523 736982547 711297728 730576212 644920775 914403456 561566830 619919226 429299684 841082824 422390426 897727944 37626310 274572248 229152173 496779157 4750056 710609969 510055315 691421872 52819668 333770227 21866321 548976513 154633297 636700753 628952224 892313022 602283205 898401647 583809764 717592006 341035602 912860979 852064066 952338492 103612381 558890012 369334022 396749877 320906499 444510240 297217094 685116420 443859774 580292019 74857345 265040387 161433119 268578105 169369666 797496439 760145800 771399679 525897754 778255726 594630880 882657623 375757211 636527359 481534727 525790213 427641970 436751750 179186003 499550186 244990355 515086291 163155679 757237674 269382693 784370392 353959994 898086003 526570485 678712011 617906063 936717668 421734358 913096135 215518140 427527919 395990445 617219055 354251970 634183996 192868411 549706088 246141653 927599566 39975749 689952931 689783298 977459889 957231161 996901838 330750448 729803448 722657630 927992906 76463649 934201038 120374657 194808417 121366342 186528209 35902693 259664658 142672492 529278803 207192797 969519234 50852110 710475389 83146396 420857728 300813604 555999720 484236220 910717258 772741644 982744805 682772383 717052518 677673981 767738385 60371191 110015895 74472598 182923751 40988891 731370089 424916236 859865594 291572437 980972203 287178142 901658976 587976699 847620114 167028703 600887174 227064068 563162504 190799839 998260442 910094087 960330917 673993728 790259079 736187856 788096419 350796801 659676688 265973476 305747488 204199950 231038629 216482568 389657775 17454481 515948210 88398666 438652978 2471748 262547029 135042893 176539693 95612866 468256568 384648171 764035673 110439525 429866395 167306846 745285612 738613910 860021130 774550917 945640355 786844532 958383189 187072923 365697162 189017541 578315095 200706201 284426945 104930840 171920713 23901287 526698104 36788187 399939732 194126480 801436664 22995271 432399227 259933110 611213428 493788533 590531612 527820628 980130347 670706556 812563942 673196652 739458184 168507827 409858200 371800976 590868323 137561107 429667523 69523119 733756845 70733576 412984997 111981224 369575371 83418034 328201082 324637057 411255461 263314792 886401750 117614527 455455743 337222036 344644659 112189222 387308275 128842910 272527462 172609204 217598331 147262521 334588323 174196078 756960384 394740265 802486625 485282266 755390145 401619282 836822135 678785566 955927463 427854414 946208054 175175763 706878541 514247079 953461596 247100419 475310285 189251690 676258065 405139578 843268739 645111618 741049010 551005901 955013803 645458484 743661980 692371412 890544285 620493501 810558222 22398959 946809726 604601330 803889177 673722411 895527168 369313139 766398050 377299745 842050231 241890132 571878531 250926623 322436886 197806296 273344585 14649340 151198013 53814127 610019268 522424642 629033620 496789366 552147180 12977666 247058136 165007159 742205934 328666843 466915196 100438153 857505356 816059053 900612190 855971171 974660204 764062191 919598092 247137800 316051169 231547676 441738633 256640809 699501882 312146275 718989179 295036313 468451941 218229885 769168776 227093603 850372809 132988651 608049217 233733960 539208738 429986830 833795357 42397513 448968777 94254464 946519657 274026517 629436880 380490944 586490475 144398548 157131041 147994125 907923819 610065751 748681323 428520931 939164504 165138719 547973810 429862620 788534327 61838288 913565227 445509463 646152488 156726831 159125857 11494374 742003798 486062944 827810298 397003477 907599056 693922250 921335483 456014131 701616800 41162787 631028575 574874354 614758708 403678646 437229139 378998440 619306556 568730631 765482626 234514748 701527307 271371904 740347160 550629766 659604744 233731011 462635530 337282629 924904169 227186991 885451972 144550706 539175871 203361033 328729370 52806655 96958262 42257711 254702738 66479027 84509739 6444976 215090843 24867356 396061572 55670974 969843945 696846278 753142696 639483861 657207006 513495175 528649735 528187168 803870193 131017617 613782423 338917806 647432852 283711839 578267491 537254550 964482806 30984362 654416804 307025147 816654715 681479609 820842819 299612558 569563349 88478155 674870989 424203469 718913398 695859706 894259953 741117630 890676132 515596436 679690486 205369807 208398769 191498539 375785747 202591193 304003431 13076008 713110350 336062692 843819775 714685392 739159427 319034912 866820029 59849229 537035987 497485763 583101608 540203891 759000273 74576648 822592056 695319073 778986071 23658603 844729886 207309814 309525453 28525884 344603563 88789805 817415711 555948082 558031862 94410715 462657797 321463590 687400000 16110752 404230878 38242523 747916055 612151145 688810262 666558417 905507140 107122149 552234025 78478600 493076144 454325497 871010659 586446974 801278379 85515517 684452362 244226305 262774352 105655432 427053668 250940376 611600458 178089545 274426858 61546013 834502994 260296054 624785452 581102878 802663219 753906608 843941806 644027576 670630470 510360696 899941832 14684490 123577478 109033432 830860234 684359133 810855619 39257423 230955513 183009740 442007108 92982682 351235325 56656230 378404840 170585517 537420597 256550259 327637465 205462250 869133971 619858585 719097812 476294230 609908878 466123255 470839058 159852930 985692745 259685444 919792750 651492306 962971416 765913077 795255136 789239240 812402065 550874196 798944299 713570735 953417494 615817565 770303753 19564209 215802798 11304757 440112299 61451134 97750719 81416108 426488017 76590027 452386777 349544859 681825034 225032659 577545503 10496912 18267970 1141013 19733656 18662186 145202036 86585217 157164642 4666659 877775344 376240582 783527065 701548932 788223141 620375574 841170798 64154131 453242022 47622541 180202545 91914624 241422109 98802003 382183213 97723915 530486574 115542564 344461781 281269049 730073138 623669208 647349198 163124059 294910995 17453387 387665478 141593648 255950260 6375064 513642679 242422891 865742092 774368854 946915377 352905927 967659449 265669060 306613184 125135281 669578752 423454700 979943236 125679320 176956326 162806486 916756245 589333646 707450683 563880594 607071612 173169705 288591597 83406289 415596554 180001481 342060780 163868871 647060138 646993143 968797950 752822323 947611786 764626013 953126394 643240879 832665728 210330554 305512629 17169925 674029932 552450874 565913849 409876453 467243773 66137421 244279211 34539640 868564732 375683223 828511598 424050852 463200763 145767261 372329378 315430564 708272248 584616173 715742231 604944775 644243170 512501685 730782614 581830409 828070793 503940229 634625793 474773749 787915159 593478549 922072529 608079991 771197721 421826285 581682958 219705439 371646494 148014773 370972103 197728414 236274138 63653093 900258204 809721085 951325871 227629958 687918372 443709128 555774125 552074766 888575969 851330358 981310965 684631835 980480705 450856141 863471991 360135389 472662404 242690722 630507824 217236546 604964765 587019864 961570268 94026242 494642768 433798479 523784430 509861022 785796661 316117542 720300996 64535986 833690213 483108180 737494324 736324946 851000179 14376735 444772248 278620584 724253838 712795913 730026138 479211042 854511468 696939384 826160888 147712393 407093454 175761689 674891133 294047404 604604039 477483076 946388780 410200933 614279064 570857515 778343144 76247823 747890767 644977683 696292468 491232616 533712217 447996508 682926854 391284504 532940635 484745733 969009991 21721588 962394626 464230444 877018427 866170551 901295837 738064909 750745329 516743770 776442694 240278360 747478554 124891209 383859981 373885308 708718036 208315271 986109672 308493875 347872509 151064210 233279981 217964404 843181316 628017243 984203476 100365725 922898385 390491489 842146836 26884847 434527261 387761765 449186110 200460880 888003119 564601437 816057126 519412155 910454440 32997833 581283490 549530715 887533729 749045003 870894211 466992696 640238483 427743574 832952551 456546302 512683174 249835904 979806660 888739198 967508470 79986342 457252222 320814514 677513200 316639269 777950332 673491075 829195172 680043695 829324685 410021155 870933618 81056311 789870996 315145663 432463717 225228789 258980115 212696320 919148987 33593347 915427084 357431466 443034100 88416323 278965976 71220374 801558847 672113200 937929304 625086023 758498969 535847246 708535884 182938827 294344008 24117795 454207696 195359357 874367228 842859356 850788155 293423940 410658399 314233746 882675296 489829032 618634589 26960550 508162086 112363233 159484443 98891974 403624605 194662098 275755502 223927958 408668929 117533275 617545267 282639462 956548568 781351859 908419380 203179344 586516965 417585421 420784330 61636806 294881659 79854029 199802628 171081818 657639916 287154959 809060993 399116826 752431750 356140246 934429734 197589921 332662809 23555705 669583548 507889635 561173854 41472777 461659115 358303678 529905278 79922354 471878641 30904210 35530249 32805417 572818912 175472685 339489727 268481917 426982993 83349106 174471250 65791825 508539005 400272808 827662620 569212023 804339518 626640453 758112173 750519113 919348558 395452911 881049411 764283942 878935761 536043629 691461476 642173114 816008169 360129276 998312707 294485035 619151388 164565093 212713500 87100864 889636903 437088771 957090328 809854574 858097048 442909401 467686338 85201624 697027272 297823098 971637036 65201622 245908179 31504155 939389724 862159039 929719664 791692034 910951003 226788373 997556792 831410684 929263758 536454166 841248946 57266878 236781477 125599985 325254465 100595410 310025828 36343972 594199948 503678413 726774571 296087640 948654019 356238348 493867897 93121863 371581418 199291105 306398093 56196961 609477826 140453008 580705424 214439693 817252275 300086004 662157627 233945744 450034174 47936339 604108875 355963735 652968031 180263282 333318741 110675524 932060445 775037102 873312620 125646728 496154526 5781838 974922497 868838650 964962598 515082315 583222388 341433236 534112505 298945926 962951429 894742266 974291411 182511521 538283197 510501016 830487762 186358430 712050902 565693870 938780802 729804696 782888232 470349863 579289852 566329688 746663860 171852875 823483615 10725525 92713570 52225814 149276133 110896143 476407169 403295492 788633289 370155058 761752700 727714338 806369132 130750423 960169568 894565904 928912783 445022731 566518744 318055571 421130649 342062609 380532743 215173718 379838341 269238336 842194500 239177938 840829909 604436198 773058204 193800205 607954215 561816943 878293567 546833136 706688591 185975 320471926 229599420 309984476 112067476 819536815 680956443 768339793 209281017 467760615 16240106 483994097 476224443 623677233 549906270 740796147 478032288 739069845 466019359 636843702 280295051 528909800 456972360 539154511 59532478 724221932 453705598 717082088 505129150 706123764 575714962 825976213 247617868 264058143 194880615 777372070 428510740 537039878 372956265 670818101 243495508 780549864 569316662 716335275 560564444 624790437 609667984 633306360 241395801 571923805 409723637 896732905 810169959 909275004 443592949 741911498 567475230 719629377 383061118 422268335 313048629 371049481 272369742 350375368 328637629 412023627 349322090 886789557 302578825 383562645 258008028 787665337 145229035 592629856 313775166 659416968 460165626 870794951 395754226 766825962 462171231 745596260 403595513 592533926 86947325 808436118 109594311 784148794 46949656 679481029 65843460 310574428 34179826 938571880 528377652 594298415 517569819 630410145 457659271 820085519 682534762 792469658 120717299 878967670 200230931 977511991 701927723 812602556 229339361 557169099 57243570 557821348 505805778 591487434 260766722 528520983 500876566 521539659 400804516 559286477 457332119 788709639 309703501 450240316 230881089 927187026 269159831 612590691 202133618 411097391 210773939 320346813 150204341 689540873 366081825 807537134 442256900 593239571 523420205 642952167 337511595 490560819 12407570 848559817 570889482 851478248 574202110 929448688 741981416 995945563 21470121 928394811 529262707 669734923 464244439 650212240 509840773 720601322 266222019 700540544 659154991 818102813 564079098 779116363 665713331 794023464 25192255 665764532 214759517 988697304 227011 962974754 308721139 592668631 344430397 864436155 802981053 946000674 592012596 655183676 495496947 512325033 25806151 786854824 594560458 711327156 229994071 482736575 446071061 955668081 306981825 579647121 142758289 452069671 193141465 495941409 79601454 341524469 21364195 541345536 59315834 988985921 779750960 801250070 706873354 854366965 100537961 749921323 275976492 765889676 165132196 643943732 115706311 558024453 522464222 586343088 154434659 809024303 667320537 790991292 14797932 246587799 148902621 998139676 97533423 866311393 142285889 479280242 134996428 994191292 870392203 912286088 297303385 655536927 254161436 607242488 98693383 428764971 301945375 326156125 230261109 373453926 70863045 564780357 124527924 809794801 798894653 874225854 448474844 731031592 726879614 771239207 10124360 302129598 61031410 848919769 828116247 833202192 730944065 995215945 291549386 675128228 124053561 197266295 65700386 317377657 88462039 516501185 336119291 796357035 150670235 925573931 174100828 175627069 75108499 931747513 730103635 968946984 444871263 861355745 309501032 391055037 243929742 606240364 12822759 748574971 262860285 600225419 298457178 757962068 63021282 433350386 16693607 105481391 36969734 150176168 14513725 335319601 15370018 123787090 58726840 413228477 243360270 262913712 175112882 283357428 139885416 689018103 203993560 465446696 254728593 675692437 401461327 597870215 272885839 291614428 87349170 734679456 301061916 835510708 124483977 632720886 463202220 723019710 141162239 230112691 73944079 509713285 93717709 119700962 66422267 183551966 70513488 119528075 3070230 866876342 89128062 294635561 5845370 187858194 159871997 162594285 139107604 748638554 433623395 580265848 351466933 758442728 302691716 334812250 192245741 599043983 419217273 788342148 302874037 858157393 732958006 920493116 637888588 667301024 416351970 699209802 92182457 899374849 349492458 519811216 202319451 429600601 59648256 910139177 475646337 511138561 278858887 840355833 21374907 439366366 52373181 671364800 267478113 347024367 318804586 498420413 85475964 322351074 195912033 610556022 5042763 562191581 559542560 914278515 280786467 665327800 58388351 396596880 390937644 760014566 569852819 956705986 372533185 776676844 211948844 291971334 232505920 656400147 585480196 829268881 761949546 946200618 24824995 185875630 135208819 464435549 306044964 915020650 626347883 746180858 359948459 469200721 363477561 555975734 60419110 611249760 374329331 522761284 380356396 627644358 139897400 322721977 151375858 839205770 306381067 695713752 676714191 792645237 767168191 876266540 644562545 964539280 58866157 128849734 75380348 991285358 957952277 964023727 753921474 807772276 661971211 750866026 689328702 790666201 442847051 846030922 232777099 385602658 184137598 789946267 329193385 933601582 469295125 803695380 800514303 887848078 785751545 895495968 637693301 745592432 64870938 383153753 356155035 802389596 390698679 983822640 477308078 960429021 702654636 820201637 161098311 639265077 186094925 507244949 327817126 521955191 125944313 147315682 99147579 761548101 743482854 967718059 125114222 567607426 119384519 724174423 418607972 613699228 546875182 777447407 714639656 837491654 388952350 460754850 67396423 845493204 371021276 738915196 675178683 875641391 598980083 886345421 224448423 981370589 228848840 488338685 301745285 907092722 623932731 680398496 314324571 636674539 267420390 639225518 501425797 961749596 49953826 128466778 93186273 913387131 745333135 931797767 246500353 606754157 112795523 400198907 285886395 555457647 88505000 448490497 412976723 638149261 490105794 535543402 81648919 325105513 262252736 836724388 597690828 682477786 379170196 473578884 31581863 987805691 875082132 905837725 658436472 762277308 376796352 804806701 465378714 794956503 220275271 299209514 261406379 715376935 389584137 975370546 157032854 794972646 401127540 423212760 255377319 551853814 359035747 374982421 181139799 235990723 44041516 155207067 3492907 447607482 28449863 336472288 228487094 689635340 415431519 750894568 267670171 354356300 128334861 302113129 95047401 870030005 858764701 888089383 284765339 508298727 191235975 308086530 282639223 693814991 265192561 434872270 296779031 721933363 433491315 876237736 388983018 851292233 178784691 855147283 407457769 851121427 146815884 271703240 67073503 239476674 216946362 913981208 89206379 500613665 172064941 217733573 134819229 909319717 821294116 993564157 602175334 750231145 140122568 539307225 509570273 620664451 73645355 772747739 534676771 826940596 746430506 840383835 448557196 980339864 170331031 568591412 44507340 412487619 171215351 781137628 641606696 964082208 752772944 995474345 515758442 745812739 316850047 544772512 310652274 381773480 256503517 649309180 195540417 357749636 246994257 928538158 815847933 901873740 264473125 598049353 498863479 553997023 378116376 789466682 288411421 652728602 277425956 785485365 710696321 928089523 618266969 991708474 795848087 800162634 536476772 694681756 635808056 885254348 739782224 863779198 555929144 956393094 74727030 988871897 967771552 975945460 176654440 221132345 128402075 437069315 178683412 304143219 86389971 141345221 44336303 460257539 156469966 231204147 83657404 768914646 438154480 939085341 288804109 420397840 200812506 459218963 196781588 691450703 641573558 874312968 150286838 696104721 565526248 698817687 561741771 908451565 441076031 505095645 273875026 546619161 351895506 674778985 586122742 912864032 178948459 401460707 265278702 677909635 591610345 818440967 165389508 920166627 833740975 853905532 429224696 990220079 744729028 786874066 723503530 788305346 273184349 415899861 374983113 515609845 204651670 492865271 434290637 783702187 656048383 876472313 825775094 902171225 541358917 653053261 470482046 549377690 92496592 714020028 304787456 612161236 521234592 761914026 44076423 784795300 397880906 810928928 323070443 575284503 390894142 494579981 13266491 777738970 546324971 549811831 315702433 540377822 21176550 341740814 126741648 907738442 686826612 921324028 446102150 869804001 852093020 860269858 218353170 511896749 429926359 786217112 529409890 713317829 642514511 761748171 167781521 399446769 289873658 746546254 501523828 554234010 157001698 436285549 387168977 526278872 436328051 775283296 820859 978878494 473991600 728219507 535147049 915743990 487287083 978013826 455859653 563824112 155374050 909600357 242385804 498088423 258617892 830870746 317806987 704506625 432458153 783446066 274823202 738726084 497675854 631315299 613534760 954864258 268717473 314464165 26913363 892726546 523875542 552366887 336756884 632109844 275053874 287986136 241518303 894184783 85038742 947903153 840498054 862998933 28914081 506623774 344898929 540227537 259753891 772348260 36572947 37467476 95871 811332991 217235857 441123206 171250074 408561601 186689904 382135109 233063498 812452291 202418327 581551907 336660933 922817255 389439245 442536771 322815294 537470905 498808520 590286589 533659706 918680773 39591909 543390802 26356901 908361464 583589620 659152883 336639879 829615676 214406680 888146858 398213630 575154450 490412600 553303947 33311689 577713138 219015126 247549409 198900527 233241123 209455042 765787039 414866465 518076444 114408946 261991717 82886453 187048144 26756227 636296736 142854456 657940037 265131598 272981959 50550 985637178 279020987 419509480 114866724 322324998 150412118 816751326 52754838 249038543 121028461 866560743 782627596 842202331 551757306 820694121 279680076 823612323 114756466 358802796 264119124 641980588 36818527 833377835 269945466 591256391 308793593 985243817 539356246 843814929 496508897 626926837 56750584 661831576 208321397 337227642 60456132 266360552 60759704 732103716 668069945 962010062 555096778 644805970 186226717 449628705 83233873 443993546 10534430 407690704 106810958 744875920 502771215 522200873 162780785 972903201 103084001 701479710 615315947 728875627 537719162 626958624 548166436 598429698 38777939 356069501 322002560 526130647 136553456 547039751 431721801 989495357 675921920 978305368 939353061 983575227 269077548 563102147 258971559 338552140 252752443 892794423 474570627 532760983 26293399 347914675 228372760 456978463 39848218 392702959 376071173 637825112 602628118 824187050 693277877 900371805 353316335 850481603 676652366 985434445 380057815 874592898 18839014 166831849 65492968 407074350 265333096 500530508 282136709 421928477 345713727 740433339 739584025 913327810 270079766 428280006 118754533 754367813 304847586 606902711 246208029 702403992 144561283 828406776 540366189 937213624 550411266 610825607 204138923 811483702 729695403 771131981 431327540 940091437 73288366 933973012 139507699 631626914 570192924 770474709 433401880 464651835 273282231 882413688 381173939 796150199 491934773 725084904 275305130 793637384 98595880 552217123 243438221 593344239 470651992 786454797 747263527 949799584 269271771 414279599 61809415 213780623 87577819 987092272 784599844 839475166 606320364 751484363 69948694 606084578 486329841 546612466 78032177 216880488 98314078 191707049 91541177 441207941 142408230 277466057 120215275 380913638 314478332 751638250 372282135 393519295 364341223 395472844 237685902 439027981 131389020 984661118 826592593 980045149 71420741 458019144 242709489 470337715 196391481 767196832 275646787 627298770 504602750 603464338 34927299 673233469 368079157 504524073 50687989 840074469 825618532 878108478 394613823 631312403 565586753 795951636 31320127 208594488 60124592 317567066 233655283 501477273 128578531 653343380 28090720 176148554 4974673 455468345 153131370 764282675 207538448 610878599 233642042 993309261 557081378 907795047 754273750 757052193 499197397 754751559 191933600 280577566 190358885 603536130 442108016 767412018 165514369 192958232 51511612 625466683 150268864 744626600 402669434 997129200 554830120 992057469 20609455 382373388 122784300 547454830 510052014 631088693 323360645 710548340 357049026 448274681 86636134 975791694 931419295 938225959 703062747 840130266 30135075 767340902 650614438 963080463 174196794 939787943 493864722 842361564 384552664 577483801 558001988 878443790 868512902 932946312 525272349 917134574 842604300 873131654 499696510 818479832 426901321 888337538 483649366 697316438 684303882 790585552 29238154 316326504 296025223 767795194 695581105 836865682 720417809 921121910 245120476 544609373 230947095 891449477 154480187 799010552 731754238 960696294 705351357 895266371 736563173 955878969 875930861 894418194 468574593 996514682 866661957 981085454 413922332 419221725 155812655 220438104 11526036 421453781 121402009 854514116 804201799 972145836 78541756 719213038 667580765 873191736 267621356 491163846 419121746 861288207 31606380 152998390 76095432 416034580 164721714 360183507 34269208 499824983 277386470 343660789 138659648 629687860 479544027 686209417 510877845 755934632 403984929 610600123 271754337 722138814 313858903 461251595 304292149 374258587 360525163 966572986 258027959 995732444 974214627 994869848 908095995 939425690 145133804 894745252 198002925 447001149 280762401 532181702 416728930 547216715 435897843 602366914 280769581 586071083 303718627 752839045 399976553 604503498 336348248 426645156 154685900 189861260 64338308 705673867 634227185 836560492 756855082 986600634 181510485 635229660 293243398 858744409 536719586 654669745 319060275 945148538 107467544 699508658 403895566 781059879 282466336 890417579 523602086 649662784 404831683 977875172 655907114 760494525 310890379 691588384 250946551 675604818 197813061 851109014 828036601 855494128 798342604 804977996 365279927 506925407 265759678 667190978 606565243 736361725 65746731 999299412 453289018 844204129 839301125 991468828 134455488 669953461 301064363 656869891 315814149 514154904 346772350 706937062 127006054 886733236 254116029 953769168 660796299 846409213 155753260 408041215 4198774 82614642 75384271 922383486 297574580 944587600 598931964 619848081 196949688 958477927 717549469 742690956 308013872 400473304 359655454 746565596 564214704 977792160 221033158 677529672 90616763 237037487 10476804 977251675 626487822 878086484 416390148 745479712 241685254 931612293 298439542 919896634 39506177 576025158 315848381 811237955 67739625 918914787 784863091 994086511 5821468 821145012 378347380 877665247 627033912 881171912 279018220 992977749 674428793 804480004 83064903 317791562 67701089 448183455 255226773 776707669 468956672 636492203 510495042 539551200 474592474 579944508 48594736 149762460 89233007 456148713 110333036 471575091 254939955 606367486 449667936 697765633 397119180 623671118 257299672 691851170 83248282 404841142 322792285 848670261 751607524 883172010 344142056 687014939 295944338 359874763 168105548 175152806 88936294 994390154 962488914 976623361 856466068 875196346 756942721 843480211 61170532 844049914 484429685 549622664 19220569 999834929 877134874 909288022 458153351 884676344 384454864 919307556 853075799 990801686 674931775 802022803 20189785 415676657 338170420 546076044 37931943 981484189 538709081 719934296 358889623 593829456 384842324 629394581 417840885 799940711 288600579 704768427 486233198 880794449 482363308 910959620 606006317 927194040 346522005 762086069 669442600 672320088 435373993 998895536 553839393 941949950 155249487 964710259 795860670 858771703 561924593 982664077 754484703 948293156 743306417 772249836 474259823 912606589 345490665 685468132 139782920 395266758 249234571 967971166 311561640 531934364 472707814 950234955 269073970 602603210 386796596 860975100 420001044 654257338 135158891 160863762 86066079 618492366 292709532 338706368 244020640 719034098 238719511 735719206 216338943 418785409 257954581 722353823 519210252 566818911 220794001 456924562 282678858 433159528 155777825 731729188 101062755 417008421 250588565 260377464 65689684 514247082 94882871 379263994 192795889 670603682 144383909 599933896 138780130 571597426 14238138 295083899 76870867 605416004 366761093 898366743 473317003 556806931 516801353 663299051 260338879 790179807 103725920 735364073 591333537 784203176 575603784 640076281 230887117 381851200 80073615 404214355 175244226 280772250 268523428 871533300 348338571 829270376 710767533 711266068 117529446 184474244 99747504 239555664 105875785 664920710 407722100 986033890 527905264 940812279 276015075 572077966 204081795 987908482 768977905 807731356 212709723 396100888 380547352 531339913 407372324 547259552 429913427 883575886 804687265 894421769 728114532 922645294 716738419 723965587 397614206 991308000 482385310 834190877 295665668 716720608 212328806 249910090 75258050 342077771 44970581 294047574 76647294 659234091 627032054 796993166 178621864 323069175 189720878 478727664 141817538 399275809 68129966 378585456 171778500 364812325 327163700 815766016 771078319 883714642 706990837 779328139 541316138 927882337 878499548 976467326 121984838 745869287 637630370 892850026 791755379 993536599 573250145 906884705 380316615 727197199 366094217 366498274 82198511 229723657 98183791 661136378 472942963 546099911 515484482 922943220 910389493 987898729 480334050 841317496 607936837 712844205 507810475 824706642 494668244 945239645 679971540 831745326 625169349 788792578 446940286 947735855 83391588 96867757 78294808 754436417 381147930 922698453 182381294 892053817 574447200 663474314 6088123 978744740 193231927 868353281 235222383 901673556 302163943 752542754 596312527 672866267 443464810 619814552 588788022 598994730 337267515 619540975 431155842 995536651 463146287 490087323 453504962 715994565 288629494 631280573 565631808 917263829 196409633 267287517 237845729 413124774 300404532 468824721 232406137 270826164 104898320 633699832 42370567 982820288 415873 550806056 341106611 497936179 116888248 162414057 146006549 950793639 261980449 771448050 577691391 837961293 581063097 897183919 424279566 481981493 27248159 102504199 11767356 223560003 46318099 281395131 147298304 426692234 229442324 462650973 295046272 472974607 185929861 591583035 485290787 934126463 317216002 663178632 197350222 411847853 125940859 919110203 753602039 837172169 137823157 492133190 463408981 928317548 728311759 896303753 757675639 806143685 215153834 452945935 437049897 586679531 72367281 826205443 202236116 425744197 197268076 452741984 199395432 856189969 413743834 823000724 499666560 650561553 369700215 657917170 251714841 334026816 314878894 992635608 441930902 738753569 119299212 262550139 214776435 647543740 370143075 788169494 314142388 760358012 638852640 883170887 637537024 914781478 763177063 886661819 70151396 462586021 70588712 720719619 212157495 561350932 10003832 775043480 257441549 321112164 175559726 821792744 305986575 646198459 243570660 792164145 231349258 838686028 812771560 916632402 667178955 793990150 345640764 658296491 652483621 833148885 130603147 747062528 727855387 954120814 305777038 628224488 231825902 661760598 450690181 710956892 224084845 442192414 193076035 630678775 254367445 653225438 127414358 233221854 8172997 454679590 327985940 742454224 323261617 403528150 360578180 970310150 269589400 602811613 532915673 804947160 788777154 820941681 533661343 845701838 760596443 877092932 345753289 524676095 153576966 696892123 103715567 639409915 544310357 702641846 652343713 953274609 224413181 829698392 381570648 624753561 129688928 492826755 246508894 975356753 448801146 788397976 753666662 982584346 979565137 999260949 507086391 944818672 434711586 512548850 239973016 849857130 743979652 927809616 447940627 461514539 110301055 315572465 305159798 905242683 305283944 430500623 213162760 391079517 70589480 636738915 308143534 929731640 707004860 982268837 459529020 462064360 203586717 335552997 64021655 627765830 194696174 353591276 297750196 975515414 460836911 815586225 485816048 736616562 537721750 778959743 731286929 997805817 189650272 815107508 250320143 506065833 417518059 698671774 136159528 787176942 692761749 931737996 62753302 352761730 31800733 742248397 650261873 652696788 577371423 813145896 145386584 417876433 15197321 83291869 6053290 199362507 142378279 198410093 69596353 775122265 130809973 725901690 595136310 949948481 72117904 475547813 107691806 901013397 419619389 950866996 674342161 681675630 262618708 941387143 562605818 996034734 624301550 638415133 538483910 548209864 545659481 579009870 354939614 583512064 197734079 700610469 675836080 687630626 368029455 395399937 380937310 399866623 22970268 855475537 359004125 697385246 471172705 791902279 225427445 842101451 622346712 631157257 291331005 922539413 808905268 937668157 935504771 990887626 691760222 829768223 415263567 463661196 255863052 543170708 282470245 985813903 303986414 983181159 818952777 938875599 831464356 884011543 803943706 953196115 876049356 883064954 63540735 661576695 369250145 545217803 184442358 813745227 591425013 916653625 751913818 898849825 518282202 918061590 503967919 571185859 305969987 510736020 467601523 595939322 509265557 873697167 574449255 915558996 525422414 767129768 552297982 915595170 428390503 759511298 217052200 987234059 582986763 871400924 81306826 654738618 83344933 485673037 122713575 401998848 64686408 980871681 925963173 989026447 118135765 710357048 569051997 610067626 207280071 990916730 593458652 814405215 241956330 492243135 399370808 591981418 254136504 586307941 503899655 597381064 118745446 476732606 71926312 741399807 23319166 864363223 122866422 275631457 104044639 900958202 771267105 777365569 453913257 614880396 17856515 801117583 538453537 595197822 425649063 939905125 638374941 752008771 562373068 876332107 531396731 832463826 224533915 628813523 45570633 626208225 68090321 966418295 778741845 922831718 188461967 730418643 549303336 910185172 602677918 974526047 175073686 386877370 235543241 441453580 143401432 938298387 335334520 764217894 525856218 730065701 236008939 824815012 566990086 810894871 761135478 796909506 415353175 416692430 261775989 720912606 504240395 809994910 185174354 294991178 146859981 197287640 130084983 557135081 208444518 727091711 713079839 980127478 627884186 664917947 319536199 748693357 229620721 230849122 59610679 939424395 139038934 402530010 271569897 455614213 232266774 992834965 469198615 517944192 342048498 546169673 367541443 890531403 79844544 503636382 205282123 581725418 46422841 416304966 178644063 934992353 288909784 927157036 491286807 743530698 9847518 311929771 197172495 539131344 173138518 779848668 93604389 446784355 386815230 916413392 656414881 697649362 28621986 915434694 144370958 818769416 191220008 689528917 363519695 639289517 616083417 750400962 86221691 147808210 86616644 414173148 125978435 999465051 649491287 866999553 97764916 989809500 540446250 676709635 110803779 333326330 101648241 183734736 74465783 867406583 152057448 820270477 419896955 902023012 664856756 715421627 530373750 988750910 231038679 992310060 289619048 526356191 391493145 457335483 62850352 186833639 39247255 275585514 112093163 392700283 138279366 625029905 209664006 267522098 148688705 548715456 50871916 577194200 263271450 489283207 17258606 894804930 730596204 740663355 162693492 356157126 76271990 649478465 408368432 660336842 9945460 25507746 10554045 812054472 328091182 555746191 63015629 454845423 439539543 519585716 199962830 535250185 50783933 342736616 328417829 894592814 333060479 805350879 296422225 852948430 390369433 781311332 757981037 942371203 211973738 408860835 144234061 237354013 81671031 740973825 138576857 179367636 6805010 567706105 262833492 483141576 219802874 845112300 612495432 892746709 690608653 858810271 282350445 286559885 75710378 627537897 56594484 201433578 119781005 765550570 559689281 841905626 6779167 184125937 65752138 751188602 439727340 446522205 105903555 403171444 15317554 856058124 381941797 652804522 409072493 837983421 386183975 724262916 326956274 555310828 76884609 628085488 219893597 242162012 172202599 385960846 51273088 645453754 390331250 844136116 573446593 948756560 792978332 863393883 803187899 913416405 58383914 716187815 564126809 803552367 157453820 654501108 144682806 180298792 167303655 418980022 59497911 239176459 26438188 503812598 498915258 576046588 156294337 351136564 348126922 911902567 718589740 877160562 630930339 669563376 301443334 916002069 532145685 685625606 472074022 749789069 437899130 788720707 209485323 327860468 101055250 511756974 193324748 362184893 44520461 931300346 817624032 974283981 407634866 482799640 377784207 501815195 432326879 791851012 745093219 956264668 22623189 167453619 108772697 876944748 785776737 887905643 133438627 965288225 42696596 347841288 20179377 930108442 192577483 294984306 287596729 334701969 152749015 982970625 97624360 459988533 433564408 773322767 64251369 549450349 509065480 860615616 346274134 666836175 661054705 746766285 151902534 510713374 248817489 610989408 452175777 644385808 1317313 750051660 335704323 801803988 147066690 331826071 20789888 110250468 18117406 753457442 751435396 821887827 372532661 751974535 684964542 725472583 19644096 549346591 252905457 288264741 84911244 822561620 625323991 806212142 399789136 761486600 56878294 811126824 697791082 833956596 242002499 381532790 86130440 491408608 349152187 938061806 871360756 976287636 58589127 572097839 20019644 325219376 265892584 693087972 308749529 388728838 130804984 420639667 267743667 511567443 198053996 205323475 89768721 239511154 126480809 953842624 718798443 770670522 56962369 730593791 350489578 491124116 95514771 689706231 591050331 870991206 40266413 344501381 210920858 537415204 247009139 399993494 227438695 268555243 160116717 790285756 80048626 565507428 156891668 848893983 583903971 787181562 750683635 815927293 527774299 573558479 562805541 737472524 214604368 434673909 384462999 913608277 868904948 989748376 680675687 838107972 437523399 961953461 483079684 649650895 467929780 562687233 152247464 943979005 301364110 981617757 414060627 624712176 517564182 901393263 243314233 319243594 7784275 694741187 153224541 524075484 28063485 548753639 188039192 875409033 595730044 793423928 20433527 617795767 501481529 570758489 362712089 453126514 322136153 353655458 163140046 541796563 274765799 576224229 408971882 954196515 198460888 346946035 98726320 979301167 284262724 292523822 161979709 360794349 240887465 644791286 175304423 983838226 716607600 788605128 383983134 521010294 46015957 886822252 505248307 663264919 410675602 451716825 278848432 707321494 299231777 867183050 284604797 513168892 316224452 330650475 94335051 791603608 520578438 882175750 430245375 975292807 260468775 426050506 104450509 730965581 196489468 385011969 144895372 528473010 51270647 923986975 610002161 978033555 967654659 994487706 175904775 405785126 86576829 171167275 147357562 850379956 200626114 235342993 201728041 713126510 345395584 399933178 198761309 275829869 122618652 554295955 541104500 701599808 134943753 160594474 150749136 227642015 166476485 584708312 115793716 504416725 300041884 847757080 668989363 841029284 778712077 966264004 431010339 482396493 115940965 309899196 244022797 799119815 220747638 370935045 339652589 848904566 422646009 803723442 286617089 572987877 451684923 947462401 27395155 621706676 582826953 882819555 354372209 923743281 56743668 348297448 16411596 803610278 325207592 473603761 7958920 289856680 102215303 307626820 26297492 117300238 112454563 720600109 673300547 768191971 516830341 672453953 243472946 356797015 29128860 512016874 472393808 702148474 181663650 850569539 848310450 932328536 515355683 533888386 498120723 534887789 8994844 251050465 214513683 722877640 605426117 802595851 538957909 999185121 942218138 978106749 401384241 881427908 399604360 613966757 283690641 523732439 460163215 483128204 475087062 581075670 102175118 534663634 335475404 773728717 362744153 959178269 365099556 437116777 21631129 294585619 131770650 686164612 669201611 973911219 248796213 339009168 160183657 160229047 69346533 126628685 106150484 930592896 498670332 506709526 105514651 853768657 173478257 334673640 294859780 386684459 52094269 363269511 1697161 559510823 152389820 276596353 244372178 339153590 312391872 914204399 108213664 280432874 199703247 360256925 343731062 552727053 253858242 681704169 349036219 866646389 139165534 636159376 60305074 906321789 638382821 951295292 709668542 790768386 486741099 581338145 108402986 535616868 305143871 936524302 27775595 364645353 272831771 313021136 226458506 549711923 270206620 417917143 272434360 876721565 568798472 651714122 473087443 852168754 481818338 661251699 185770873 544107196 141501629 261425413 205574864 286751926 47107025 166677420 68757883 395985309 12270532 980397685 28414963 445309981 64162898 602093537 479475603 516934273 299328309 852184684 812796324 852637607 715630270 861037760 297388312 838834575 358139545 404946862 186714586 402727138 338646338 374930683 266763292 870199832 465036913 793633807 656582153 968057786 517791346 754127968 678530019 717688810 375134580 789634623 445128876 881323968 666222000 833781110 478177061 615393962 323459688 825338049 420243121 865741663 406264642 619180813 337233177 955566584 528299131 594593805 273961102 920677995 400937215 990286971 622836251 665770355 520365919 925409965 888925930 937217204 99531426 843885564 78789898 211547153 49332507 794705861 91727269 528727755 321755762 414060393 192876977 490713799 82852787 213415101 185235460 528727837 260780393 956418084 339927060 720546676 61379976 183312402 85599791 148850760 120696564 574118686 484181371 575780781 74436355 451168633 151402492 562177267 227878779 747217554 560184906 948055872 366363962 430928705 76728444 878753685 232674314 464094609 20955135 133940457 57433065 708909147 67465163 322832484 178661737 978032336 692506868 948215823 110259332 615431583 37900489 149532410 12744339 745312042 691806259 879465387 645887195 725065007 609804328 954191999 636733397 860934890 90837498 722633761 140995452 590318405 529152673 779566039 636042560 700436144 228278631 835041204 322331978 742183042 88332904 266645661 135048956 827891119 351674337 630146304 563251844 765710773 490136683 991764359 891265239 954148508 392065343 795345069 312387984 710135545 123752456 456426725 321620161 575475861 240482624 733143351 281247311 513445805 33943521 745022432 448449953 561806714 12731393 339813762 75676185 137523227 110246585 727530350 467022274 777141511 347578401 614574557 363167740 652783577 15224951 662651844 516790550 664182463 592951922 633087713 113999379 897388536 160045147 439473588 315874323 596265964 109757586 567085435 213349050 289349324 12360729 119111003 9930257 80933611 8847896 493483143 175479516 347767115 70909345 450165307 260867012 662057699 337336408 791773374 205256214 620811146 111123615 163526590 122669709 440523039 309501600 329940565 177793331 883579276 601107478 610474004 608660063 932980621 669686479 765691816 661275070 992568957 915918710 998883971 798933656 965436445 88527385 759705484 233452685 748152123 364855733 740821463 289703610 451442339 275247029 429259721 224154430 789154202 430477619 718879131 398569413 458534603 38838007 108413051 53263669 246780442 242115034 683971796 593016531 652608964 13533736 760783287 656112458 670754208 545270985 946849282 787080453 810029989 184528146 722441739 705252047 885258318 157867296 975147286 378056829 972292082 493349345 646800275 81279263 311973246 276733284 750028284 663305905 890437227 241830068 313924466 135891724 245785982 197062158 902423292 410397794 741882793 323642009 925560535 5217924 127144145 84113146 752362125 607944253 909727472 531380469 972438126 241641987 451086439 59622316 143417039 102832078 414506669 22661430 483103683 122418300 279963512 29659455 675860470 292563303 917514925 583461260 789779839 481358510 770182151 300956659 586063130 317293603 471197244 374847124 755671664 570083608 580607612 578938506 776348538 598341691 636441245 395659129 484386047 56339792 895367211 328844019 870105716 350426639 683379267 106252276 856472161 287745580 689120194 220237096 811471909 652602213 691571231 301935188 572863453 211528278 405160884 344387163 741962800 179248757 733019272 279092414 647669288 202808182 518432393 111048156 692807140 603928373 956404093 864671153 871094951 406948871 485599006 244003168 812305676 190259721 659741155 455838071 809992802 498150018 870655505 498730713 828857196 465984141 548794761 385785035 780666047 509240350 625090187 546053613 683920341 159270726 751377636 67065403 177706469 7882828 916355231 153893140 454349834 271942967 808514573 117248965 161659664 14775904 575338845 207803125 368995786 302400140 723648689 675709069 735933317 650591356 897019463 442555364 930317759 296306133 559946982 39076285 616579042 362617127 797482991 250838216 263958683 185239494 572450626 274826669 333350264 266548177 458601314 55783460 283745182 278105323 751976568 719303479 859362764 99825210 858362418 493529137 759890512 405213022 508472771 300282844 824790209 487791262 915301160 99855720 774654530 250505227 843473241 782102769 887577932 21684223 913394346 248026917 282316599 278374396 309000617 147238231 446730222 18756571 34830554 15680449 187449483 183296565 403200294 140697713 884214917 431782790 665644659 398511864 610759358 33241102 846000177 239222860 758691473 736022873 771004639 578955019 759945263 226523316 368495568 76955101 798698322 789152027 962564112 598785210 953316355 168991964 329329935 29057855 137186903 73059914 200463918 189017558 630158364 179806301 605224547 50249090 383016834 330578330 666332277 580773171 588660859 201580536 634538779 49235169 976188144 453211874 956025883 696658108 959951073 376236184 899169091 473228240 838609399 129730926 830436235 273794154 948599350 353754440 615941967 104513669 375338617 101883709 525657507 31259610 798698455 748900848 935335821 73605454 214262109 162239317 986508027 653774793 765468349 162429530 791052004 692309867 872085089 837484718 938999860 865138719 886100910 489523810 660233669 470245373 596755176 576607484 798597973 538879812 877475373 169271369 293815900 213209368 343105961 65423138 342760671 114607042 697236426 114292282 180655268 91003792 849526734 207038976 477587994 227102531 524396768 23626531 932622696 802722318 826767096 731651205 927557214 753974135 835297423 148838559 507575223 12034613 709838098 145914976 953736765 261747769 334919146 233328755 376185441 242959442 948664225 864551325 938089328 323815845 371352437 138206326 976031242 827805115 968643962 678562943 976981396 482171895 641343729 493174083 883327377 261157234 608920793 399278501 535732696 305113939 385035843 237249028 473286067 414469454 991956934 674329612 709270981 322777322 755029894 40872148 789357678 588852415 809776624 317885571 948327165 353349319 355061704 178329532 388286351 265419180 561842192 235014472 303657535 151295915 985984313 145804475 958686083 699390040 980422966 936316686 936992823 781167921 859373840 437779019 663152437 164668709 815366214 746976234 827339972 328735794 820030267 167354828 981973843 529891271 572288287 451973080 739145247 108696448 996042711 522049663 640533044 154878734 361714338 296011883 334746573 4506460 301470618 20085046 721262000 394306826 829785599 704643164 729204045 712554763 999573252 347933047 873974879 663875863 818825447 100161516 820600751 228697615 944809972 290023441 861865240 1451897 568344462 464255737 950118240 532016169 991622360 8837314 430136920 43098056 335016276 152676474 157604286 117021992 553851725 337723309 768681875 19045832 323168997 273020758 546922136 511858669 956855466 619435407 772637174 444363419 841610814 684957418 896060624 53205436 514159693 442177135 716313256 657977231 774672157 313816905 952688836 600327394 985636413 979365810 983498246 6911191 968701695 470339316 857218344 517009080 544223297 202259950 657315857 197554447 919151970 12776204 19647208 3801715 888032354 631259640 834790936 388123179 569468499 313081480 777329815 744592109 798945190 786195515 859046646 641898971 924056713 268931623 761726797 539217312 908460441 329544490 899926633 667943655 920173669 480695298 749987100 444352458 484625151 127993134 465856925 161671838 726946602 500300546 815729552 609192159 693466347 309281519 424559238 287919312 619064337 530574483 934039066 609423457 791292669 69902668 228962852 6234579 508937515 78711731 316845107 277254640 762835537 542737898 876968628 535812268 632356037 193492392 379590094 266609682 694196713 340477999 552937977 293236128 398909499 43776896 264504667 128658508 130952335 108914495 363616555 249320492 990965866 615134677 721276241 94513286 371718604 333490415 490114774 287350721 939120122 195134103 428262505 140124497 964647152 194134984 846608928 455173841 929222471 63634520 690937516 70162287 873158596 739180203 772032838 311129922 780289702 173152232 913077968 773362431 995625783 103247561 521567271 366208673 496847847 2113266 968954650 871313122 904590277 670025459 980034430 70621732 845745802 472005911 938571294 866659077 960083505 113832924 832888293 75795199 647157133 538827385 953989681 931912046 975329908 259068163 845117944 392260602 770707374 372523192 465365694 83214822 619354576 533192473 895431975 408226880 822980538 255874553 725954719 247856718 889052181 162795783 716855456 554287656 828328335 328671184 964814706 172946311 830093958 455412294 652396779 129355535 853608412 776940538 889175008 209470512 852861479 605821717 707423284 409140189 761564071 304644332 644719639 8512020 150675121 148660035 956134329 918296887 926355626 129637058 518683277 457068983 758242891 504356040 698871778 427323204 638465838 472236350 916933338 878446896 897733285 194354572 484637954 246049394 367343989 345030351 930252691 426374516 671287676 459247960 738481150 404055043 914311059 300430192 910147947 456276136 765736325 278639338 820470972 735101731 947176859 690793952 866567020 420020200 773873611 507094020 876175588 272501338 334930771 303631146 744484085 34822705 317825671 164179746 422512620 165174591 737458509 415200862 824844107 242068273 403029812 320977813 579545743 76834497 506212980 220701514 850847812 808207343 815282052 162151328 562076530 489233084 680072184 247932137 524017297 209326119 557044701 419292626 982101729 71846661 219801912 90400657 939809270 522214697 850311578 349388180 903085381 816781373 988680763 342590753 688273745 72594974 372952634 311188968 322576862 178101743 498214005 318272444 588528140 145425707 428435036 59280779 80950163 44907843 701960702 439588369 844277500 462460757 683148486 236840357 409474227 408400451 624254915 229980792 820868392 578483927 805981324 306419221 448838937 200730721 825576470 811532637 828982948 706059293 800172220 212032256 462504578 122857686 127880283 13529413 492550166 486967722 646975525 608294039 770457842 48131275 580138559 136909947 178801173 68136326 700828144 635474594 813873548 111086328 821659650 458487415 692187458 371814714 405613361 248565128 874620050 394560281 591245992 418633511 551245463 515942060 745289705 398467865 651752027 105827301 874095035 678454369 683344444 412764418 594814358 57792736 127713023 17609521 512929914 246379520 540636892 209706896 781323708 564484967 829707977 529208414 823207396 202886524 860913523 143465986 710476242 336989292 675306931 271163718 915369884 526809957 592759314 315325859 867774153 529740587 600684433 154159948 518217667 355945508 407542442 74159394 934571570 783096869 969717225 69423607 213646995 107326599 256032631 27475881 91220041 42069356 812355396 760024331 885179645 271426090 470480102 290955568 315883252 92941816 175851112 45810312 869092405 460586325 862223664 557128795 721230400 662495167 951563678 771789655 820324888 334420874 615952429 21869498 91709669 73065782 806067803 250066836 568614485 302779166 869020906 345624490 663579120 376251080 690432904 239307361 706069138 201274732 905808468 87743092 447587103 177201669 393503403 179632274 967949028 90317464 677048345 283549251 927132734 824425636 881449615 659002307 904501442 802191338 924530081 370343184 963510887 223622561 246207241 1205911 104599246 76154719 618107251 22517459 107720872 35948211 483457632 392885285 617476497 579558819 734421129 695764267 856084104 725418776 915469605 796646257 886341853 378114132 864505739 247573897 992793912 704072629 887826754 298696588 608388184 192147995 364088215 281089988 849926179 731237453 742988019 288094700 786406289 179575769 985216861 816518416 917732776 722105002 911740490 802576395 878845286 2939696 484938450 100332829 736928300 672805944 757869981 345437906 558199851 258835908 304313437 222708622 332662344 36029858 483740140 334826521 952240638 106012241 621563341 290050768 448676733 199880528 852203405 701197869 891115168 473463679 610621734 599934627 762265107 114321472 824387611 519924597 746126807 280929097 982090693 3269312 691145549 194880959 755339359 179804963 433290816 317662828 672180333 430049928 784107655 264524147 594652830 126468141 660345446 391623630 543808283 97794271 775387124 550743338 671306518 271599136 885578080 878574242 883699502 424762554 847657130 193139051 354116053 179364725 888005511 443670011 665216344 50661839 179603859 162964167 716637424 524930467 869168579 557302754 860950172 470456676 649003654 256095495 987838994 533707847 944226365 534126684 670886590 455702976 911986685 577069283 853270965 790086035 991226313 529225905 759550982 366467187 385447531 385036760 948509701 541575167 545251741 202123820 317335018 79209565 79263407 20042034 466839696 242747178 696880394 317631318 772359480 19062161 402635813 25159025 437957127 130265805 930031811 191837424 339431146 207615566 648171002 233016200 689063488 119886402 586044510 480048565 669874953 522980063 977336355 753097969 774368046 528148914 917863873 608647966 843984956 206144356 936951167 98767152 158818845 97983408 726105568 388958679 839586773 650732468 876945397 602137685 798217791 468233354 932404988 674245492 923706627 12184808 602684204 586944773 990486355 912812925 992178495 628729487 842412149 358524539 464029112 71823992 407758258 374274998 500497768 326723570 901107492 34777498 625973254 536970014 913696633 347814654 380453218 70647585 798906450 445327385 754745025 699846467 755172455 334629592 738023493 575078575 594310236 373341630 774293167 247293052 513763572 458373901 805000042 772280900 894805184 321581384 649963723 192707635 567218662 144871757 535488448 377944171 546802349 130678962 406942886 242578775 245851543 6115722 375016230 359944285 523140293 474447610 845586849 413081278 501301614 372873858 850863638 337116967 488744063 343340940 659349506 76166251 228510964 220043213 929205013 488002880 618441384 79691348 213005048 28459909 789255926 564485883 843676966 642853196 885184511 684680840 974948686 176632462 381081923 30616542 887501782 600507537 787975494 252231619 652396968 603436627 878094017 608187397 844876099 365441615 372510891 308111824 428686061 172082165 379370251 83315159 760393085 229785535 882554584 681981277 947286696 850962858 856252088 586853250 846047427 469023643 670979392 506743495 963784554 473158187 973776135 613283470 887554068 856784504 988183120 985608765 987258276 649909922 850439453 425880046 510810156 95126948 446550093 312225910 744741438 101164417 383268223 363324383 546866581 166318342 378884234 153958818 758894993 595198643 670697935 388791275 570071889 329958131 559244176 409821402 860099973 268382503 473217363 58527314 880975059 826715786 979071488 401812105 540918689 199267366 342075628 88297153 415945614 369783240 552875657 397189852 981772246 468375963 617635762 45471285 365734081 176257815 900739503 649114286 766887229 584280455 762396730 483349366 531427384 343520111 482104655 163974085 864156962 399676801 592004254 581261134 876401818 835752114 928495000 852947761 922043956 79649276 362007624 224518559 543427328 501259887 717463685 415528224 965971232 357272073 850965222 684549200 798314335 330636512 511127033 330980376 621566819 341610833 738127262 542196678 691802090 329638655 889110887 755969862 789163252 111531945 245232447 206643360 488432331 209123790 440077226 405818026 613259275 131835976 661205910 32931044 156778287 31263077 538998579 222055044 524537419 32524817 839330402 819596615 884843854 406392735 667184756 520381981 804335561 245011451 738968243 485345645 516687047 57601463 174950294 47960334 881509020 459038626 673683747 450752995 769692889 501503687 838097288 538720175 850306176 193509893 459751918 192305287 554925729 415589710 681205253 243227980 320812105 83350229 995930372 267395443 424799354 282957401 318216093 218896551 890967087 443106035 891287047 376326313 431546420 267831167 582123828 303546270 439068717 384821858 876912513 843158976 928251032 232108158 593236711 388841084 555046380 337154318 891975745 865842184 869313159 146545985 735932874 525701575 695024192 135813180 888117496 543584358 703407785 315454552 484467967 165769035 522714886 111753129 407077414 122642456 731238663 341926615 722457275 343621538 544162435 310304772 315477520 240553851 868876403 861085768 887966606 506335098 905387708 136192908 670475057 290645561 408160539 301625966 669043307 264908682 427858888 83934117 102932167 64439351 321597448 13951838 104852401 104826247 880652491 188652651 473821862 337512208 727191442 154107563 976753191 672322033 707376272 620577139 689809847 685285076 792900954 138262486 653576532 17367217 508216441 261682376 945301589 191200408 499719118 318770438 998619769 817897471 959488811 339655513 907010374 321324838 773943275 99098549 635125645 525217559 933848244 714773908 747233474 681670870 723803666 117576422 880326055 241334245 477257953 342559644 645402910 253372553 974374838 4258781 74679041 13726515 445764655 187944023 569981402 434666048 437591668 109220835 609425882 606450588 668002210 36507305 731802628 438245352 562034147 553289176 609792819 96170862 603253628 365231235 756360259 714990599 819702102 415530020 892156123 481488744 857208306 124432877 353952136 236786110 857313128 346800790 824588894 281386888 352479009 190304437 316834992 294588423 426601015 378763667 496030737 318996759 662268732 263365382 828317260 591904026 689785821 666734486 790694546 401395308 990634273 226370246 602739036 531143658 847163567 283325178 301872516 8487785 36914089 8938765 380158632 302255481 467595315 445559411 832337581 204845814 530202942 409600545 852330068 266964972 348930510 307051626 892562282 107636635 779206660 752537375 836209204 547480164 961595820 718949520 771486691 694081401 758827752 254747898 337646061 126841229 623153570 398344608 750512685 725014081 847857341 226685839 549646340 72678028 793923531 342613816 412611795 111052987 134596249 55825849 100251615 10568486 915974934 722885931 872320874 348769034 350945808 207984767 486239354 384137209 680341573 601764024 785201590 95531012 383459744 43287534 856987308 390943768 593297962 584637793 752315130 199760626 981879949 419563192 532533648 121371571 678505141 308763413 717682462 43717962 443510501 329627899 614813317 31735012 310108668 89097074 520426442 369995357 709675793 232031538 964789119 896531089 910213792 322166876 407787790 218502416 287581066 81873847 338888038 192382186 296440504 258236139 779096925 605861177 938568910 8859392 170309736 145244691 764159781 253804392 889505147 758418921 929072018 175021611 861819285 827182949 919418320 635478275 810078703 16381832 998339079 608499810 948147740 605444767 790029928 522041522 918846052 913048072 918637344 641652140 792385639 745912376 775226352 492648219 584053652 312409054 798123692 432351391 836482616 585330620 757667045 661146077 938910039 425456036 591689007 457794962 953559515 341014007 420551909 51946206 314703371 76300292 161578868 149114252 369880832 215846403 536062540 342511568 505251902 171612416 249630047 202588732 490423055 454605793 598479938 232715280 613135887 46243486 723044274 544397521 585910245 52492228 878889284 153925332 165538030 54086352 785943707 269765603 436932473 339911700 521771941 199727935 762514144 690430217 785839479 349546880 570199406 424474883 722760704 360816223 963775278 73490259 786528595 13301394 454828461 86741434 146925806 77561623 929837185 80641133 968956015 386356832 696233563 540220104 846066103 236116947 857653253 622358204 983330759 270742959 503284777 177019926 985686151 854374201 868816209 468979643 537991177 510117484 960864871 343695820 416126319 33288361 178218847 158371842 979386842 42729538 558745296 65473807 156708067 94199027 477157884 118543911 309592384 226259075 917704279 540949278 712736618 54514589 274434877 192855633 419124187 19807813 699839281 111877718 146216632 132176559 399650767 83845206 99648496 43782381 619416651 141410311 623461923 103110442 760865293 705022708 721689819 365420273 392900353 297363387 775236773 618153724 685926350 370239557 548452364 270652089 738947654 429379866 543769057 372327912 791198894 438352502 976874405 373899861 500649960 408177500 845986949 7047924 612123540 359588909 552442885 317058877 826652828 90703400 326566212 63127557 458716196 338480836 480213126 123725272 945837405 268396659 869733543 167353063 763153466 164947558 214208924 145960627 453139646 270399637 352707900 163259758 784103747 303205890 881295262 673419291 706144515 194908084 941543082 418080838 838755175 189354373 769330833 524812816 671092316 458994371 732976301 503262311 671172507 262720393 532773660 486487974 890536725 485789160 574611230 316895716 502395946 125083789 816717514 545778245 820072345 776166859 951249878 663832124 773110826 635217553 917364138 330276069 905653109 368038024 665267390 453556377 777531522 531694292 977794308 309945147 488650193 77779607 287056729 212355389 966714847 922166591 925144067 794638366 949142037 472005868 889205580 364042592 519498427 141856232 166421878 129127457 950656155 587785592 723720693 347809398 495659229 447466540 632542879 582082573 907917655 43257976 686000734 476183542 872107768 791384403 898837718 49626938 376513214 125926496 302732672 9339852 849734227 642703985 925727584 675303396 751928090 148262405 614817293 22729120 702028262 290833547 645897078 290046886 346318428 308304514 368870588 230441466 978255601 581760816 760360696 250355657 789698143 104867772 117736279 24343558 97269520 52124145 917147126 871840747 877030684 33462423 464947087 165153562 356854341 191968928 747614726 43547756 686496891 186918798 943497330 264013447 650513674 13699871 975382387 377951534 706051849 107902399 296698752 138888508 407890706 128836455 453040500 230661789 588388587 78871057 280350433 129927500 869297705 6489813 233206805 166824021 912304311 147422283 685385736 426964836 804138825 650056495 908195523 418216018 476682962 107392190 281425662 178045849 248779381 72616944 185988793 24772839 444622371 316578499 461000630 438544553 781268873 708958182 770664327 511029937 708162960 374142977 426467177 238140480 287943731 7326599 689452623 45971214 337509696 249005804 460299209 423314202 671709704 438845048 803590368 574109362 680765889 307820762 380730855 184085549 666869604 159505529 194684579 109558192 321906360 294819264 951137787 858301179 897911467 109546194 622649284 209544071 836348189 134599325 744135684 455782457 584647162 265954765 589641562 38124822 530068684 335962695 644519158 354936845 911983504 391784608 516584458 175849027 441187252 390832005 438264746 355789465 439242094 234031339 336366818 154273728 945699221 858885116 882676025 592001193 954812200 753488200 977848176 339875373 378220283 129353318 450599181 330668886 345306133 294454487 353216304 201092247 479177705 12474723 279745152 193217539 235258678 105993121 736559001 643585338 806710064 444563010 754505749 365692303 440049277 23344578 521466824 475634187 590203996 488378252 663149537 569175527 895056897 116387548 504854254 303745796 407945237 405410859 883542110 270708259 920103502 501148212 608907346 427740616 785425299 678271482 744297879 533544533 863272228 136295446 267135186 115099725 195758762 57742633 777341973 338342027 736257994 708681151 900057241 586575489 948380317 597590847 807167067 481103945 812112093 29197316 254523175 127333676 778294611 176742211 250711476 165562029 317873897 206836927 916454432 507913372 959098167 561950997 568628680 464830231 584290540 307591143 482063737 152814470 700810204 421454178 909025103 364905266 733140772 343939481 722524583 437166321 648339318 233107765 402629731 209400453 449056635 12036104 305274244 275929152 423344050 240195843 946496330 304974719 630802267 111743100 962688531 27023531 451772932 379394232 682309069 108311316 809103472 72957166 278551849 277958098 962368481 890404362 912315526 190829412 997019964 538197663 747347741 704769825 804792665 745995937 767703122 161036609 790205308 663075884 815879368 476619687 843389632 689647713 992499075 38087289 568336982 316610917 439997406 364000448 781419864 369345493 505614787 343081859 487657519 307186517 418617094 384567576 515357476 228733613 784401916 464733852 618913353 215677985 697618848 81256650 695837495 123307553 488389599 332699226 368189363 96854153 887244066 449653626 976634064 659854205 832801920 536514012 979426732 943352176 968898367 181660981 825156449 381723217 758093524 625282634 686357033 551546197 806887733 73474573 264047835 197001511 378518196 165657868 981718308 46866760 552988767 285263906 324174469 108529342 148746770 116768005 976978882 242551807 963061446 242403111 910292984 515978721 695037425 13882756 437887383 87023373 384690805 119305359 272473685 38971624 555422563 255875210 819205079 268536573 347594000 170660231 267177847 32464459 68952514 58227687 724699808 616425591 989256680 674224 155571946 97236188 178683906 115259348 726759679 335249031 844114357 4351546 940333204 9266514 362593067 179433757 600707605 146409565 884487287 813017904 855451010 733895996 939792498 436148399 707745931 359122087 778361128 26606471 163418218 19324168 561406138 427207199 668395940 407606511 843320398 392672487 975708538 275330174 468022059 326788896 744991918 490070726 854212394 547007468 601442357 72532602 92953763 14984812 237743683 222670258 404182393 39882243 110981168 94649278 551349313 35062998 464452418 68058426 820174410 494002478 780756548 287260595 967438156 375305499 675734956 480202984 841197229 280627154 947383479 145143188 671026239 232773000 597131261 247008294 427721725 212024539 688913847 402307728 420061256 48240896 937407672 4113061 14520543 8211364 885683624 847151596 905438810 715260001 901055183 582454632 658676035 23488977 321399107 134538197 458127712 404656862 795923243 578268689 994123460 854935200 920913805 494773879 867387284 276051618 562542488 353960818 984844504 520848906 973544917 451711228 670792140 151599449 660555627 299613308 600216442 376721974 500046571 238063358 723974664 472076490 668399480 332223246 867637728 51294066 134430748 53009149 496982469 465945697 943923000 867374217 938494037 452350019 980446008 62536353 251419007 91326293 729563108 601394253 954056155 396801882 812850194 601224609 753128052 218822656 648013527 451361779 826456923 484596780 559953175 410494068 507588461 421131950 830874534 586358123 693969399 428334494 836792892 743363323 799525749 311661624 774245549 717502826 876063221 461415294 648380934 553876353 850186373 824185537 918815170 785247202 789306473 112083665 165924972 16028273 206816140 40691837 898306522 864148331 950814477 350762377 689570038 116983390 928871611 541220753 918414401 159022810 543494075 99388901 888759500 120142156 333271366 247736688 932805356 125556923 506469143 385762629 828755551 288233940 762086283 145864208 837290660 455916903 722168964 359215223 363591051 344555497 648347241 444436428 899739254 74893030 505378190 390404286 736864351 537343846 587255956 88316675 686696745 511641066 847923912 449641477 946155048 619990850 703879346 694332055 707921717 406654948 669964787 53785091 53918785 20286362 220697857 113577570 811876780 256693943 572806691 417896484 814942475 345522693 999945304 856592820 908893845 323176695 403555184 317894404 555832117 266406919 397241023 37836734 344047448 165535579 323963951 35805588 388874562 99148180 604901742 220706130 423938873 313659968 462951895 58992870 817409822 748642100 907290477 391995142 497611574 118577661 606186783 544443489 882665928 369222492 891655198 300189665 888465842 860342253 883450722 323702039 648157804 575026118 991553241 663101463 966846385 56352873 608823883 366606714 589126448 159975990 620305166 422219960 945618870 151132130 545294312 229666104 877062925 537178380 726898282 568475829 586488022 270805718 583530662 146682283 985114048 394394272 825796122 529677836 920290665 743130804 896639942 822791359 988539278 410023773 712409625 642782200 760432429 354930614 854218803 399063835 999072521 825203756 950903215 851145982 934538031 859402554 920142322 302366194 482829426 11844713 93741567 93380756 213329723 61722717 345222772 48287726 663717400 89401853 125447519 4964938 677287110 216674568 864165104 23863295 369260335 277264330 358943347 105148314 678998840 538241297 832241926 181985330 529410892 49093303 747455404 459318116 492386251 208598897 746730945 453019230 785278832 525044303 826342699 383337136 868063939 388724448 663278091 540325679 854817407 761193481 995271807 970026269 989815744 777544910 822245973 207982115 557943695 273388533 679522405 91384791 947614651 170765799 360168507 354200088 663677708 381144288 768082898 679016891 957393131 54148042 547089905 386943497 738872049 21844898 68749368 41582621 573059424 95047604 989947503 285877682 587826506 430102874 727164503 572542768 621170374 565079708 756945508 449643224 934296511 843969169 894323266 476203584 819876202 788772638 993908126 41438486 136355473 109896763 153985162 136494289 163641198 13635057 895337100 636056111 862510936 844538994 920738810 891850806 932011270 665371562 840990495 213839927 437359144 196627850 530453252 469312100 590385772 60436599 282637458 282146744 793012624 97553249 647356690 623303397 993847699 565650314 676476909 484056722 588764167 586916650 898991611 160498493 962038587 244850819 554161943 171419405 932370619 585109128 986561378 384706741 493026281 318607397 683570230 482969763 643398936 229633216 728170183 662626029 932243289 368216364 971668779 567233271 776184186 306056837 998421548 945775998 958816576 729042926 908471615 455685509 600270483 350542109 537321639 331687649 911045255 403915059 633511312 282009656 742320986 175360874 516038807 64298562 961701440 710581824 846899943 37656420 565879618 76035979 974752744 901799471 971036335 808951829 985047093 848927872 948658536 72551827 290127965 97187305 543021739 408831280 962475926 563283255 711180032 392480437 487067680 243584036 764707989 508086979 812177009 69290797 868356020 802526219 982112010 426616246 437978377 187364214 204238067 10169726 949762515 666467054 822971394 161642604 925107951 20327782 232306089 162400089 414397051 295041695 409603687 165180122 499654191 220363381 815562438 105172966 867180543 566439074 824966482 423042136 505209216 98099135 836358993 4262733 679913555 213730421 736591790 18503863 91616215 51384631 434083956 162102956 232023098 36262258 766299733 16975682 547465796 205471379 591137396 94203920 468585621 307340306 632235667 522036656 903019882 730484908 747502916 597187348 638647177 173269269 851927467 813655495 860219228 481705382 800361840 438109013 960350463 332888298 584922200 275489266 479243532 439593926 739921936 120096579 442520877 338599364 782987931 332945668 566633839 454663843 901738869 236338049 258756643 154276403 345324538 288021680 542302509 478909891 889982308 459897264 465342979 330434854 856208930 253318579 796971617 209323806 344176126 268448626 793760729 97864044 743657078 282308 355775413 186376207 678636109 652616878 830415990 799465150 853685787 235345277 692474275 590009000 704532144 524637272 583574835 317669806 836294779 501658099 958752346 590994406 939052755 815187987 984178165 67331206 731068489 437984266 986061585 975117821 987836898 60136860 908982488 722205891 959397031 563701428 976325545 538264157 675626724 501175311 597144558 162076089 812862331 12886163 878412748 81212037 411728672 279433046 862297996 329935006 711505143 95580367 688615091 343004633 892590459 405828442 907806540 639580639 656029599 140970263 364828814 56641871 523581306 374117377 984279801 942539908 986450691 73165918 638531837 104557993 548068156 31260049 770684492 643777678 975598504 818121001 935250586 313964196 490564535 460807341 609681579 248176175 844724576 291632474 357801461 281371620 593753975 194613955 344004034 267029378 650781571 479949095 583477681 137803689 931554480 568102459 871229035 770450692 983683065 86674943 721521116 247133427 295109921 99032609 397433485 246808606 666315286 575412156 729501267 618910047 628256064 197047913 754238956 367980687 831360094 333240874 688033141 209956901 603636242 339863615 961979873 117290838 374821487 300057414 906284040 161384768 403162590 56372648 581200196 554638894 638893601 397225421 636193881 368408996 660871512 252961661 416653693 78370279 505796953 407829475 626805454 504272159 996922133 102960762 912993285 125641090 966248173 592848143 630079930 332218499 727098090 33998912 643795226 114587801 414249701 72231495 416868474 294154839 529677894 249021255 618240701 407939281 842033175 385466223 603881768 345647207 550587263 90840115 828689649 430819781 501754721 36259858 838721025 797901313 923297609 537801210 648246267 458789796 693869434 438069552 842127159 440938525 927959601 504028400 761491753 537592335 902122452 355316601 786567460 275789021 859728646 628685881 661255793 344898348 675557994 72367846 470610738 446565848 577428505 183844932 225689198 222188827 278945367 105761051 990592780 462424260 640175674 124842683 250010219 192329386 735764376 715233158 731285390 18202233 260820218 218868835 322620995 167124193 631968488 21298239 432052959 327879443 890535787 562997385 855712646 356610333 619572632 20469015 267691381 112548831 693063024 536752290 624092344 224457853 707340998 508642368 895752404 618215641 744147199 226826972 435549447 378650173 790069875 562568752 929758655 148848230 309481291 300701743 913973634 422415022 823024772 150629083 321157806 60570827 936165400 458246448 706475965 119876994 426178168 73307761 660316262 209153920 776191623 229756241 871669582 282540726 366732143 44907259 58958291 44366363 345283232 116480626 918172658 255024384 671066564 786085259 587864790 695602256 380132836 507339826 47417006 331074912 302089007 612044792 158109044 610227528 298798432 706325111 286353709 804263644 323482724 428408365 261601613 590842349 1929275 374322821 5637823 799658161 332327904 683308339 340944300 921742132 329504890 908456195 73096366 396813254 317840013 447190671 22983731 809500246 69014250 374280737 159618162 897967836 536373674 547947325 246406359 609101252 419782080 768780167 660309949 730743397 622092931 952178421 304379605 374043403 62680795 707195221 309848582 643673082 200836703 290453494 86841030 510719311 71137516 591939048 245854771 595051586 483628459 582875658 387638779 908715432 753952766 997960256 509493209 928515930 431697975 720752487 616443920 749707999 127141274 830718987 827409059 946128815 453450936 850729948 59859741 545980527 443012513 998576114 30187639 519191258 148834398 730575146 186863027 932473041 891791404 966105110 233542412 349195997 225325595 845252486 747503526 882252618 233120071 288360264 225395065 585046638 269614545 589572220 432013431 677528253 430390590 953014493 19999633 716919863 112438411 962259358 641710038 956944760 189293276 963918737 38861603 699383041 377808378 707711700 5056286 227124120 158686939 351285287 146590333 168050482 93552880 576020229 534137126 679875326 114920728 954904135 475702729 592184863 115551734 787549782 114332815 700381288 581712857 592918472 56983468 402975929 117961226 278822333 43144060 215933788 57121813 552416865 275877256 334488262 7306756 186182664 29285246 217383536 141487876 398050476 105086296 652325442 572022902 991680651 458406881 865742072 651978613 673393698 269015464 910180127 889291697 987872108 866111329 953269966 873101618 964119445 851772978 940349639 675583619 935235584 748030828 962393381 416367634 895495098 829882362 837783692 546047458 632889309 528166121 946561848 374437022 388560788 201240060 614794397 390980629 533703598 256684055 694292033 214655040 483971313 73350758 820658929 735296360 834161601 76310260 393861504 89727405 357786586 84958920 478236132 410278615 735107722 145074657 935316073 286821641 484024426 244023160 434910832 410196556 752516633 572491023 734971011 468326349 834322253 80343856 303464687 286361530 408553366 120461986 705753470 188345948 197862992 81265800 853910667 589514805 643422447 215642850 987384456 558279190 647482216 433310046 577934414 398539837 614486079 427812133 719509409 418309876 436308700 28980570 130261035 127540044 927408001 836039550 974734431 659730554 794537923 524515166 544014364 339643730 774007380 306247673 389024593 318771943 409698682 215757235 382780564 179972570 265525580 186480661 368306081 351357715 996837237 908324172 963940233 709334558 733648928 129619059 687499041 421670115 501558380 8333138 946057818 305825018 671159612 70139018 105742660 70062761 110467395 106093681 407942330 323573878 814333539 772383035 939711658 437686199 964384477 351405804 550768707 454966757 459968287 309133414 929804000 282309356 576142377 353160406 446769161 101645356 749476492 323283585 469004406 341372372 419051446 104867835 945453091 254601533 283319254 280552532 704509404 212525493 309784928 151809897 596619634 305312340 681596582 186317350 615242392 13746804 623184866 313197348 938688382 763281760 990920529 102628445 722446603 71829684 632410015 583360831 612112260 508916516 687860777 501941166 934419436 824787777 996799079 277994738 855796517 425946542 539097334 231972112 493067991 189711545 760237673 31581747 662481390 563405178 792823691 552953859 886157645 389572465 743529682 359664225 595479549 478123967 847838652 205004619 957155014 840311984 915381120 222278736 337955468 77756626 454849983 450021039 819443404 722375255 956745824 317350218 796165814 697645077 918403094 319662128 461126857 212261609 253755360 136706803 763656916 491271492 505761196 28751386 52343092 2143489 937038787 755675856 934091737 65166871 266744198 260562732 763010764 117783215 406315205 130918728 214468436 86627625 285921660 125335228 181716791 156211330 534715666 303975465 690163339 593249239 924146820 708011373 920432843 443096107 517566451 377142771 889368623 41184260 405306390 259229833 553604570 324154383 616483609 96291753 143833265 115214518 204761289 135637967 976110227 210038747 469802131 127602672 424622297 193565557 602131210 326457021 602483533 302867374 386699697 225969106 628734328 2340687 384272772 102403176 115749325 107614835 130964776 83704963 413335417 218924081 546764843 3245276 638265893 318084624 783172055 497934177 660842051 197794993 213773862 126989833 682840376 423572408 523558485 468381794 703949918 642949662 698252294 308828310 913084517 85767515 120134756 119252004 893775614 94229647 828370150 167391812 409759660 374612115 756795850 337846611 704004065 378719063 737212428 372620054 933197546 729452164 977703100 787943673 931778605 930208497 960909728 518335559 913449912 119582838 838309654 448748800 719765645 358533008 785169733 298596997 320992610 2068829 608752656 549735800 729913796 333021494 707775453 102029432 631788928 612656224 646142355 576433062 994248986 561598187 778465597 613643185 910387999 392731502 934233069 38761998 547321519 384299152 415016092 327358946 403615410 253437941 882332383 247770290 460438582 70398144 398989871 55781401 364268831 331669910 860019407 127931868 129210618 122385278 245086709 37850203 138889934 130098902 465608224 266880636 893882476 619915236 809486755 536532668 785338010 379007686 660938040 147791670 597610259 193930170 493913755 185722271 309837078 41101378 117964066 97316122 396439090 6526432 933174509 183657857 524845903 251748066 492158578 173361503 271540315 210832870 416830415 356767622 810793391 776139078 935756084 336406956 757388129 114044910 296986643 9741629 827347027 608685961 791316247 429064370 688901029 40289730 485634036 173963218 991126972 826912580 870667167 731079931 948212933 443492215 643505223 95342306 617582167 107906559 762990892 398861442 991328066 334405757 548440332 406888127 434299771 115178638 888997009 44942222 763015293 46613786 437962845 227516146 228323266 70999986 869493354 433985553 907769698 708784896 939374337 712849747 801744356 14315939 225515729 164158587 326882822 73270214 401577063 1272404 163094873 64222067 792359088 254350123 308921688 27003225 823001782 41156685 197524879 184685100 313749207 264767553 504437274 446120007 746386100 720827952 803831336 714939640 810084751 173468764 969159716 713908263 725637177 40895466 162824140 66317935 529916470 353744909 359692861 16228226 981653342 592801888 706098009 137741709 371020132 173199214 927498197 646541479 761486747 456817687 789038015 22769167 334121223 156123689 507387212 248088222 648387542 47591661 238450436 193321615 843293839 702127572 802634044 447942284 883520213 703878588 719847375 227387736 521507553 403693853 608669016 233714808 382137406 164908132 905090450 215725765 389746070 166395447 937297021 420665663 523307577 463946235 616303857 596180684 884263375 714430405 839341832 19905264 865846696 261085495 809806729 634074025 866916865 662257094 979077955 91348232 949148610 263861980 864415881 715982800 975599931 786399410 982107888 305608334 853710688 291425642 953768694 302129575 847218881 121213976 556055015 525394113 950378451 710885924 807161479 787173384 901856219 604246109 614472367 609770855 911925638 176821762 455393302 168275578 694022774 377802576 621994652 243973744 972329282 915385477 932918235 454493690 475410625 406478618 868697778 82570828 296770367 9334137 413756047 163439148 341081151 219642932 428774280 131275816 233729549 125932206 941180053 203658916 854318590 698655506 815905421 278672357 650272360 224218396 861534686 802790644 822048537 184723123 920715033 871384933 986746203 445261324 755094335 519328130 586092498 481440928 581251675 72799591 178665016 170597976 432892110 318843059 971904865 703454110 729584441 717170764 974555428 334108962 917971539 556575917 814620224 670889939 695905711 693714085 769267984 288415019 290702910 188193131 329199570 245520822 619549398 530526517 888980446 469651815 754542992 399427127 932556447 65020532 845878121 268096543 978392620 341842378 666860844 608923629 790475597 767151287 938501478 287299089 460750099 246844345 377701047 355504627 934944309 272282519 489284663 5865909 294229605 97445322 134116249 12804238 594942714 110316583 218192340 35159439 52951941 25219809 445610037 356276409 474669269 92496855 709697184 14261781 378594786 234511694 431363544 265787382 640676200 61871217 784038739 577507318 956095980 290227012 510836170 366629360 845401286 800454195 864229108 161350543 173404114 95201594 336896634 308973141 464243458 351894034 723461926 298408742 832594422 345676865 972715551 645091759 645996591 525571406 822530517 814512246 848471851 284112596 882500068 593947550 622152422 341316770 960479121 341267502 480077046 191078869 498866173 260330213 610706980 230838134 946818439 795632363 999689301 932112046 966418804 288157156 441124727 416065358 871864976 618552197 741666452 440123646 725179014 666725774 810800470 581559414 978136748 206468543 258979885 194204964 554976543 444904050 948962955 396558481 800842559 751928265 893341632 403453714 648122032 238965339 692024107 403522445 979314378 684274713 714089933 548801987 998417170 881076768 959811337 679793128 758255590 156043815 371620777 197524451 745921284 710267947 997337382 359547322 674438279 214044029 304133244 66040482 663756222 495429272 861421752 329927921 550306630 67975805 632185725 290801390 462904665 11465070 33110014 17670547 862955958 833160387 922029597 599175899 951726477 390128910 701095122 342628170 422917109 231250981 732706411 83046233 404636693 93541013 263682550 131387694 530577822 428243210 634530766 105864847 260116853 73948364 886627851 342352850 350622457 209703938 397150507 208483152 890894174 515872496 601645126 127536340 305971624 93732285 622105254 599160319 895094868 664233884 982220171 823380415 840196558 79186033 751478091 204556401 883945202 87302435 920538797 144899925 209627140 179112982 365371702 49832572 135530295 53264314 69703474 35060201 36773230 22820625 855683315 734656425 944376660 481576080 908658414 884452439 899395292 280541363 996733519 591631039 639665381 3237210 170592507 158940003 780362937 127876093 206105090 109025460 641222769 356555317 611494450 236172951 919570310 773563709 918193110 308714657 407964837 184802271 829242720 322567354 559407883 369385668 472020209 468099815 685757163 550634387 863211599 234024951 917020376 101003791 595844666 160879466 919102977 44131556 804801510 29166350 606515406 344790829 912885767 493581083 560124231 240256889 860916772 4180004 276798766 196500363 938249188 380028332 816478276 265478547 644161829 417378307 791222456 428072761 987114164 154639148 489151638 147869800 687882957 480549586 944823269 244501288 359434086 234103499 302771700 159699138 369303145 16822998 65863006 28143378 461647314 195096376 209183625 191879099 463847902 440701011 958302163 576326749 869306014 260963404 678455009 462227118 608938731 596737868 652559410 132542945 730243866 465053883 639994923 133072097 873292440 310039928 999618711 952882733 995685066 11446337 300690887 202690140 438284435 234679587 275124415 16781219 506911939 157708146 344744307 340699597 689512838 328584086 533793243 313644293 878934840 434321650 437622262 129250358 940336052 4464876 223260659 24816765 74768893 14409140 651761350 460871731 918462755 882271903 962971968 707213254 891766790 23399417 967221557 934905639 964566440 867148760 976183749 790792470 905784721 626017665 778388337 773873545 878795485 89488942 232796549 177267239 918518860 227722961 841244864 679423309 687312211 309757781 880136774 231379542 392982029 267083681 705889654 6372966 683179746 416248621 949838069 576010086 889437293 850434985 952116807 135786903 595491505 32849128 704496876 445531230 847830777 471352781 743844900 625512454 887870330 177749955 704150274 513702457 664276989 189365990 248622651 58398573 700055039 423473694 564058490 522596543 930347595 351348252 486309097 116327955 802590412 554919992 623664612 301442454 499390474 107702325 719362448 81663842 884626301 275900154 363801851 289219731 956626453 402900101 571200959 485898977 541508020 403061585 686393299 36570113 966856994 203700950 900600617 784472159 825916845 737131341 902821766 349370413 760484175 707490265 812273070 26592734 394580917 351357013 721793545 696232535 738500084 92264177 503474447 489597686 673621313 458692548 818608150 482186036 775932839 700594718 742259023 625362330 635117330 278330181 872777731 345639475 896954440 379559412 974886838 672643872 966957521 65414859 348656689 168593895 527530223 118939935 763677828 602849995 608254213 549939369 944167179 239842612 423529794 89153667 666294803 146411086 211197729 182090714 970603584 186338109 326252721 141596763 900379325 56317016 782244337 118712677 466609913 185961262 954107837 916570865 925991250 531005939 693445940 623236567 983172634 713135403 752155972 331774372 556758222 75767130 885086992 242053484 382993832 380739463 409397887 90811308 631797326 208356935 266733646 39353358 565795047 114050165 486030627 223016290 859420125 784123322 832876503 372248863 682392933 160838790 825509854 229831059 236337705 67979854 823821442 814534524 985602886 709231420 955072215 200651761 426806179 139201370 628899532 336128070 469243625 106730513 114032256 18611768 258483109 184363586 607387755 378923932 916745886 273870326 601662188 69766537 650394630 262695865 744827083 133704069 745243088 293894120 698943341 631857925 843451615 90415438 504586231 62013406 708180452 619965600 930091382 533679601 616425308 98656493 277219922 195738877 292587505 197848937 333608615 325809976 425653898 306700411 998829389 641957317 919519917 127161819 540389431 11476287 956782930 299689572 671974530 264614613 436010102 15275262 246890660 224763079 261917330 4888717 175446542 150962640 701140019 498351658 923320761 404091226 765551264 440772258 569898340 366001540 621579353 319999729 510560390 60936051 85014341 57123413 906051240 134851323 608523370 541131537 616348921 206967688 795778761 767431908 870113837 755164629 794051153 138312704 253603707 75982686 452696861 85123742 818215985 94623402 882988454 34748663 702182140 363730595 885611178 358222356 923956563 145710700 790222950 226669505 922756415 198610399 936676281 390482826 397043942 159893732 189563517 129031461 909473465 231699343 459350911 200765175 601731955 421515228 988254447 238255629 436360708 6308456 656385271 252175473 606757103 978019 61691095 33262158 757326565 722291057 744765684 464752236 807996593 608960347 772660708 468131389 811420660 414242512 803963327 594461786 730716574 286074165 862026663 833541055 855339916 326667776 496156634 173767952 402720077 166404370 490277020 275271620 599401401 370903361 822707760 792536085 862041045 50742014 369093819 319300587 480717504 301592658 819925965 373341298 946718176 363192503 379637283 80104002 310497585 77728475 984844205 933073152 973253702 578215815 633726608 133647054 764850180 731159058 927112965 40737423 269967682 33012089 130645519 104454041 185877695 71535720 756943739 320003890 917227460 331152648 413230064 364585659 520682093 232823085 411006533 215205538 474457646 335028882 597826537 543710294 863859792 699113556 913219170 489732216 939505588 453386583 595343344 573592671 665827695 238853847 829313477 788598975 908025418 309916422 836084872 648896285 911167036 876010388 927727417 61249902 759106869 641364033 790379545 434513432 601492329 330608716 453540242 411551886 446855235 72575400 340781157 315985497 627795783 418006398 640461740 127088946 381389781 105290775 517959213 357388189 482117434 206849820 969425333 333426159 406994345 109076741 589004718 502035149 850409681 750339022 825302128 276316285 482069485 129943230 522930491 209707020 563197780 520062297 620863884 215854879 918646335 739450825 795309808 402686321 956257940 226085261 924441879 260559303 407323357 341100669 768482478 412945080 902022061 863076374 940078278 200962732 938391862 189669204 323388423 63532827 813116504 250860025 672850454 215100622 977436006 261538397 461443042 359853844 680132491 677735040 694330967 346270194 769175833 345823827 856299617 584239785 772766365 91717749 345328159 60253875 736230231 590430168 882142811 623085664 913079719 421718774 524682018 55845981 204622659 71370232 759482953 528642001 608105201 145531681 282249995 55748708 886888235 833043981 960777537 834194893 998769357 958683055 966998108 575332212 838801895 522963611 750884346 439852620 819689668 418061800 810670262 740491504 964259546 326670383 797655614 364467146 376654125 330151478 865952449 855499853 932786440 294141369 621054800 35776632 650607195 93092458 862120276 521245258 528490136 153379303 859424404 789375980 952934663 68494485 93675771 68650230 98200173 5047399 396238826 337673776 553115979 245240851 363892487 174022644 492022262 295571655 528273040 249962129 822755864 400070624 527557828 314865958 544688896 239159929 667752642 40409206 514520801 425289160 996856169 524236413 856394512 323148289 474370751 13599046 80480752 55368185 181214194 78295390 852834880 683858396 974123299 431281839 993422689 276457927 388037277 234435695 577612597 259501897 967079816 40140546 163658954 21387643 193832174 169041746 728984179 205387626 793615889 731207480 786441959 152109861 181909044 170159132 407434128 94298178 366267486 362682218 472988355 322397191 826192748 187185175 552030009 525885563 961046437 769208071 836827725 90550466 362209056 312113282 477132372 67917582 535628893 288707406 916744186 345639934 571616471 47615962 127450872 110140639 691848125 199648626 243989292 159057373 989789296 884286279 997549839 18902341 168560038 67478719 186392964 75326879 532708560 370113294 748275333 743450953 847717775 225131250 823884748 352536292 495922905 86538059 683294329 645480705 853096262 226156997 571057286 532329383 914476254 140266292 560853485 39591868 935435275 666890952 684559133 661611936 757777282 218072056 434356663 383821179 739589822 310090703 650522137 478898651 985383680 796831978 934793593 509932236 690809591 16830260 301419300 116902891 351992040 250456750 935239116 839612310 893571577 517560233 607178062 278885129 669260668 13079534 339339022 37179628 845904408 230303973 705626717 5128097 968006975 172580727 986492744 558575376 864625336 65120143 871957363 249908275 950793719 35818226 922488780 818161393 991636456 9266252 498588482 146822780 451358397 225653404 511770750 254035629 988970141 493479579 628862175 407465062 682303431 472557973 768421140 172582859 750676675 45541166 682332551 431114814 794194537 357469929 513260632 202389656 705929302 66111026 505067949 474593212 585868507 446595591 988580764 256807751 413703309 140824877 978389412 263174243 900201984 146982348 471861541 60011301 453988719 130880387 531622593 308698051 438635476 364823918 547538582 207223037 210912396 179365000 764063553 682496996 685092273 345764138 348743012 136726544 377860702 355795887 718239973 319285167 325463755 153033045 259284025 230001148 901146232 46409033 543862476 138706756 363198793 207850866 301167561 267720917 494346759 245543585 875182551 358269183 382079765 17965069 320801166 263140252 324366778 294034727 969893097 677174861 993794098 479810830 639464110 242012610 490936576 1547384 541655558 33037193 633919952 150390950 375833468 162405821 853878311 747223895 834733793 694871184 756484578 463573492 659715298 643912554 811788859 258073800 477041851 436301142 677815582 669333430 674119519 160370053 630835127 523865070 873514216 663444772 708635216 105057591 499225530 400889667 788531624 343951639 901001397 124633574 843558148 346322700 405027352 68453528 395424209 266600970 612703691 12379245 665942511 605330762 618815646 562686518 952577484 757860275 822386153 785054046 973307673 768695947 927402623 418771951 645021241 543704116 718588671 670715791 786188131 199333877 534042322 61559355 999823017 786098685 921014440 215964942 242151360 167440140 928358200 754336796 991788277 446392551 579388301 564204227 887027204 460061351 953153324 764296136 813237075 691041622 787816866 326020841 941479657 326338757 442958377 20609912 863058964 844864365 977276496 348414670 921672911 596149802 914488368 182544732 429873609 69077985 523656472 231869939 429743893 9572184 584752981 581975082 837667786 585984608 661615762 411643165 985243589 671441782 730754063 129716509 246289793 61586416 712071753 655936174 677010538 363855545 674435333 641618806 969856749 271671803 944757560 206458647 529135500 67561727 878699325 120183623 857938140 821724146 909237150 3391927 592585918 543084036 567668115 246519732 855319372 534928798 711444872 141502106 577710526 380536568 612661795 604071670 920147614 206705747 408393174 339031173 411645636 348533748 870879212 531964989 704403758 248122196 788793880 742578510 981891148 149051369 475378896 426406902 633058097 383392025 671876477 310586303 510669218 418692346 573613813 468893818 571894903 531710683 632819283 156707591 602550205 75156580 898285784 615685766 993687809 432707659 766909167 749149337 999996185 643390585 913102268 289285781 837199458 369027233 832339970 169525248 575120829 481429704 948364179 771556025 833506288 70634532 356440493 270379640 660408843 216344560 337016643 142875286 724158471 454242307 479741768 442156207 708480143 424214660 932055838 132388330 931401133 645493990 891717385 409544414 831878690 417617362 946971858 145088909 642281228 283679911 682539844 156108100 525671194 119840815 388240406 154545402 707164875 52002744 916105737 229441873 676418162 153543649 383932091 191024555 913219476 255387071 522753007 263442855 694443558 411065294 899595116 54011678 977929952 633662130 923410639 455910499 835440064 693795407 820242648 340142515 753302037 521956338 705754683 36209332 335326923 77090497 455092236 85268975 456546547 448347588 678146422 437936036 957785075 363084639 527312653 181344782 821153174 417954743 725777327 588963132 971878197 751979795 796640950 376849329 799930545 398568472 762587132 720258049 856761060 691842918 944227535 835524135 900090143 37162642 743572523 376424377 734907760 349865538 860205538 431083002 898394123 665145308 741787997 376019726 576207050 143399968 331163790 249516301 497935196 442036939 521138136 467325839 812620556 656091879 703208836 475983508 603296370 509028854 835735602 129452095 869056236 442482881 863285872 313327696 796696570 68805110 823741413 393693577 709758194 220602216 422918744 10378521 130176449 4912926 379578768 243345003 609281231 285329286 904090497 271280848 978493194 558462408 797044044 510935985 803196261 472698604 523888912 107544647 764518155 554792395 684026556 403036396 850833185 639317960 707828940 88550844 246418785 211299625 657814200 332363581 690837574 558229394 981222394 488805438 906895449 20102964 507794620 246189466 783962999 432744528 816441999 112860182 236755771 131746599 433417650 370135887 827870772 518813691 608684546 414630128 686461373 618287451 818758062 548829394 852379025 360587539 915310626 887631026 998263420 760842172 943225923 363214881 774999880 687420880 841385964 721698608 926590024 371514126 503083986 157945516 306816935 117019232 990487931 232163850 441170196 47175047 966160006 695506611 856060151 834524228 846244377 782026172 814044065 270997001 574720434 89592311 575531427 266091544 342988414 293586664 294767931 102270870 770382868 256599518 310604091 255207227 438549978 13165725 144419322 37850098 108705831 88882450 668395872 264588521 662920270 70601064 881409135 780587041 845030094 217906812 520413496 448481605 461835394 388406600 398295222 165891838 997489709 586097620 665502489 620143159 801677586 190530022 780064607 186866917 438277027 234014346 571693424 319802954 544057624 296245100 504427863 370224733 833081117 458548774 602092996 405044675 928212360 113543005 249568233 211391312 982674045 626569776 691284887 462043427 870515543 844337984 958917558 940497141 976585954 322950032 847494567 578420556 928401963 471176282 497076029 493653600 966827647 895615850 983176650 219604995 251080260 112559468 799807730 624796262 836883794 395394776 872384034 92808885 377125423 177286771 875913797 734051569 896323841 453432988 463643764 166590388 223915277 23688102 764254820 172088479 627033175 309153028 335289732 104861553 666120030 625090849 877318235 451548158 655465899 558189181 705917280 544799056 657666219 293007453 460720688 151588717 272857220 200847537 827622201 731196301 734752372 607520339 898990693 662740131 936994260 88281883 759614583 293641268 364121686 305107674 431580631 364570970 807212142 525283647 727676188 88617263 849863919 491224420 982340481 147779055 273773680 41404442 265488821 204527444 403991443 34782779 930384352 760011226 945142853 688557800 817301595 122926420 527814990 467330315 753901680 218148135 741260191 603563690 634421935 498255312 818753690 466853254 997792690 510405594 903681922 303061466 396611686 297499500 380572431 128902680 577980950 350841801 452574032 335159287 707350206 193012658 597410869 109496845 918063378 241353294 656724233 45251267 971437580 246591302 468967333 352957707 471177244 281357386 545383831 223381846 333424621 8955150 951540918 40557552 172533235 130956241 661681306 68036637 698108475 96246790 606672569 471414921 565952577 250130735 302727705 163488274 627557762 319194007 986933903 480760890 498459337 280116943 488978134 385493225 556594195 174719161 696917520 641522577 938205360 624505390 820225366 819204167 945443173 874292750 883342037 133261132 856000408 334485338 965974785 267413470 466725479 401889579 994159443 893536003 918472058 770063018 880655537 70367032 697543244 204129504 845402800 496710273 561225805 352855482 982991194 620509319 688612642 570920127 778511142 264793106 620219434 593341424 863018819 285633581 770407437 749832933 925263055 843114694 862926895 730650344 932306849 380350529 517661086 294733976 946334791 626341305 964832251 627284999 791266305 134260231 542705355 93620003 830369222 791945829 959424506 925742028 998940376 32273947 330954928 311116057 977134255 887861679 961814485 182360088 764781923 33903530 763825114 408236823 967536634 456435878 810058962 361827887 420844281 139861414 474022143 144794892 939682242 517022350 912390618 813343885 939854867 519819265 521464923 364333124 937530705 443410748 991085515 111202875 288588899 159828067 343150051 55451908 684504429 575017570 860791952 140465695 515902801 44611966 175561010 57362413 600269470 594275047 839170348 379201175 630964528 2254616 185486700 106743625 804463080 736511377 959422434 475115936 702755799 222235639 627068014 219528331 472304740 93653885 456423176 27431462 557048521 276071981 641769476 366046523 830491030 565120480 803293644 453397722 668490938 324787855 335579306 56634021 196632991 178977978 358235383 265284187 601877810 471333379 717104529 372482071 644562427 544201304 999912266 442037246 757650833 289242168 514389509 18621318 213372587 102278431 407915133 101429261 511302540 277422199 581022263 256466828 607657771 514423532 537413234 7804156 383092765 319294239 741505936 450710128 510707657 457651066 646758580 357841549 886014337 614329803 889219726 797160086 992028836 493366381 612679574 431176674 988306663 618093257 911970570 515130952 963390149 931361550 976254626 17280243 215565400 140702971 945041056 506760075 563732331 498816985 714553938 328781008 477604325 382145775 612841772 1869449 721684231 219467331 959651144 704936722 908730850 630467998 931804947 689329997 862153047 741948115 998900791 281083440 741883766 75958921 249141013 79474859 467179055 259284231 331111548 235165892 578606812 43746126 159536710 21531410 914517680 442922710 662537410 508478221 702993256 555919779 822795563 410483048 582810784 339552837 807959197 730203806 897561746 643782337 670657599 559001702 974397196 456053630 876134221 447019541 603213738 302896696 921130717 501686084 922091512 294336779 396376754 102757215 753466588 532151132 849992849 601056919 952344280 464304901 670433839 606560743 829577986 561865430 910366644 321688660 672550921 447703264 920081486 72743843 563155224 123614367 623466570 290302369 799393044 395375781 594994711 257254032 501635091 225512849 420605142 309964459 442054769 90682659 587456903 561317870 692222921 292463595 656329752 38412866 389134641 127934418 224134308 197745884 756823404 513923947 562610892 456334841 639556702 353103816 744603706 348433227 653159896 381881683 382244577 273940430 975477783 383720702 921175459 90481748 750060703 680457504 784953538 497936267 888946230 479373699 571193323 480917676 613436545 286644434 478033491 405709958 539589652 104100384 724432303 303681997 330556914 7247892 558111481 473240625 781226531 578051591 667543000 564737282 578336626 76840887 411425737 161872252 242785119 29615560 428207086 172016584 286467286 88065154 456665064 112204393 901225274 834160397 902830657 407946625 585727331 337150798 899753591 51690723 268522576 92828537 308776669 249287735 912136427 478338091 976496631 214976778 795642759 600895767 775074727 199214981 891594525 600387439 771039036 173351457 922597221 303966619 949492506 803729465 972732198 938440952 945152023 474792501 708475774 269529590 668493175 554392985 986089077 449660291 495698898 133165742 689334083 517688711 749920775 592621418 979214246 763394547 835100444 436486313 623481100 562379193 730681037 209923550 679716105 376669731 566745164 485423418 878318757 552289219 895645107 484866164 646744467 245866302 778921585 474149280 494158357 285287512 630891980 379181498 431150737 223581399 810786567 654771528 758505084 552643598 798244111 341866518 414425904 94019301 243808414 238523529 852668974 414794227 537185274 453750031 521139103 347153207 950809524 927165209 958652431 59384453 918051394 479096285 686872338 607815046 690906470 611493161 743741408 330250211 793246384 500322464 566013519 215523474 486160312 218495783 848092791 51485115 169798209 35475127 204379276 140035125 315485258 53277377 511746469 265154702 278971507 192447678 994845403 91064412 766356920 298381200 301447748 161846069 525211311 40134834 650420570 291867800 765914945 301424456 479420937 187195567 203971245 203107985 488815416 112071458 900375842 562047084 987578465 303842771 450869346 42010897 171776277 26675738 912389788 786980117 910577710 547459584 864196270 817901033 836376773 529748342 691668050 213622195 564947261 209000421 543255104 117310820 235442072 120035587 823048255 290301777 814412347 567336935 893608931 645693774 697218980 277199014 416501762 330244622 544203311 332717219 657542714 606458207 899406394 436393568 978194220 743099299 965024936 889459032 936055120 703674094 876373113 678037762 724856996 654753614 882129885 868904693 985235285 777564677 811450871 325366747 541532960 530209907 590087997 26407133 793461754 624798240 974997448 53655053 263322031 183676571 513227347 460736873 696379151 545585012 760015575 392976180 483211586 210272824 241508338 46629821 71343350 13796938 162689772 10610635 877700065 490643386 912648230 409005836 635709766 498563130 624267454 335043979 807635739 228740056 492025191 86141390 304958097 24607289 888167995 729943023 890650666 105463559 784989860 589119652 864287793 146676807 216610903 206913288 794545438 490600963 728809008 459077583 546217829 196027409 998157983 128038200 539650377 229120237 772604373 758701682 847550944 843531859 913445397 55979979 636669427 260159202 793112805 15288842 272834575 155212161 632080382 417722200 808193616 268685930 508177935 424252669 737743998 90672274 177516963 151001688 597846581 297938265 768203186 18825293 468852531 93134972 653106906 7521148 916864822 155969205 455182312 366183971 937510023 780031799 930579351 309148466 837265398 769883861 842075557 204827962 921420599 866524336 899984766 364096235 495218901 213611173 699141267 452815690 486637021 209028059 935669331 608103279 903101642 117409422 442676475 207048410 337616861 943039 252197536 49823040 666180543 259890036 936085595 739636225 865723182 33697539 996590734 474092243 962209145 179793158 801268158 153522781 538320369 520659848 799159529 76346887 416588090 352784308 368381379 26571443 898641529 228595235 504644708 45685007 776058763 771712746 801947679 277670563 647905646 380772588 859241713 296402864 417588554 121001567 292105502 180605284 986139252 795350876 886818251 172975161 285589550 122166432 900061109 368400723 370317968 209715573 402712774 289538262 914989447 821620587 934700333 66235970 119890155 91895850 544203797 464763435 543231829 440051608 702834957 539440625 935115583 311176245 329002238 53712761 967099362 34172855 511742710 141460846 643124647 305779526 919346836 909742928 977416940 530978331 819625269 37627295 285853059 57824887 963546636 99384193 415883466 134811461 472325644 441267867 660331643 554763733 925158352 149804326 282960679 36486434 206896910 25897664 274035858 133034258 608054845 328718964 439313032 77559600 744616152 550599238 601984465 598587897 894462762 792425610 834517318 796231429 831755568 544945224 577703384 398553172 689758627 141374882 515690483 292521825 782435822 659268926 722112065 4798590 885958064 601644433 884363253 196001880 248394912 191051747 630627134 230013892 753695201 535322278 569304438 451822109 878900650 873918662 922511813 519497034 827773009 819444222 956054901 556944449 662713971 366412425 383115713 51321640 897473349 51227330 624012528 393909033 457091399 260874005 986704205 682795296 695771425 283274784 404980769 79152903 597996450 257491195 369209715 250947170 866753099 756053426 994461335 935075050 954746011 854425409 880386020 372129597 763642852 62632286 613530454 144235252 629028194 555820874 823060224 4057488 222475287 204795722 250791960 78369900 679948746 308257018 509270058 219542578 275868157 96014467 711255483 511633421 943670136 433579994 639450602 504023082 671476416 142369291 967056127 131520013 686829024 201409798 369836327 177689428 712527586 144787035 377416137 201422266 756411318 61749989 932534833 707718528 962567144 310974638 369837301 194458790 980939764 518437746 669311488 505576374 527989525 308995500 624887680 599536597 877607752 346449835 961164662 889905065 890447928 395756514 965791593 25362703 157695717 141809022 152010637 73949212 922563500 403712738 551890958 84444573 877315656 248411538 469640264 444143775 644466333 60856094 530921652 237589786 854206468 2917949 902201854 174201265 661451618 446691918 630747513 325387167 345764170 178797373 923047165 223832727 931401372 216582631 923875617 712336999 747234690 563765017 736096042 132182349 832194294 234645305 665153659 68163402 942871235 85983790 715421886 412252155 831741666 333462411 339739763 305446962 349949893 75673542 502313808 24543434 538749811 457362008 741727419 635757978 822655585 160504471 945682881 382172058 440365931 195599634 302332275 51630341 532438104 33182938 873733075 55243637 344802353 22008736 207791301 114135490 909583692 257795441 971476231 832165510 866785104 836854483 888791830 114042763 863935444 296790884 696143584 202238160 774458172 436025937 846059156 839399596 938996638 140285075 888525184 175532719 591567226 432463015 448138444 288844523 606455116 360871653 671020869 349774362 524909131 519951929 738266489 589146997 942972116 188622946 758007929 125619261 312727316 199678168 664771135 100226796 906853394 368334481 818293643 484358199 846443782 674043757 995096169 664330172 818529113 777385131 934488597 62814276 308872664 104113137 598745268 545332257 700923263 264377479 613164721 385741018 456241403 2308633 303306725 262459858 735309490 172323408 190580144 120074806 150278143 66532568 192898910 164290411 945433537 807597817 809061204 478000486 692798155 76620576 89760457 40158566 839832885 411775880 907349163 338699583 533293562 483485031 632201814 294958419 556132718 346169413 676012795 101807844 140762458 77098209 293882294 216161717 544113803 504177638 579605494 405075668 603815482 587593616 600725165 336137440 376783741 326305362 765874456 661796089 997549727 449163265 833208524 93284841 137663321 51513740 254493163 247282911 767859546 8503217 701314720 386541336 506466627 78513490 573285418 302596034 960456387 590408787 696906856 556495969 726718084 567538235 824206946 627323470 713017250 708262752 891401099 350098375 709707948 177420138 747732438 463089444 752854483 530631347 813352219 589208590 647824065 346627624 673250085 561839549 629565637 493467245 549665348 476713449 969936118 827590011 995465001 890830116 921481871 202489626 474969184 342984422 487958233 218629287 895202285 111826568 447039923 415949628 727656427 608370717 950935577 732939439 891643952 10992987 702928742 515701115 732804897 106454384 427529039 378699196 820745966 491250838 863239173 15381829 593757133 306479750 702924930 17591213 753523724 63717982 747253803 553162914 758722508 263373667 942725568 588378943 636773949 457409196 938950770 659736268 794300936 320799651 369788094 11346330 517431749 400159611 433193350 109385865 476257833 165569132 957641993 79492426 730663566 136469814 791221353 709774167 964738613 802941312 813510894 370765481 820594495 306221224 307306077 23546419 636480051 592549318 730043140 211955994 692200154 589962046 814684133 324873817 968897428 925104280 930722247 654076652 812811081 18174684 888731777 322002978 593185583 67537530 548203064 193334466 885260349 582559403 945648327 600624676 667718871 151132162 888921158 581378185 739905138 310819535 625981354 480677053 512374171 301258867 507337728 336233902 426307082 141076078 376394771 146208398 681542011 444103322 877058884 311246971 751188237 178112733 621697073 174739629 225680567 81031870 713491517 660915391 696689884 657908840 670845397 633687995 988927148 212831202 410950566 261464149 686264922 405998268 513507613 49421119 900169075 172456655 413543632 92123566 778959702 480714060 867891971 371694160 919719186 132709448 630179209 362764937 476416897 160314178 761282584 244456110 596864197 111295206 994076035 941041461 949183085 935234704 999417649 183190850 454470254 373357002 392498003 383872723 552723551 257131517 959279111 208934621 346571047 107750011 917393360 690748734 969878309 965562035 989919750 610407526 691555104 181554029 821609563 211089341 756295979 46887253 61713267 52889473 960175937 245962084 853638024 591879480 678178782 548188193 611681904 562337924 674833647 584470695 769820109 472168872 520650436 313341309 744185049 12771771 892147977 610533485 710261109 293858970 441698481 280477492 460771364 75565865 404685383 153655648 253257886 212368017 943289283 756739015 819664367 139916938 188103132 5453443 868093400 474215449 639572328 70379642 462630900 138736515 329760845 216125928 963525149 325511803 706183343 142044637 158712822 150196346 347336825 215747387 844198134 278454110 502036905 54331405 914069323 26391462 109692737 82340957 300515855 138628099 751669116 22120305 521778086 115919368 715354636 402595951 498485758 363309360 989952737 289647750 760590920 562234739 737580926 95123972 697924149 495151532 730634057 336680231 946986532 780572924 989240441 810248354 879790180 242419309 550733191 48000840 303128821 91637512 744597913 521470754 754172769 540891553 791371760 488668606 499166556 255873762 591767467 154171747 729681522 539050620 856115859 848361098 925138825 721062895 838458033 174557303 340778146 224975941 974178948 767775511 878387571 141292729 351674752 297545122 888181255 433368288 928233591 569837861 681972398 131472183 601669498 386180186 973668667 48883224 758346229 78709253 132261446 75430231 433829652 218435355 490960689 195976421 445626335 177642996 836704942 767198733 829219240 479710930 760489996 508924102 785790778 163448129 511899937 482256770 873644483 797357408 805251559 106634017 396087840 184414227 559368116 363362448 932327625 133592225 878430630 789577702 970978537 893531643 912077792 755372297 988119945 313002806 996594265 640359555 665411032 550003271 926436669 31816074 950290619 733212182 908905330 160781349 804632567 517920054 560151827 224405892 999104710 200786355 239329167 149919422 742718276 246059715 585632403 235231664 677689982 420943328 905459549 61122549 484724235 314425239 630575291 183585046 531529304 67301540 640282414 135319343 188830462 173066753 221946347 101926917 267122171 47127528 828120351 89636354 806075549 378246871 996539477 690439381 962128449 788923367 799141677 692075925 713709446 283276388 389903962 64717659 879333897 864179794 936334648 65774013 250561423 107705196 592324506 364825975 546975784 205263989 960265758 586645838 842758258 18846681 424962908 343365280 682285521 553475476 921958548 63360309 258002084 44749839 127845620 105648746 598184138 518431769 573922962 154684696 602061554 282114472 646680706 322683481 785263414 341194755 436480005 379343962 865953264 841939260 893044536 577458393 911212343 220533852 586501191 435377341 741073125 8734048 710954251 91652721 690751669 51923144 139090738 20533476 44103908 21169730 456968862 72980763 285785077 97104807 445181922 357512419 690784987 607122385 661057476 516069394 803888045 88967659 420358747 122717551 227908683 75924158 654313077 652652173 802676559 518052183 850142514 817690018 901974719 841363300 943679905 206673473 790424222 411460266 642231515 60027706 896490994 510972068 532463301 485406828 621151644 205259664 824115169 586950226 729769150 354151534 437381505 195392367 596611039 18885890 811390113 787855298 797955350 103711326 680970989 190342518 226596335 207544332 961846760 234831403 939315074 105271991 159655906 18266050 55624311 2525862 335140511 307650166 315178767 13274141 422469388 152364534 408845313 327156142 340445940 178689866 465367235 294680888 335417736 115554130 700169727 38018639 176708627 70743763 167800754 125494214 480002301 70595709 688547250 89850141 234115405 113171706 276879550 220780643 747507626 669678007 977865004 817022744 852761844 359527628 820597345 772189305 899850060 80845529 256955564 93977988 811195553 356941699 926524621 200549359 308876045 50541763 625752874 98403333 115338485 112788156 680641462 283709829 319109835 249940250 689329905 472359031 818339675 360160120 700275746 532397601 812708889 282583498 353728114 120070235 279105310 246176555 908499883 766454942 989428971 868913283 891763078 129884464 577837940 227074220 856012947 789213937 815507468 497397549 851816856 176272464 340471993 287223670 653565087 162337463 762369301 673210634 955271442 486910587 984978857 235114611 558396183 317733280 922447655 889543290 985703475 851139803 984976656 708440186 893452850 271793211 473716885 218860871 775127503 497990356 506296561 420159192 777922616 210574522 783622177 470807329 845645496 53351398 849808942 294373987 893218800 44158767 446757705 335364600 476341377 223635670 883234203 794773102 906939009 890104208 894920883 95542406 765240184 28688274 900500101 56088834 783252160 416637783 694332628 337936258 366951195 245431035 907120985 581546409 952414777 879063346 957987471 789051723 843910835 826980898 985792735 271837249 980638315 638231016 872626943 850133476 954891158 468671962 887078380 426909927 463281731 298067352 703882755 51040800 264767048 162800107 459470970 296865459 538631642 90715734 436788728 107093522 408267918 307624763 801544463 427296610 593400759 30232440 766431612 667345160 936549714 894560567 918222310 887791034 921843550 270496841 975127237 555148908 899636155 180869587 628240551 528290375 636798772 557660373 770302866 242728235 287348459 31746801 142523581 103567532 356798084 165654035 730160885 137207792 239500246 68579569 186611065 35636810 344263512 214735102 573678771 248665612 777530468 515999297 638685702 511324433 877471287 240994949 242200628 82479697 84403624 81449858 547356051 108220168 843336280 578492250 898595074 227996513 386218051 327986215 408718326 271308067 378688825 270275407 973566285 165748367 768339774 464016641 600856753 418677947 796131902 209255098 620264443 223548590 556411570 459017332 674027277 620359940 883681846 866423897 963019537 452384226 889068192 865033856 988078465 263664320 286447938 114668674 558831763 140436084 725325598 424130293 953618790 916367248 925984738 473189684 648013870 199193153 358148849 220392594 475622033 190654289 912286377 254465348 428596307 337164297 639572193 331630246 546184899 347840227 669390967 118139533 823897899 2977566 163074864 105280279 950042907 815461985 826269934 268037135 881511910 818696679 926925596 563868723 908534019 858009384 994322880 117624320 370411411 61882998 808165032 725334390 774765697 352040264 673413291 373009823 488093045 60684857 946734565 904226468 974102367 761334035 908883991 690772204 993266964 428080555 982797483 796458784 841308525 390655876 937656624 488970218 758424550 737524029 817502296 866979 427953729 249461219 846609033 756648684 973046021 252194669 878987790 130328476 402254672 330031591 492965760 275595810 675041595 83506094 207456196 9243001 155815785 53025147 459137018 273919993 533684823 426477836 600212955 344429992 836242893 748212253 823663635 700678137 947469163 505333375 848169609 392169706 832694362 593001558 719164005 559463727 669771680 302007891 731855281 569083874 620893809 441658996 521096664 146965934 247158325 120220088 353261329 30898295 296459476 264668886 516641508 311882056 731908377 138593860 569020056 375112541 906433920 40118972 287536251 26574342 194320364 155483947 219542010 87339990 153011094 127151283 481309633 212727685 816703630 618917285 871198691 663997277 883873989 549244803 733268229 301549242 586598899 463773620 803933862 313791656 693339027 326974724 376960029 331457336 826771101 217569075 682876490 198714749 474433699 68036629 820801311 370073545 742511955 560082976 864187200 295213817 762416379 279223837 474791937 316686592 456801519 315524918 744570949 43487407 826454756 279396617 811301780 663136258 833796896 147297440 479855145 423498483 568132399 291978480 512866959 454155403 502602956 71799253 550367035 207198916 473821982 175326962 235688200 41268437 338451916 191688636 471198896 154243415 738280062 242158214 815045812 428776900 774756190 666020062 761262697 262641959 507081462 420598824 938333308 281826332 662820791 237753725 474748070 421419139 834758069 679245371 941788859 917106498 944629657 107726985 360718881 357429060 778938785 772400870 970861354 264681803 850096872 687334739 728483506 117270119 719040987 51228108 259567118 8034893 740894413 384505659 816774045 103220139 441579619 30763398 680412973 640919361 755658700 656108084 779385061 643358248 947273162 352720471 914012334 673989018 960812194 616271678 953516609 809191255 826543012 696242661 808575770 523156601 664368861 605496719 645832018 542456899 560555057 385835552 849714510 747581379 892951016 843798071 969159669 686947620 737595251 727214857 975868556 790586210 913547160 367128602 797999745 685389582 822516200 402707628 476921104 41417894 400325573 301148621 414134464 173931055 425571931 109259615 621509491 570308558 835279978 361834256 960809621 309287423 678821110 244750913 662381865 67643833 654505219 371271056 475722076 410927415 740818487 585809754 738916144 68499370 806911429 214830982 556317062 127248202 993510293 18723170 894802790 534584373 849911888 840293767 851929148 202316621 244323002 50461124 145584289 34406346 970272570 757780460 965397508 898158813 970357070 52093169 132142245 47850828 61769326 41389913 423711445 60017742 663941611 603886108 832957093 724216299 820344059 63962425 788472251 484495108 771700875 613932996 893780049 866205626 897371255 444889768 754804071 375256256 476808471 102570255 671414462 602644865 992077489 797296613 821126772 171334437 989524049 303372590 552300139 290878641 800481957 748639500 939077428 19112094 585617406 420543000 775758069 20128115 78872284 11814542 629838277 186032593 643404205 208126848 585842599 186686800 246702551 217595092 326856381 262867194 561237258 198380941 317660726 257743660 850481305 386825959 699218061 417818631 800721151 60441428 965330633 554297432 925243140 818748880 934872230 876622596 912438445 376306664 856383239 754231824 930595093 632172567 801471805 287576436 819276510 743242286 784661847 271825975 622835102 93614973 646869981 299976161 389332190 333425914 802659454 218871157 695766872 525480152 811644184 802833453 911030891 396591346 468501763 305258943 942109264 254924646 411970057 371957057 862714016 778831601 962420832 327898902 966827165 203952371 576545644 429163302 951589548 228306612 280625465 223771041 397519426 204698017 657646625 402076464 852173764 165372131 332066817 101794582 663126421 538153830 568118459 310052672 890588804 314853217 545657350 518804063 797983769 535681632 999695452 217846050 600821342 172607231 562622950 357269847 688437851 224276417 666700136 637398973 709658891 313004221 964732984 316001717 785312782 244028260 467967794 426256159 922757439 917964390 923560896 37887614 59087358 26988334 155321596 110563650 507710774 231690612 767107881 378213124 385990447 166953537 696728884 33590213 194152961 143202909 222363833 146171279 184597795 129055952 437457350 295331160 740623647 523906327 816259418 498695855 812151572 92164047 993610171 534238764 671768287 185807783 724762315 604381558 854651201 780476645 991868951 270625687 976043504 38841114 589673728 332724582 667130459 610089750 743388181 482872963 722084277 84631080 145571575 17749631 806723738 281065722 368957187 359480502 733699396 580971325 644463098 616021605 635059461 182871752 198597956 61625113 480931620 327313259 729708972 249562611 422640032 186905155 733004805 429085441 610495609 94106047 397046849 51811268 684480055 310057182 974577107 246278507 984352846 241685945 295726138 21375821 563701753 37731530 267406269 101738076 138128568 106316643 252769241 245724670 322322542 110198758 776913598 282837362 348142727 140223602 516778581 466036678 608406076 137682809 422614436 326441988 356317725 160350980 435185644 277041983 711517536 569279082 626985049 63718544 253159899 185073388 691898281 329418669 587952398 529225998 560537343 230624052 557647879 279133018 611756591 526924620 665087430 32913401 997697623 39916194 720114017 384559552 634937638 75791221 396634899 79692711 482860920 296819489 822196442 505995882 983748723 468938096 900308184 490919540 687626889 601913398 733352505 570081239 755675375 300367479 441616236 382324356 417327881 45025239 231700114 203591829 972568153 693809579 915344355 114378515 532550119 16668576 631050520 290979372 643545972 133835951 805158737 302474278 666707444 46433659 54873767 40610928 320473714 63705818 575087475 362655019 576614775 311043695 367354646 182431647 463095692 10809170 175328993 47541237 761566824 218038087 433306722 112805018 116143103 43221519 152859289 34813646 135613846 60324956 990307345 968145417 968946727 79520381 610503191 20278905 703843420 647896422 742205190 307339007 787078445 545188539 767204573 194483352 905343580 866229960 938045828 291072245 345570156 89160140 368841774 220098431 246185337 205512546 869310426 696950783 915024993 553768619 875348330 197147624 631070809 576338422 700252365 351701876 520697932 73179499 886297206 566956230 784654308 245926557 544704814 395294665 913022032 759407675 777373990 297295093 627693261 51787606 495147050 270031370 403673865 111275717 239458732 222880224 452445572 437708453 715164314 439305425 762664096 661217789 761952280 693437172 893512535 803890867 963117653 118174592 339320424 230954181 851398288 252286272 471794721 14677000 408749426 350032213 964949862 871172305 908952225 255984476 302357721 184785304 331643187 239316820 415681117 337426711 638586422 453422416 943574911 550463708 735883637 581618577 584498290 205027706 479033003 337001290 506294138 191973291 687759789 32335990 797707467 696919274 765968895 647744352 973067207 476216362 700158705 406655069 719915142 85286455 551960174 160966308 331872637 44599140 693313863 540599922 937554421 217996892 846353193 196573621 387083231 203855730 988260621 372058231 424122481 278607948 850776683 679659736 973964958 153932794 915089425 24015956 395934458 183475996 457539910 421519597 473576022 332547736 770472657 255062430 576549404 248270433 519016002 11264061 218481902 69374849 587304011 331906289 819566160 583521863 904347737 699457913 959995965 568775421 614245553 384518433 487203409 45067826 939188831 810889368 987928581 385854599 991363488 540136809 783343885 568828936 697809278 491215613 701305741 84620853 324822981 29253946 886018185 682186535 947214219 466265202 954062069 239818286 423737815 16757914 886113735 654558809 730732576 558757543 716722175 704856435 759193435 300655205 781345299 383499392 958768487 470664139 813424095 724794519 896478482 592238234 820174837 329654324 968993292 93823219 110154959 107342491 576427003 352600765 609693881 212032434 608262569 352925787 459905209 443830472 461413013 276310066 708570970 543262870 702936583 373222614 939359869 487216169 951810098 1713172 461864666 353070753 883671424 678551263 747024292 326632073 909461780 637236753 894094681 797704687 848233141 581052854 948316714 341274102 923256920 327424784 885604204 775696544 792951545 264825700 466325333 80817714 842562024 503825249 936210138 576936974 900511979 408448603 790944805 715652215 984155570 252885407 696648545 77346316 293974171 36663727 872111457 493589841 642069194 374652618 542219980 298133918 436163446 86484828 749171187 698160315 930332296 708704939 722560659 461079745 465671415 332805753 362904442 164756429 182099548 116426201 860244819 214446294 420442387 386073477 489981910 169015739 686497527 87304141 987939123 906818549 982071385 808257470 888413288 615511705 753180108 1776183 636207614 510305362 930773119 87348707 479728615 164390060 484823203 177480146 902835768 223086918 702224373 334343813 784459460 389946370 545915980 405300246 757502239 738412011 956497661 551166508 590938358 561907651 857736106 527838602 760547192 98604513 340181119 162754086 450679721 400759040 644653607 558549560 597056356 549513439 644608337 572175117 882841375 843264721 921962488 3724520 282381405 197618126 561113204 400178184 808331090 739158865 883634902 580449521 626445444 520688235 908003964 9063214 585715060 471452748 677781416 26620883 277429062 143245269 703664537 410012765 995636743 237428596 489960340 38759222 439770961 197937914 883993106 60666038 276627376 154123552 204142830 58926378 135330467 45350272 907287428 350512015 362193253 347820399 771831814 326173241 606670712 259789024 326053202 260576179 385875332 200995601 496025110 284499542 594478118 296479134 505990960 50651582 668917483 372859711 829697803 608655441 998548876 30317482 137831533 10804975 720004132 7673844 378749269 304957527 578093315 138997443 214807706 68370288 381712334 174554893 488223507 472399651 575440616 349306443 569214607 16388964 368335240 245618264 597800763 90126720 303801729 155877896 912923542 42544027 115694783 85854374 960554849 299251670 540446772 401535903 696362867 134067291 546057830 184116796 879227367 842074186 945566127 863411930 871785356 864897338 933645110 724772605 930262471 3800879 814743621 606665226 783982630 523661332 569506505 273699849 569850251 447319589 482323006 51606722 616904944 513191800 901849972 460771454 508183477 11739624 946125326 591954291 904857833 243218054 346189701 27660458 516591819 255715103 399171496 135648636 982484735 695672172 898873248 345802774 734697217 701896822 963231235 180217003 992869598 689186174 724004691 508355677 650712402 114026446 670022527 248132700 938710529 835949196 842571999 374296493 891447726 200388797 978420413 16011973 16145717 9474978 813104215 646909820 779334699 526382805 846042405 705247857 802265927 434827736 670241664 668355648 970452030 197492823 269115548 116101342 643517755 480826240 517417055 361325527 538336036 373303496 927519612 346811554 654681478 120520515 612619074 137052346 856379542 596215611 745290967 66783786 916156779 870105956 937185482 383501682 513150322 464476688 673196212 125411559 403066070 388286688 573896808 144479471 192040822 114994605 673374058 436898683 560819577 225038536 706751167 60548514 371788371 98277758 327027664 202110516 878179959 659144496 844907689 78056565 425895439 89616355 341144151 139934032 451532766 28642177 619633583 239595422 585930923 585583240 643708468 326383742 406821682 194664294 451558459 327174596 853281359 350411102 567196347 128621100 232751732 123681056 369466502 125842707 706738014 417340003 931786471 606213827 696075478 603225820 707635620 132416482 445760159 396109878 795614212 623673431 970182812 218860712 839225156 415165546 552436741 111884583 887917716 762449432 789941137 315009548 383813802 27230096 629625701 63864062 931853241 1044435 711298212 662273399 684731457 14387341 364862980 66845955 497168084 184296474 976813086 745309515 842289079 56771978 918867681 605315538 890507979 25065956 855480642 45779654 857425190 163193004 524080610 220506960 921468090 301582889 312352266 301304857 831221287 629487050 914266570 820381104 895199691 654273928 772904726 184526305 875271490 227566223 652137763 102940830 955264874 671183146 985682183 456029814 609793131 56557093 746315096 721299902 727763848 216227740 556117546 278692379 846712370 488346228 551771068 197386480 198819904 116751889 581048031 117294664 506505767 147037481 283603958 56137060 370557627 135487858 625404931 121625137 991833434 610444106 852844751 466524444 609775368 52991575 613873033 114492931 826707194 318423196 446542360 16540579 72036648 22743436 801564851 257149781 595184031 177695166 948029017 539581324 568787237 465941107 746183042 401490907 765502774 760019106 948738585 236447175 827838332 427099688 533768145 66165053 307805734 303595126 582979258 293004496 436671760 45214291 115186875 18259090 584239515 199531246 806251071 629688615 644405766 571102999 847180414 658958174 868789227 797955422 835258873 95397537 145905207 144971910 611130535 567363552 815956462 587220635 798212939 627611718 828239730 639245250 716211901 316963860 695542125 675340636 810896553 592144041 693503936 347280035 678841853 426872349 671743671 369275130 516910725 49860717 82331131 6361459 681632721 206929706 293421464 258904628 283189452 75634808 229493103 225695824 315683034 196091793 210508811 72501349 717204765 404482064 633092531 82915884 743284406 662833240 998607836 666117144 927991467 563105848 877560385 402307069 581479828 323042198 688577547 36331821 467068307 211868706 369128772 186116283 316240274 87956466 226424887 96594857 577736951 180836719 669280789 359721063 420256712 39365779 808696098 3884068 411806303 332288462 873946157 217733511 601501597 109620224 619990182 133000463 492945576 150305766 576368854 121924188 472209773 446287477 671992983 158417369 724662249 484268990 900735984 670768432 907639185 788208368 919618083 908591545 981458157 889921004 944573597 719736314 803199541 697791687 745966898 336787272 407646324 304904034 961625532 915732172 943886971 694474937 826241737 723029335 812758425 669853544 943128766 649211184 787247782 322972449 726830828 268269897 641524112 35411752 864628500 361801407 675649471 320136666 940622894 37929868 145026336 132093914 676894379 181400296 213585739 166948413 178623602 146852546 505432920 411874634 814954600 515691922 835354931 742539095 858126467 805121953 926503106 662358342 856867530 499660701 791059032 737052720 836080437 493050391 622979889 481884710 800652884 149012880 398434539 359468817 481559833 234604627 952543162 736398284 987410416 385215354 421177003 271214660 550866136 77436579 337804771 334470172 800817319 119953661 671611684 3904108 746224218 182269753 935298289 434776109 868481543 387478334 763891302 328321513 492958369 145980421 616117838 105996908 996823550 204896663 320115911 290737615 333076144 139600851 387953728 328066601 769541902 418561288 612343334 554405570 730715541 3188963 601159410 331224936 435584330 69709531 334552914 238480579 790452670 133427363 496895294 76217734 746211585 256366167 273409274 107848212 820469160 68183082 270988876 227181373 794724657 219423814 550763706 138731762 417848033 411602403 435805704 21395440 114837224 57911274 684969378 57720094 993166123 699674399 965494024 822357056 991462017 647264068 963743009 401786004 513607233 282753012 716566935 654005885 969304884 42058627 601847733 284799719 912122532 481657527 638782799 209214424 578452620 168715222 962254016 20232934 248742165 132113566 792505050 524059903 651946927 183599453 606887678 583656881 729788663 44186689 598014156 575896887 936357268 773088995 857240701 71106478 234641698 148514935 550067420 536088390 695489200 40398456 442963811 324716103 787299623 271523835 750413083 651173626 722084117 705478050 708850220 569689101 800188540 47342258 801595770 200326463 823460994 600665881 859296730 464695186 743159332 351626863 624450377 50969344 707099247 173250323 622076001 336144411 538106913 371066956 481054596 89657345 950175574 807908547 948809146 319912775 385462448 227749059 585700958 130760628 706668868 610578905 782928872 132488944 745129078 402980274 506257879 462108457 562542218 128589240 926691184 515685570 879979093 822542049 868523182 285407466 936372819 209066557 289580526 105595935 813456587 70474090 614611056 572199865 900069417 172331523 989022400 464426783 885583642 181278679 237468334 144701765 599144742 573249205 638701500 64473676 718110050 516367806 783737240 365732724 503244195 81994808 552619447 147303577 332908220 123967644 434392641 25206816 52572200 42774976 985982132 183056932 823747493 215685037 692193203 605924956 699789362 68045409 118773217 68161259 886106993 302728301 844147853 96623952 561758775 161539524 302100658 27522014 704716640 334520717 766439164 329819015 387543896 146582630 656663616 326601344 668630221 655858838 992428950 809835558 937439801 926896724 963339838 3832279 880588017 683232901 888854700 67471686 768608811 207603887 466929306 155001158 849128372 529987296 703680206 304061132 310319025 125416523 695988780 589854043 617953175 165550456 273525796 123312230 447383871 396741178 524563449 419519609 665001313 475245816 881361767 80070854 415771223 155142238 626578170 69248123 960293000 212709961 378932672 2095824 915280425 315300258 702642148 309457440 811975388 389771148 977229367 885611565 998772250 832162860 871660853 37216665 812371449 651457583 946609478 301668245 360979598 103526991 540192916 357589766 948278369 463353068 529278467 352597549 707548857 55566475 95415193 53213864 537969722 453385903 943912897 422046140 543359048 437697517 689477488 426690861 924834308 182333040 886107893 231919635 689960040 668156314 775512160 3421774 80253471 30670704 787128356 736062756 945426765 39717611 110429483 98306200 714780137 385461371 845628735 821035401 893756641 378737526 421752164 2077677 715062080 52674019 638653282 474240946 963010862 13723819 969146352 368013482 794380999 562279317 584509013 524523750 676270188 553520848 796522496 144130496 386047991 4966274 260444629 193522605 745290605 673403148 867441934 119607177 478495016 435817397 776916095 134852191 841958152 722539496 792993548 426800143 892097697 771589152 827688476 496217004 954212430 906537351 947023918 121015388 340428118 243796277 880447232 540798563 929662856 884879746 884964040 118030571 991696207 856491253 890859952 464979990 752657271 99028366 459495950 422758114 553908103 190343937 829248104 755462744 888655139 488497701 540761676 225997779 606375814 377257898 384323811 168353548 259644800 69666458 72727488 10159664 331121794 141823171 915161018 274910194 419847449 188725147 461152716 298593406 519161269 233052615 629765123 239791394 433362554 334503131 940195683 733181442 866112344 196111041 649819350 133108294 913703628 821890646 914436704 24101642 160019108 132708362 704060806 653297428 868597221 823560743 888972985 767290035 915267389 289554302 346746403 49360462 743372558 371490603 647978815 89935148 474958163 33182948 551636923 150731581 464300027 55694446 509176668 293909798 540429595 533373155 914156753 398984447 967044086 694403099 726914981 5186760 380924361 260109431 582625949 218219195 452370221 365489808 535119515 38069423 896546933 443699674 502224731 200639455 638308269 490771614 768345649 737998667 943406125 835949268 868999237 111589594 998877422 188458824 498622152 22355608 318676329 115854891 526428730 120560040 228508552 168463948 679578543 101478076 128017509 41886558 156142776 117967134 887333556 129256974 298081696 149126025 860533657 587677138 924433548 879947946 939071204 427007391 461582276 428348091 450793189 255560187 668279097 408016641 442371664 156407422 723675097 229934842 609047178 516671866 666110091 567879687 567978185 522796343 868691570 241336187 937012354 739589873 979191305 134672877 488043807 355821160 798878162 230653959 869081554 159766086 327090424 197767515 726840453 508766425 545843581 269798873 355050828 161803586 456034727 394210480 856584506 747902419 869505342 323187287 619719704 208503403 932441297 545824438 859457200 524607659 606346728 503781648 785078089 241510558 309921706 170750394 220282032 171671633 744417569 649954921 689282161 164339719 239443284 8693567 451199183 244607633 639405744 43412067 868812588 814996149 847409023 732240090 744590174 709440474 982535527 417924508 806041152 66168272 694426583 54951464 993464203 121118579 415292839 388470097 647879249 520901223 548956577 249594408 495764256 290726092 375913769 59456269 851952330 697319600 819620189 184303811 211741617 77361103 598053121 509194701 617808049 309884050 611595594 27332026 383397936 341033518 404591303 77510314 228259373 140176784 570914595 482570406 524373680 11701910 116116657 27645999 693309890 644850900 903353020 625066907 666019349 217380840 707146725 239591172 359863391 331991714 411291060 343175684 531622860 197250432 303691421 86948196 307920068 206672470 586055681 285299008 791189110 218659867 505432298 248379903 754906484 118911863 166743144 13291497 264250659 162279085 256210627 231489388 395012584 181316286 666996079 467217428 514668145 375260784 997435959 939397590 975537592 752040549 933971393 806447371 999613309 456802913 991439727 213239552 399450893 44972604 305145813 184712034 541303817 157615611 788788875 410767549 456053170 415802615 719441836 256017353 584402423 219866161 893572993 605325858 925214715 173677255 500360356 122244469 504214193 357614650 630628774 368308213 563293052 405594944 987920263 692431750 791175899 512725146 526475712 417166088 507343072 172819607 574406368 143141454 472386216 218359034 706794113 459717293 657979759 613459152 962310124 203852524 644657262 423076707 968442636 413171365 723555309 338938035 833329527 759241867 795731183 729422400 906663662 817206294 847865521 843279582 976276927 92262662 325110276 117050627 651454661 619005483 656448324 82321837 679888154 337427348 818785750 102470004 826805289 640129562 892751377 85222808 132697886 66478700 251543693 205851827 618923398 150143977 261684003 25734929 389645365 254455534 597819546 594777702 805094266 614379304 890289050 24939202 763221710 555433668 777792158 525688003 578561430 326911959 405995503 218239703 574077557 568112707 822709685 448804240 804253452 674033771 833220124 195416041 241275747 185266699 408502736 315366027 622652696 407628298 423703721 104244274 205234101 18677862 819398140 528208188 875459572 45082968 940760926 37492266 396730559 261658825 772155575 180142075 295023121 140103103 769078537 470097204 528429282 225361791 788982353 559371796 824281065 528390904 736525982 276902641 843332286 88383041 272517956 263861071 480891246 440756856 907293581 366521523 457008355 20404106 678640230 437473730 940774941 21156514 743371547 320377150 743367953 337754347 435126275 96001610 698258071 22835506 812196161 678366321 985168477 520706439 922412411 749724879 985252400 708751572 936443876 266014751 329525259 191159309 685062247 105161540 826268309 461341981 471712560 95681341 676659493 27478365 290515327 56189853 872862536 416704266 462198558 404745527 519117512 502578757 895719308 8011332 271349686 33675211 640502878 75367935 625761423 120428670 293114174 246427249 815741302 130402129 248040376 71665474 286381352 214262894 709064707 489711170 676240540 349888483 640033354 329888791 930516171 292131712 519421554 274543582 734625806 680274765 767879464 93716599 366355584 294639570 784962010 186092119 890388580 696177895 773783610 688015882 889283577 674697285 951491174 520478591 722655834 210415056 688058671 437409702 884605270 724722301 918629994 655308137 878487724 729158209 805397932 754092462 772772047 30812937 176757209 127528119 426214847 290895158 394866539 105776595 820115957 608071970 651688909 236577545 320677202 233481128 553480588 344545447 921790406 778034188 975253184 281712311 554067048 490659061 840544064 518629848 626462235 274480380 728445138 526360919 734727019 717692569 849387670 321730045 470139646 198988349 338080928 263833333 463582219 186197897 835266473 541702611 790963596 456328048 787421777 414174046 639984800 367699775 879609664 177918072 705776009 18743307 888198699 444123293 696393639 647194512 991389109 824533432 984560111 282284591 714358342 265569027 951391202 258505941 465566333 447434074 477654865 101485508 488796360 417396801 779294287 98071520 770680489 203066852 697874833 29603991 703593137 133962722 647682363 197288538 648225199 64866295 146204484 139405894 729044668 635842046 736090762 552781245 590626033 518773513 957842914 136894037 744652203 145553717 906334677 610372292 842445654 285004894 840008475 479305109 592937414 484277669 578973024 444267063 478704925 380639641 458004702 122321410 351347679 161748325 294369886 165194594 933761877 832878600 862938506 409750953 611829847 236295994 338968766 148947250 733053554 618321736 817114180 123363260 791547386 151388077 845393698 399653113 519597775 312243558 325809254 85556214 980621535 522271187 789885648 659969853 667379335 365196792 854932560 576475485 692811018 283351456 987482859 843338614 877413144 629866691 650173228 543788317 855569875 33102507 389977711 304620716 789104918 251704595 617353633 567474473 997770067 863480880 919808405 646993628 667074624 594967222 995688824 712344551 881758670 338576940 820486017 513548084 718644134 35139987 258509249 201231764 650791170 598130708 771010507 456889566 501845148 298340945 532274082 363832907 771750269 123274504 394652146 22172830 183048257 176262240 553262179 364061392 671631371 567959414 938369127 266245496 745527699 502041669 974297054 211012591 557863410 243742897 610935980 124679967 215178007 209911227 285784777 217440140 765738116 258685213 645047738 481661205 509665875 285200013 321292271 34926197 40696250 29109943 230399722 108405724 346729186 252162984 539541033 273913359 391479681 30610879 879401214 478386995 641583764 595455799 841266665 715299692 737581292 631205721 705097800 220866388 878456390 476922801 854121902 176056439 503605894 198749131 747332652 389236979 953233269 114537152 918996212 209314991 431200686 18287782 78156956 16740825 931416058 742519257 839139924 553150883 827055362 730230830 873585205 73833964 185251742 39225598 188895061 5366391 110976211 6610883 747165534 182918714 985897425 903894391 951857328 498909229 560769286 21913060 32813436 890348 533064645 147957329 454219359 153916419 284193477 126956514 516356653 494405574 668519351 428059143 673619281 31132356 458968524 350513583 423892713 309222342 484358673 372324923 662909213 17721017 482715454 248708986 294679825 216156275 771613604 728071551 816852705 453092359 947117054 127865351 820329079 701147218 871245615 7949668 500174356 404448679 752959453 626525840 694480388 37677464 132798754 16447591 857163147 432134795 521751817 400046091 789610122 691561022 739885859 163440382 527077039 292619486 620885604 94520273 536499789 497385814 965155527 568201741 909777634 313910535 454781345 95949947 551980367 48438411 818721562 48701789 533801214 399196448 475723777 206226506 516599316 640242 393151058 25623764 977373444 553223368 653762087 395365596 427781227 385317311 808639108 770739317 957579851 588345109 734240480 28905207 124192208 51148514 389888493 323045777 710818908 684020039 712278912 58981170 794143481 10603245 871108034 869126384 914066350 15362659 887883361 766466454 960134190 522551874 838220721 56434441 536939256 500711039 778151887 280031239 746504067 719260850 903434923 552364273 615279506 584306883 919430427 481783396 755069733 400841375 980868649 29195172 549314965 361519323 687342096 484959006 880952401 558264944 831470965 675448566 984702210 284523188 881106909 181190402 302116014 119255483 174918953 115428671 768732907 223703442 860791203 149028964 701790453 19443266 581646346 88562950 573976329 540924872 758982626 176764651 616897171 247042208 587310919 249144395 346735756 51361396 674562700 506883556 584256123 490912013 863407132 650356523 774430934 66823110 437774793 411533974 618166922 118873969 786638522 426417981 769499362 632866273 677008256 88594886 476490491 133113315 246395438 163394570 403409795 47813734 874687296 728564369 875476171 698991192 845048257 731080044 991175011 501855854 677120564 394558255 573263946 401373883 452602572 35307137 910296146 641581998 991419356 546375919 708071952 495924907 728358790 361315400 384861386 332841430 653493562 276122136 821725105 229447372 732527699 572541664 947988368 571688786 598055517 543584911 906145910 878162057 941102919 200930122 379688516 159600794 315909461 59410268 474959295 58363915 94072652 26692174 840782433 440517932 983987619 631015982 951617701 191244455 980824037 598548392 977080108 748123012 936837782 289543597 819628361 265711049 796980582 141037243 716912085 133398169 522908094 215677878 670355160 185735087 635818497 35481718 578428096 295687801 428694009 284535778 541466397 383094081 810134321 19538274 562511238 526764692 939457077 168613644 689302870 171991557 178735018 73034832 741406101 494757778 633596813 425419942 898751667 877752473 965676203 912511023 959759221 540520226 589303245 4134767 82253362 37325541 471567432 20225281 126754175 48377928 343323282 148921301 182951307 178255525 978500872 405642733 640693117 236670026 676015270 522568055 625292769 537983884 673636879 636607348 967130329 206541497 462811946 450609612 576599201 74554550 109153548 3378559 704262264 335708430 654508230 156529651 567794177 35946656 451448321 49433138 797899628 362773622 407729814 100080072 850396092 312279877 459249447 223308947 643857887 29342698 867843021 321680074 902787035 565035451 879785305 473386698 895239541 806100199 842466498 495237246 689541211 93197767 465042317 422787778 700390405 375550575 696494064 291354904 326322776 157936094 867581409 470072060 570220908 362835200 538051571 111756386 135695724 8817843 974310669 471471092 513234002 82067573 706904646 316235260 545846522 171454379 448194057 428311356 814505146 216124861 560074194 255218391 738497343 272834188 867018851 122146967 155345953 9287739 522453930 40534194 816906667 252972779 565475143 383348838 865822186 129946102 695742715 103529439 484067489 340462977 713772415 288661064 558991219 54383258 843745253 743248985 749310985 703002742 894113405 214505227 302903347 166616069 413683485 316523031 655875800 114387829 319491799 232912791 372554469 83076935 514350755 496159637 811713698 718260581 719709972 114470567 189264901 20017478 166178192 105996080 619213134 331915594 442592292 432443924 641097014 288211635 522729871 67931378 585588265 499905717 686689596 239202267 764506491 98462973 734829303 727634456 916878157 595838599 672577968 352366853 918895091 400294434 869269046 167164683 369476917 337376222 872723039 497999941 766450199 250128179 622172533 493592669 987715067 845820802 990371957 638214827 847941231 197258726 648559426 408906228 649217952 448410236 467681740 140063320 515204972 352024297 768966585 552229314 900539521 138268671 239360077 203895827 349481087 76358203 399207672 316878871 967656070 758802686 963593460 906791695 996169376 792974355 884995547 136034455 777993852 310875633 742210725 308061580 958430024 617850213 839527352 242292186 326952149 141056192 507453414 337311981 494149932 459172633 986884769 436550169 906205769 260990595 343950948 332416436 432453412 306376820 740349349 146029769 546113525 63428453 241965994 63231864 67800572 55585426 916883151 829528812 856812354 586088013 802616542 719836445 798506354 252641218 740970081 426694261 898094693 192580995 442822061 18786902 797466399 32890206 62003233 30191069 370059895 340925019 989739844 983737682 987356964 532736975 619990103 506489190 612940625 3570651 182153237 17382173 140375481 23724822 264993878 185080799 385111340 189020479 962739324 374664491 422090093 298871675 541723540 316556991 919032572 893027757 987741478 371360251 571111408 462374270 495711727 222030217 698774334 189515561 390264071 289949273 497633931 300956417 775884233 388978071 509245918 322447046 463289174 156341397 720792812 349377208 464563692 317358977 807116309 269215558 874347359 355591080 700715258 359420756 758993495 424287361 902911569 484737926 565913273 87424800 284762206 203808627 649382439 571386426 606557505 452819433 824081965 241721802 293071729 149011126 423226670 211027680 578164012 98694080 480365059 198120559 855615026 668196251 818724062 439073063 468904082 3146721 817110971 342655478 962164174 442625354 444834273 426342642 750555448 390366107 717600273 57433657 598350911 226636408 611439811 317267037 497766991 351621114 931847188 61148341 228018551 174362374 359354062 186471300 394458478 251261476 906460779 726720468 879752076 649447393 909895198 781964899 822925064 732213592 924602449 539701885 669003875 122739642 956127992 5312093 583448304 422678068 865251630 700119174 927662970 558697491 853638604 680477349 685596154 8996297 982023631 976588576 991340888 846684185 927347536 13386671 469457798 460866183 512808538 75517614 699109326 482643906 982461257 400544860 927556285 725457539 923871230 330565337 999576514 624435763 657844949 161274998 508100099 206039939 258467817 54311009 906626360 633357092 754221001 657150723 870283466 681345874 890510584 740550854 964454375 2095043 433034094 73233143 380123923 9639770 572681656 195460586 900360190 491994533 668762013 193973538 573971805 189942032 594806598 323689071 504750434 141404585 157311321 131189602 807677995 222087249 770935031 469238706 912111335 35591173 993078820 445175380 604266469 563862273 870821056 255338384 508774131 352505136 516908672 50565729 776482393 336326370 346613574 312134307 892109390 40305516 908349532 589008589 737556195 4564593 932558988 211368173 672581170 421461475 434659798 16977570 587587480 495087912 552511998 390869404 599879363 504521090 559269358 398085333 825136164 525603636 633630966 600800459 993524089 623694821 735311667 477361278 826122875 492538962 811157657 709840968 813855983 619491679 762438126 618521783 842224227 286452888 862134389 397429986 646804163 19006717 883107782 754853151 860715082 528659104 745274092 516275084 825286415 7565523 27393603 12669823 417312845 19385433 732225956 521179294 752331382 416106825 962687714 806578342 943521462 500631239 523399603 514869911 543086607 425665244 469309208 460035427 514571006 349042349 791114084 135407514 818855187 376093220 482094115 386230657 932281778 556960183 819458598 611210070 962154600 803962558 924172445 510376212 818784315 189990520 959441672 184473654 792716773 150543507 218212011 109909385 894266016 724403878 970862539 323348735 693246932 636248086 855686447 781590996 863946607 799884981 874543744 289437460 615915030 377927538 732681458 310786447 389271787 261477509 969824465 183590087 319203230 160890175 500968775 38102867 302468085 60513614 340500244 30648014 530245281 106970894 595474042 242841588 408347659 174896284 484645757 383346334 871207356 527994142 714990489 121574319 162638568 12517966 52488742 5677113 560142195 130463879 805487696 801535876 930469002 513999365 744399236 208403044 260698515 25172784 91933643 40051794 64611095 57847418 520638474 505997232 950340921 925998810 984177574 674029142 963552039 684489141 900009923 529111672 785755699 291649537 949782350 533389351 825958346 406475817 594217168 392318448 970702785 183274999 599785325 590928466 873969166 433163968 988711381 568438941 656097615 246002748 726419717 115722973 633873926 257621340 874253096 400148556 870263066 766144674 941889951 14451876 263803113 186198025 817785348 268300439 518772879 121260820 876854599 459376999 760992268 637379819 971506016 544684108 742991824 39991244 719036417 445932077 571002150 519682958 714553717 194893953 317850888 190630593 319150139 63689600 562801720 111359147 511793155 299052249 300415908 287816830 907798365 348021372 415804641 170227815 213247744 91968936 928912523 325629537 451732417 409559540 426736460 237998745 429838992 237927778 848710054 428348644 736438275 500719848 948282341 614836064 988851349 857768741 948132660 282373882 792295919 226061224 241725655 199131606 201906147 21249380 445434421 345917261 898018812 788946039 923636867 20186450 346194963 323783280 611862350 72507377 281903259 118921993 668761271 196891632 311190208 176676455 942144202 316819562 342755009 36234254 741621337 476951549 712118761 508578217 986339167 699684067 915963779 566263550 572214679 98352750 627774127 363681011 812527836 615868306 895329241 286839339 663504773 645680657 779828600 363112301 823715377 630076415 948981712 535308077 911627935 467879029 650414661 606746210 830102078 357610857 861695733 272893435 634505946 501215457 552876465 321266471 914806611 155482180 822703603 492664511 519302634 322073109 628991054 292510941 541479916 133769849 480664126 302492732 583373956 18662451 801323100 709563247 952305024 913210816 934363801 34360216 78398211 75796722 118040255 105561733 393434965 374930123 538914322 281916566 876174731 404128799 947856244 575867222 995357986 66861469 324135615 188500400 989141192 503116130 697807848 314394071 869100767 264397509 808648000 739000211 966513179 479593897 989446811 115294939 564213980 394912281 536784695 198262469 251985590 153509662 881396270 527237737 974229947 845725484 901381568 816126689 946646498 660962932 909509174 552584072 858529629 311105262 600062712 263032340 888952743 392368335 593297885 361078150 363062154 44444727 350833708 52091564 754706903 186078375 802067506 486942387 822662358 577508829 731081327 231858874 261227493 219322566 404927104 99504653 884479424 524044872 728496526 635369953 743830559 286798666 764168484 659927146 680254901 141899795 904777155 545127391 916872249 898964621 983983165 255127066 309632005 52327772 842840891 482559134 961495740 768368852 979522429 237099556 378448185 353273783 738176229 565317247 630171935 51246871 138405578 71198828 938572221 251704149 936229091 413505654 547292054 293392842 555424890 39932344 584104639 38592898 674664089 462380137 955289441 392207882 726311883 519211757 985701432 902160563 923491369 732263440 758816594 275451407 691028087 351954145 773656346 255202974 778313992 484509606 839196059 565208609 736259924 91374647 353683989 187416448 393078587 343338272 622156151 244405270 368393250 304040601 654549243 500766425 851469527 542455220 630537866 458935032 521741052 437436375 641395945 593346766 923350003 300385683 703884503 394330555 956884817 377623143 661302707 224799284 483434375 349831752 583852114 577532774 642383634 508879779 686314702 257309838 431268299 346098456 601679289 118306933 266019491 122545709 839108483 149821378 239667161 27651217 752189531 369014636 700586834 114390393 152005167 49246649 777988073 237880235 586279916 108476203 997762592 511842166 696719912 157992009 969062024 445987534 677697252 253259700 988880403 910667760 979068988 403261756 576402915 424610891 469872060 356834738 960985423 20373818 235146321 85985644 805773887 57298885 375536394 35687021 163686213 40263195 551781866 353917787 927222727 295330261 627472250 107218810 198104603 192510243 226694353 190185399 478410114 18733600 495181036 460549118 788928881 754664859 938716588 214812616 546809652 63322655 321007564 107885513 845281302 267992546 767883754 648673068 791544049 678347736 975237817 270212350 928740050 22561893 368643036 256169652 840535820 628953688 771574779 665500436 885001924 245941286 755349136 503119557 685528525 216586427 705655923 509238602 761938144 497879998 728883060 42542756 296071212 60909599 713504952 624260082 942681510 911399017 992181840 772483051 873896069 799203689 925655135 292964944 299129850 291121466 714859158 244008717 649473458 440646250 912787410 673320122 794644827 488556318 862615736 340515836 672022974 403455974 480730511 174399728 586995000 530786814 766944692 617114888 654913859 536519291 733659412 131353730 346318726 172857423 805308515 700883674 739832156 706934028 817000550 462469962 579992889 518714126 618121922 148149695 798854527 212835162 558968552 101998487 261936077 190181220 786404268 329752718 889675075 31624701 415394153 333680454 354519127 276477036 940533328 310671333 937663481 1812030 732868951 713018216 808889417 575827479 759741945 287900762 767002324 26384729 121452678 53148446 636162486 16717152 319156780 245879305 693058070 183166118 523076926 456373091 610696410 190101194 683321131 77175862 546066678 28444368 889807122 709085045 715293742 335730154 760171837 312720111 340653695 42643302 79824612 65064696 958345124 382465192 712142099 65236769 581993643 195332026 348961491 243355763 844373293 368909987 783433423 452777577 839162770 530929563 671065701 175324628 672807654 405551775 515342910 138607059 629622008 14603535 657731120 89157253 712982003 566002687 684673155 177315882 939828200 375353276 596945907 235156769 250934575 50992749 404086866 156223262 739585217 281541589 779656254 148354182 905994728 747183241 859913753 326388849 549410400 110052442 574305607 422463875 439218689 20199319 992593416 844421788 868962990 742268616 893573312 762411190 959620361 308016898 498320950 456443486 594782817 147928119 929710255 173315298 529317897 430943674 637602204 344244344 737506743 384508758 665634966 130140218 849874955 363453601 576616814 214034004 584548313 106853556 267010878 63117622 704772451 615435016 649260355 182480886 377236207 263089359 319054383 176848808 252009809 67563254 566122936 218122242 743979919 295633171 751659412 391915764 640221993 113738306 449329632 19711624 449547737 3937507 409497914 107631829 518214798 99960318 292888048 256125861 591454894 243336825 951349746 110106887 129192090 23802841 256536647 61237586 588976955 440756618 565244408 164965974 706417733 381702304 428995637 136896528 492972747 355980920 827092030 41461418 687300793 166967152 388538081 278166181 574805433 524954106 600685931 270141423 635542104 526704380 682801487 205976580 455968867 330122137 702126268 565197450 843319177 616497463 829507292 184399512 336845829 216501270 603366266 462769124 981120854 21236715 260341413 34290305 597881382 129870551 906389043 564757596 947953693 94339444 335457920 288632742 485588681 378790321 771518874 104224726 279082616 208352895 696783684 559140886 731162885 435010492 848345599 715257005 829942211 637598178 844190026 400420337 900548228 15168015 95109777 22525302 103225103 30421159 165179170 52656779 312947546 90685975 886323294 47171088 816615883 704695190 826044786 711976708 835824417 500693975 589407153 558812131 930194211 34100544 565577083 133727228 915219158 505909140 885989568 344153371 580302015 380547504 744335253 693013773 712536268 270227522 441909177 207817700 815623565 794413805 852250800 671944322 959723574 134775100 596712299 513243345 616794213 451524764 696860163 546567414 725058329 332022850 549827643 454439938 606530041 421502473 828467209 765191883 846128641 242471479 676615925 178768418 425123565 131312571 480283475 319253683 700305649 255199179 875576771 650466766 823004020 137976614 512577358 135877722 215884525 45142982 845801495 578318246 954760033 697289064 885251309 439371037 571481938 230572545 318452596 72977600 240796747 182570501 895630378 52169941 426307352 168267576 790499673 617093721 962289202 869582669 907253471 843782280 891263525 43201259 130470345 88145114 261558184 23375764 531211120 159453420 400514243 298553638 362209363 126149381 607642718 73924428 296139440 5172753 548979319 217672425 728028482 196851680 474237039 259868601 310571843 55262953 612303563 207549911 573763143 24817459 888840340 589629184 676964307 518212984 715542632 56259732 746931579 533330082 687475909 302725777 648074948 122876854 237504411 228264336 877783321 444742948 769982865 11318416 33226391 22734056 141425806 20111674 324861041 135177734 695313144 691151775 910487932 602434934 858485745 501725278 951752967 540428471 666183874 215511135 663094428 252251212 937993540 35298608 250684504 157493196 467495143 310393455 691055645 545978803 825017528 644899739 827288678 196373875 543677365 343566737 592893656 96296356 652664149 128237120 294727814 146621254 987505393 952986087 957326008 266418880 726331527 60899603 645817730 486457606 898641691 170140929 541439193 426808877 974567735 320691835 461993603 191918422 876167328 193704324 983342047 947165508 998500408 729931920 964295333 509144287 601654421 132360580 274735846 250914684 730158752 313029785 428678717 142327068 871155144 749603094 919349157 509257492 795409253 747083762 795131055 685366255 919878440 129171056 942295213 29194675 883704474 140391819 471274904 333736847 710508852 639045883 729516958 708042855 822295263 470151204 600562790 102891715 143002337 69632088 709124955 156391192 698652904 260506246 781561170 339663472 566843154 316566656 657339731 576901863 858940049 228987219 601279322 41228398 747481970 466014878 729520502 321535979 768636342 74881679 741770501 496041058 758636550 552607399 722520555 151737371 969123070 828965617 931115505 202792160 332925104 120112946 731904721 323893533 507126247 4664100 149358744 89136735 368673487 239392912 640609089 463952162 536973146 511257303 858075830 344812130 676677030 103496834 131943212 23409199 997611589 371854778 817676081 193197965 889183652 244248533 278881421 102297406 847824153 778882611 978955345 376160147 390073099 117283627 223806610 79203825 898087093 543461134 881600981 62172768 628276315 3093874 269456246 98584774 896822574 184358399 256736780 190040144 327485276 185081090 782759588 541486856 559866795 303551447 823087859 139312398 161055927 154124924 986818183 451973420 978232619 485578118 752183172 228429955 363967324 248190078 653335292 244701596 437158557 193964940 496316894 350215938 928855923 728461348 747932017 697694422 983825004 737620946 951810562 636260137 669080862 299868113 943763928 934909247 969756061 896737885 998101132 806911256 816467687 365301760 697862141 539769081 953057044 146065549 184926587 14174124 821977204 510803636 962858667 565937757 655819506 175682760 374120054 129162874 445725752 328195219 990939532 417484210 795600886 224631878 422667448 235712495 741574266 319798785 976349867 925296338 994637002 161362582 423324756 56111707 841013485 465994662 668875389 634092261 773094478 550059988 658982925 224149633 595073167 267991255 412059847 132098514 700868785 205172138 940969919 672818807 936236146 714930212 852673221 568209274 921576840 139870752 590236108 167847918 534009348 191952257 831909876 151302717 797661133 274494554 538616344 454918917 463324260 125568801 289082559 200961858 915491100 161827686 819274865 801653807 959816564 363617629 702180786 19836470 561918216 365281146 937300831 816451816 822539400 626474238 653001516 347673551 637009106 486338642 790275736 559004135 903153450 120907903 447747229 24504259 172054959 76408067 963907700 816748207 825049174 295062119 431511796 327558646 592154162 448873362 508070213 346533333 953238902 171784 481405055 461774099 732944551 329844110 814808234 263200936 327740961 79957758 188894253 106701513 805671404 156926810 621890917 373233899 890880238 216431919 438799369 376771030 860842200 165052842 844018591 446682987 500372653 373246998 997263673 565471871 937454883 111409152 311193993 104878944 834856977 373939681 849068509 645094636 961046999 792356059 844151932 625505133 862042897 143607535 811038037 52725626 898333573 269008376 336495281 262106668 639168286 225927561 349529956 274032128 735992672 19630695 473988081 63666229 677288259 397059998 932655295 539880836 687274099 607039761 842255972 798360782 813003077 252683480 362471177 176270587 682727753 258936352 583939839 70858129 74374303 70858506 857095467 297536330 617825893 16196805 279758448 38720335 446805531 303882771 942554989 785870440 805045286 470273264 952001539 887303963 947279420 650808904 737003738 677931654 879163100 284244267 465742483 92918869 322128875 90636698 980094268 415703375 703946893 586323415 994176857 944358423 965926355 924078830 951985726 894389605 906764850 837222422 898207328 215975277 393194805 3225023 406791875 8959915 609815709 275080603 644494693 589481993 788271688 203516632 472751443 249910633 417817477 182518167 245307729 50272699 743467745 580978006 774361268 753189594 997249811 389336539 465932384 168878498 799346616 575987814 885863726 802755467 960077869 600102856 796645190 742656521 934045867 676165290 871625662 806075360 978082315 412457761 738877994 320913355 643514640 330042496 595432766 375295795 760399186 744103394 927172083 195973513 798163530 99807683 942797558 763927682 965409672 231419505 913007254 479305426 493400416 275463035 937286660 589950546 683739312 210181367 330231135 256741095 579170475 223324780 672642432 562918241 659878956 353828534 894319299 874441781 967864450 870563935 968646948 429037689 562739976 146014362 246050715 35931338 539708153 128155661 543681433 127985009 405659020 158048204 582777848 91341586 932135838 851332602 866716794 821345330 975470902 615417806 917820135 315019890 721910601 47287253 489195209 456496880 840177847 794075744 809756275 779682472 870081851 504016276 806181332 772437691 954820666 513668525 687038680 117548159 650531640 225008550 614207272 19894284 75389865 50929558 531785759 66492838 329411529 128553744 235012973 164029499 474849778 344864404 471970704 220415709 884635933 61748334 562261336 141267738 666720873 440261188 815745625 580031928 948275940 297854868 448896291 83095060 840007328 403456159 561980596 446051135 690125623 39914116 162180989 19601942 750983441 431773294 637371889 182401960 420026106 363574031 648976025 213827020 286423471 70479106 973001622 812620185 887176664 360345979 544816791 250306243 466005788 298811614 730194428 585069090 618196041 609011054 696731259 582110624 814976332 254035460 729000459 250994076 701505245 300831629 334596623 40798136 884349119 841190844 936989903 677326442 822609764 211991757 247814467 141617476 374921873 129288758 412991547 381560963 958088413 871253665 929753753 509388757 954818397 583530967 646646040 208940684 734047678 159645897 705323277 609621251 761328341 139941213 156463536 9744833 656793791 193975318 771508595 187215202 737835207 550330362 779734677 146524621 441934971 314606838 758119036 629946240 935736315 927443120 991603038 855104193 855510422 196715141 941766326 611212078 706618576 231368617 473285563 212986437 568182727 336112475 974347903 727049560 803500708 131675299 435283695 356603923 825678661 193158976 772622997 577616073 994524900 451491757 471458994 179263699 903948261 842428902 929743606 434167809 942119233 216593360 827087769 758764445 785171274 233155742 987090108 699362837 965628823 720263960 887441822 826877635 890921368 702583073 895229056 758407490 837302748 425546496 746801918 249327328 673844860 2515734 925094346 400335143 888324807 527636957 581767447 163856909 399864052 347892888 719370027 349211833 620991699 105956588 658759777 510492 766716718 63579747 299513549 106151819 819813042 547032425 818819376 219434958 671769272 212531270 635801963 148149292 820271871 203291085 210460355 77086863 783781281 621942491 968699371 280580713 449361866 80058921 997287134 23942023 870224250 351645434 454257231 338887832 388796516 124243518 176685021 18383074 741930243 473970596 591543984 437188460 775072579 180857542 541863822 343090911 626275299 94956323 525763547 426398609 426947208 162174506 970815411 168862580 416043891 85701815 125327778 70857106 541733424 344945617 697657754 468386877 668900237 637828227 893449318 691933417 724743282 406567505 846236825 37642326 626116980 180956039 579223005 6749935 217977610 41154628 770451251 93106648 436536471 47494858 62390925 61798158 183069479 120541330 338537241 25527870 595088461 141552897 959740234 819059684 905508960 38009599 49226992 18875791 818837377 198698725 295990158 126275875 825612840 147081948 716814389 9682379 576748669 376914442 866919924 654355408 823937957 570862841 992665986 636011004 920882340 715404017 888056996 229107868 963852989 342310897 868460021 602512615 779150809 643852962 886372778 314593594 895885149 391704779 970075773 580976819 859657150 229845944 296625742 109214316 219601246 53418715 489942249 349724068 873411074 192035383 371606074 76583318 543250884 246201929 592376778 498054378 811124806 509674716 554703279 64909485 411717233 64808196 602600879 391636732 830571449 732419123 980287520 193267288 356155962 329822875 918434194 198576914 986687129 237939103 442648612 59793384 753271802 536498452 709959694 594156441 681660652 151634428 995198617 14132937 840208458 576973141 902688022 269111655 308036937 231180214 451403279 77714658 898265379 725935200 744211633 72983006 737628048 71407759 141909933 65543923 596984237 410650856 619112081 406940433 901981130 403391583 884884114 455640790 667664997 401549921 454412175 448648322 663641948 249040878 344875013 170271029 909045611 426778262 965367069 904244860 962267179 784870582 810742342 427472088 988090424 263710299 312477303 196633187 665523586 586736195 849183821 313152984 594850066 577597263 650916878 515525101 792002122 253150718 464617591 159910469 787389213 673692923 953931299 855690821 903385664 352510575 827658623 109907390 498242569 165449723 818975220 508667140 750592915 295171436 425372211 238695853 705940465 185881275 250082262 1973417 527764883 58233361 499179797 317387484 363076262 84573861 588949561 110689799 589342790 354016781 461191538 181816635 934597210 199136459 991691264 202184782 395173899 327520586 560390355 470586412 777714720 162728465 762343327 668783406 806744950 498845650 964770331 418427549 920238518 782555320 967291309 183567415 932289980 502488630 912464857 124392126 568522872 145918248 890186391 301807130 595185475 30338789 967991261 203395175 983924293 527834244 641273684 239922529 777040355 567864355 961760924 263759657 702444837 386999341 457186146 24614162 549447167 267318294 717734302 620540252 693734692 21448858 214371475 91774191 463259569 280969371 536816717 140001782 539713166 521569608 608990283 160489038 996376217 905254515 919251275 819593038 821034416 809697266 967932963 372742922 748112623 207184370 736245946 565845754 963496534 469992022 871944055 404365353 547061090 88927052 748853787 607925473 754470608 637765584 747437173 695848584 776875459 208799769 334106238 18106814 728800693 142469580 472337327 143318918 787478862 609933994 944548383 228742522 874013099 67231559 487259854 5899374 106892780 53365723 750710177 739688236 789792094 289223863 494190408 196588509 640717792 476328120 589930167 507095459 545870068 279260284 290132849 219279085 335562506 220162828 739943593 272101552 895806299 720474260 965109356 259237142 477633062 47527814 677575523 275028771 981696694 183616112 278827746 35741501 915027510 67069657 294037642 143612639 975781500 818745268 874022771 795427504 812972884 585729785 594601558 294336124 439118340 45703692 199728952 71022489 79820070 36191169 99321418 24012916 249958550 215531847 411485767 228174281 250825715 194957567 363721021 1685715 874826751 67658713 900491528 484630635 949049892 686212539 891082983 661979151 863323270 381089450 915019737 553672506 579517203 444363035 796920715 136434836 679055448 114140878 532912633 390131975 544868508 301858038 636171512 320784358 568714857 509724819 512372644 363497958 747580541 380633218 521498873 48068160 388330380 144040478 966828067 934918900 945089434 219089967 360083636 205002717 341314045 202754214 987473157 427662112 456821355 26906410 543417109 338330375 732642182 656202508 765734430 605218173 953221454 396314491 835454207 538337776 615238542 469635964 474700654 420640248 666553712 30492540 808050969 491675472 625980319 123492185 334880031 15690251 858672866 174263771 360976110 222421517 707638586 481782281 553532864 551838053 790897759 43993484 647411019 642385012 847778072 337375804 347388102 273362626 994326821 872216132 952345156 349268773 998098209 773273513 994774145 575450388 620755237 368528219 964854240 441992890 673173215 328453266 739910764 732256439 794618427 580985558 626042884 480716638 879755404 45820402 485201628 131496093 316190913 24698752 170674734 168730571 764873168 82548520 661130112 496355725 794597791 640908481 918538310 484619876 879362072 206590710 280337236 67838850 922698713 780714219 890449823 314277392 900250818 208377173 567051454 480493644 508384097 231969668 307612311 228676404 587814405 364128939 440618939 90227383 292791081 282487253 795366812 220648487 748465380 646323317 809382451 470262464 621798458 380006979 559940357 535066665 649233804 530670868 697054878 678553831 928756574 352370560 767260177 712954680 932000866 622470777 848596574 656248966 897815611 717672805 914698815 499775995 674589879 526706406 689356531 282806667 605219301 333897457 643943453 372356877 606553004 482391995 726527181 256087825 558324321 21441486 303825056 192049977 947422464 544466836 664404282 267800274 926532664 925261809 939050265 857432690 864253060 639729771 777694405 756071215 944090092 583255303 869715889 606861179 767655970 531457519 628580271 314019128 944599595 77587952 465450453 384606483 680074750 115639003 309516316 257835093 791114445 684703511 757867563 83620804 418248382 65152536 382840129 182510188 464581512 337063582 445601726 426098015 740094726 10131813 251315106 44917451 959983149 867477290 878204855 838782214 957451018 601964690 985725587 907034649 963466665 552635247 988138206 949076946 955976169 952137609 994116656 783897510 787293749 692430876 865648643 25708644 342788625 315871694 346554679 204844464 812603531 153939424 517553624 288798480 908156747 282567603 311577478 218758771 818345067 12349909 297808376 70597104 425740679 394250204 579684851 376280288 602686257 301619846 667619358 425311237 649644003 156514199 840781675 385080119 604465625 390132228 664226586 637253222 873929551 452787883 854507289 751120265 841125385 815662017 975066326 210472461 753890661 568192169 990153172 213717779 389360466 325389772 602349581 577532577 828425037 23786944 976697043 509060970 974843024 621516181 853675684 285423699 439160755 67375045 310856919 42679599 341478698 337026743 923723516 852892592 893095104 328538601 532447048 156120015 452067195 143761567 358897607 78742154 244356153 149009957 547838853 345147302 379469131 168583110 326978218 53882326 271413483 31401098 714306107 297486048 513557251 473663663 676274316 538662482 954307807 747203772 953955448 677237520 734844591 136562760 371982686 105909016 515651379 77962997 868615923 132137343 917870574 904650291 937113480 670740645 749051434 474677560 482856039 288747923 974717429 440803034 870349044 128766216 993641476 244538570 337742283 41056805 369253686 50981656 605560711 454710014 542736541 525192799 993970246 949468097 992905695 889034 410693786 342330368 681375529 626259983 747276909 664533341 814895879 268422092 559508553 224181095 618237913 203779855 313253710 256119456 793939574 215564615 364741988 108763559 671479156 564718325 946989120 445746853 767995909 586436274 689051480 299093951 351929641 196524502 426934587 27412059 719741962 596646559 606680630 20683965 467125449 338282088 405079806 215763872 229108403 71222040 199256442 22912915 120837295 6166899 250287498 188502846 843659709 357745269 677973655 155893598 233164444 84396188 586875521 171914306 358015528 11263232 125408253 3772487 472041132 442087674 909456763 642403081 895464409 153481396 375343201 119333290 953333413 604614960 716371344 442872025 558912329 279743996 372166803 297614082 650947801 223701567 786941627 28651258 503889990 24669549 203147727 138446142 292304023 25940073 475656353 386320873 878072200 665483657 906815127 844324617 885151794 410460290 981253089 801861679 851807357 719491974 810485266 310339854 459818535 174394998 552712853 454841524 896722351 757502188 928287019 342479133 362353413 86228221 320854904 2141234 924181500 525861004 725418062 701182458 817152029 692079568 786207713 419053864 960188745 675541606 930043990 3769195 121516446 71135146 439748911 126790916 505376824 268624033 651414961 560097633 966742937 56640984 629211450 273089957 492890137 116500407 790975630 534233249 898813783 429678534 713234057 397601644 520810989 35768635 326160751 53018108 725974491 266744398 395764348 203493337 753502191 713205248 739646448 502691 751186604 734063638 943322838 232236712 623418372 20961226 708588714 275218628 668232546 209811324 633471310 231532323 719890420 62471815 487230055 439883001 650601179 264942387 901181967 697840352 877633087 482466995 924633815 90979613 285889998 237846181 985288146 417011611 968690267 134603199 993848960 460057700 920106524 246061579 829424088 165273506 950939033 663104756 790981284 681706264 975998289 110015212 749959395 8644085 683284367 587705691 891104051 231967575 628011480 405490 707550538 487273738 925356915 698739368 796901496 632554056 794981843 106245676 670317485 69833024 724247275 263574855 843756357 599136482 770173927 432560272 623534531 110011471 292413464 43951390 573448660 219594773 310694218 14316861 33337871 17612862 231787680 23270812 819082072 778076320 930554314 320222066 599174041 219628416 706304261 514596627 948081505 538315229 667114127 227033284 319839212 288918912 701777005 423847813 949301581 923542760 934015210 51022436 301369908 78243800 712291295 187899166 752878164 38994588 738889310 335355653 773994915 524665159 927205651 100249558 563679127 106247666 559600770 195697159 676190673 661746585 848376459 762218708 921490343 733862867 995922496 789375338 916414846 472560186 887296097 542088245 730972192 566255449 932543573 112730533 915105880 821071422 970936156 680338745 977115442 658520948 673061389 589676171 949460429 368296459 574331455 15546064 846725297 150971514 161642339 51448726 540306984 302676834 751579921 522200755 938922526 842551786 957881482 769261914 904525030 236251562 737621903 252396188 804397749 505760304 847871392 820301007 860359685 318322475 354530311 117616922 868371879 427321372 868800756 398202350 744351352 392015182 527745122 190746985 341720051 39601905 258097070 172229612 482075196 456028461 937960467 869559347 944052096 369418621 927686508 52282291 386031689 41504134 395749685 30937439 38018369 28314797 51634712 51217811 611743614 31603927 900326502 225807092 506340653 500610588 910627256 584444276 693875550 379754995 623878298 621677676 764952127 535745361 788762446 688803257 905760054 900194429 967803317 25365791 616201825 335268782 561904123 23045532 486464457 83916643 721564174 46103749 782044342 226687159 437364545 93364497 420411505 393631190 591169802 356198225 842555179 501994847 715142018 51402653 190725586 168371980 520056225 393099067 646071996 141744618 391994143 210685910 499416946 9551602 844156150 804304575 957911214 433868826 685476054 395654076 742263235 492777319 669525064 420791770 785224977 184771146 211818449 121062115 571798117 193434754 858512613 209880210 951825880 20727516 753550091 520703917 972500461 954506314 964980199 122748988 451429351 442142888 670874360 661018767 667503351 27768002 929566943 491431234 942560084 690491348 702354982 318724842 914331915 133738614 611525825 469811716 524590064 331331480 911428103 313746451 769496195 626397855 706081513 11704228 574517590 183008308 847366462 553686304 611365636 376109891 658095403 142819920 171826325 93633947 597346104 417677729 584283110 302494184 720567062 24887377 660678948 70804910 588771296 498837253 650706627 186136553 392491311 19582207 639359485 597778742 960983432 297157498 678660969 577225040 620448130 365502122 443242609 49062272 333739557 258474836 356716279 245042744 755035088 97997759 118733258 32075055 680813113 109875329 679779044 278169028 378698657 216493886 243055553 139095854 245450350 166783935 448194146 106961481 275420360 211689299 281785699 148962614 662752570 434313831 960419736 467200850 646798307 392210056 880549472 554984020 709707326 365791543 477560938 278856693 420783315 208815725 620513565 228685137 367402904 311499092 732260812 38047320 352893175 142648748 942220447 772371411 952322514 299090423 391291381 115674964 359941463 275542176 294004255 275165080 866849377 833948635 929006049 383639189 751315555 573642461 987377479 680781033 867689835 734647191 911226185 467643638 540244347 445440396 589936670 257808386 994757005 981196388 988118517 753311575 930248715 47866631 720080592 256296209 891649498 567989286 983359343 973624030 986338297 588261410 846035440 101717736 872166034 478531945 893747472 325479062 816785999 347221825 758930737 660400631 904443248 339283405 651699286 570372187 731854030 726142807 875098194 148390204 463925412 425519306 864415802 484103938 908133533 401704378 495913594 255225763 344178473 14111707 775869067 671076556 739467944 448596862 480773487 200442886 553912526 107747231 542420060 259009095 481533533 397451005 613843489 199559628 690940628 597786294 893410701 83493952 534671151 250079470 275445693 83615821 393532655 105400326 636915970 561005227 771436416 692823821 725918833 158032133 788410052 275845884 909864521 328903566 647921302 6447015 744872051 409744401 952727191 202041061 466649703 81848981 476974048 35609460 827070293 671950464 944603276 315729660 343745939 395922 72265182 8865946 944940394 127365485 684641529 39938818 280987045 253646796 977997764 929984543 970113015 900968795 939031404 474439584 975833445 194623959 520745737 490045480 635284998 376286384 892017925 560942725 788177491 509632084 693927444 474232896 815861861 165569699 855314793 414926404 622276099 126003245 944428174 137773904 742406102 303406874 809627351 134190102 355867742 308247025 747217098 592742278 631908681 565820233 744833916 405874759 483838943 204897582 476139175 209877306 973901194 657921026 952623129 467322358 628738488 213584247 430813103 166085680 481607262 433231960 959184018 304880442 884702759 227546918 679204676 200102358 287738479 117662414 752606159 239843392 578902172 241385417 315711969 146473530 670592795 495491349 958305733 683809322 755257281 281084886 408048946 58440892 848950844 147932475 628866519 98543413 555672925 300798346 378821541 287809168 715122028 127450990 956172842 582550423 654913048 346743376 357958157 17767948 207039351 177207020 216627419 52848268 372616770 157910485 794750517 360270308 385909737 22437238 531548025 60946491 597185516 572325952 980897080 210462129 501777616 34269484 305172009 66393790 700480172 392175762 827293138 318509441 929737443 113226232 917056486 254545084 400957228 249517583 528458235 93805125 740300999 602684362 821471591 636877332 819126201 408743730 882571179 40243256 262514761 225512438 989041077 911389724 983789063 36726395 410939814 219209495 630843150 35019495 954024304 474000088 714033092 255761742 964112309 238922872 752324694 24054851 801204118 527217730 619357036 111261127 806176481 67091465 506819665 187928958 489285644 209694981 302258680 56764042 678408957 106925235 364625118 136416237 789055591 469139235 733509727 557488975 900848380 85850725 336541678 327243077 546851180 457921178 836053062 17652728 649905472 476509225 850756855 284709037 571328392 104014341 859412388 634805926 905625747 386483485 898394721 338224605 865924951 226163417 703572716 521342415 763986708 402914293 409726754 366514193 856259808 79062090 731021821 246354035 984110022 814129038 834505544 604068147 879438438 755259865 967562526 433403286 617578388 123551032 871227455 850083849 933122818 138398413 196691906 95553238 112651107 3241227 492894740 4046863 499145443 3001205 875884150 262163590 992121594 769095549 872090898 504973613 542166392 334487611 686115016 498777178 594673922 571934458 800701803 318403317 896345155 694899035 983016830 453725463 580613557 535786542 951818050 271327437 327626255 153537727 584849587 363103065 558641349 119415799 302152919 9348597 903113103 901434718 954579298 58923172 235528496 214964211 495674938 451455184 949165965 559848565 802817909 72415526 844773674 442105999 748245254 454157640 997176219 792011365 917115417 409958253 974842559 95663571 332093928 62451156 608523839 7932968 357151031 62790682 232330069 117600330 874920767 485009563 520269685 503613632 972822166 504622750 552043066 275481523 513479132 447435904 894367172 817438457 966393582 46855386 406201890 259813238 932787713 52048280 129617387 69528636 748825150 83586557 392186217 372948126 582610267 258474921 750709937 75105145 847652046 219490646 468101466 371263155 951303811 797645174 808136150 370753844 422465113 374245144 657894208 145512614 530525994 264321433 876338871 800662499 981349601 373862764 513024447 103861648 659936639 158689500 597059011 20192278 102997168 16309900 288102046 132684611 221926560 172123721 985680707 526413074 885076014 536295032 924444102 850222013 964519716 960360328 973995396 42635485 100325964 35998148 133947972 102328391 326858237 309002087 871985844 631718158 705525957 10803415 266080994 134844884 866508940 607517457 793429294 345712250 546893685 81199519 932023358 210720879 702547992 405780327 718031006 458651231 597764682 523663601 723003163 69331680 449295306 260812241 391689599 207432044 534933742 387666359 576359130 337868565 868228445 548825089 987541145 410588865 858820872 198571922 767544575 308932812 624553779 487506147 551615755 490451047 710508059 385638568 897371751 328497485 857806810 643472843 673200723 22964381 842537951 68182156 481058893 327489137 806254670 451409633 512319918 314672843 468488017 204934207 454770292 244720546 649856928 617199925 915506667 738603405 989693712 968069149 969971770 202042098 314388775 107613777 829791027 732635158 753330882 673974579 781012010 258369872 636954355 420598162 631730546 220598755 490489326 129781795 252545938 124518013 137570713 39686771 63872083 47042345 755275530 221800303 517531155 323495109 888153127 586417500 946140295 391165981 476806397 59287112 924689709 782813061 963993170 710663027 748013098 531966307 738245822 423892897 765107352 271380807 517251575 474448535 699589131 49192489 156908974 140031066 704879994 197879773 459003061 100573308 645828236 503690750 922787170 482402471 809353727 202063208 644935958 533476746 911487359 381304582 623878220 405567085 506780448 164905913 695698046 107891880 873330353 386906651 538227211 533320758 932161823 42424087 94787469 24704534 386616636 321264719 506996474 60271752 432311468 22327764 783853978 735448023 890375945 368889508 711175394 97236607 340289455 116540247 407263094 298890875 839139182 386970998 483900184 115990036 775798177 97315344 561518547 130301618 482464935 469286793 548248657 85925857 780912838 202203691 614147453 328765578 686948633 220714619 814482601 699428381 729478257 239496089 770691736 212770406 659744787 500847315 654581787 299256502 799304892 507678150 659762099 292496469 833463819 281643334 839704586 94641575 788328802 237902024 751451256 42985827 62623198 14149049 727719263 678983500 879283587 336115884 711384589 387458944 983723582 406224498 701253370 224943164 596524089 408647664 727778154 38760684 557605574 523372192 602010077 550053189 774493146 486214137 599239460 94623476 723103418 678549241 756972332 564244402 996841884 775906294 976743632 541832724 994021066 461656236 469606211 137095019 739240454 710888700 937207278 403910294 860540635 263432787 532985115 370749578 699536433 559508789 753780408 618766591 944846673 795299152 971601923 147496137 857431700 724029245 796235736 292560900 652062570 630720869 930296335 272303219 629098268 93021988 223187672 30564317 438904847 29609291 532057779 277077329 418305257 324266581 967953692 152908076 823349249 777123019 926246990 195989915 276148345 130005957 643500625 53755328 816962670 561360757 826103293 817891501 829100281 718670151 982498196 291379534 691422842 563575459 969571760 418781657 679607651 117912131 870724892 825708166 941074019 912881413 976554809 301213441 741381088 725888037 810370550 413490407 892279207 224223894 648405283 86335113 243280571 48145995 969993307 61391215 944792165 810236030 874927115 755923567 877245642 828536387 944226145 545690517 672214301 320943411 776353528 68432865 115582268 5064162 69926736 21339133 914461006 775225877 892619871 3925666 456519174 57702829 558617798 476960310 903003374 193022945 883215325 858498157 951051245 210085755 381476187 93519315 328324948 205987392 846455066 16641770 271206380 38924279 371576905 7672832 891774329 446991144 650503671 395901364 653951956 515976561 799210761 2019757 106975951 13059760 592067838 77140143 694679980 401602293 670098674 321969095 948772185 323067729 802108373 559507440 823799657 631587342 652852642 508997884 531392113 369954855 525938372 350554548 551308970 481337613 670690186 352669345 476929569 424635954 933654061 327113861 822714430 284459887 986944203 598465173 846489427 670389184 819630129 178244988 665609039 291572704 976852913 283969868 587231296 312996263 890819009 744935818 978041278 439577599 593980231 269876066 523364337 24324013 824391713 59772237 345682463 297938383 669656400 10218962 701500870 367857814 378152979 204051575 370065236 329328648 946528001 588128844 620970283 149242726 850870505 793718783 965023161 784353765 823292171 662454855 852817624 792259790 925119551 514295174 973959144 573223407 659304363 236788541 888449313 440733536 870540221 771191592 878916063 224358369 559539689 521080603 746162815 234039553 537149817 269146417 485700987 55006480 80807509 42717059 383745891 294370968 820035595 170077739 596512894 84781052 689422045 180519482 846795472 559365566 661265127 366000502 775632751 255863983 909965107 98779063 152110950 49615904 394140155 114682094 422437153 80456328 342904665 62663854 303059539 66782353 659694393 183928239 603068281 381985332 983845548 73562565 472554473 251951606 275048031 115242406 609741341 582298290 971530753 375721245 700648598 122849312 503800914 487720233 489934921 14014215 623137313 309747294 915006499 823508202 861937676 760738075 939712155 427668647 872070256 125151810 649564246 266774430 999435796 429308003 838246151 143474309 682168964 64991171 649473982 108710844 913892927 897970984 924717007 617548899 919935057 685178062 935189124 208234019 238531139 234699694 452295679 291161379 328316789 78101825 787253177 416365420 893544590 693881130 898578363 81356238 893762855 479854948 932875612 482390886 598604322 186546125 547673432 439118183 710634093 311990972 823664107 742869907 846703336 216717900 797915736 168928319 522355263 400838999 694823561 414801904 933235012 191748219 851357699 776654201 885337242 797838173 977154298 286036124 970220994 625917518 837262466 85842101 585010182 398852939 817876049 162147023 520841561 138298408 234412031 81399147 696449974 5120973 469871113 279599670 361577327 308785703 925912331 643299417 772334320 154142113 530497316 193743184 663883785 42820814 137708369 88354997 609746964 433810234 757918751 525707660 890930411 784184074 965697047 897380175 973248812 797653744 895584752 364267577 409163493 75046604 610500064 63856139 87536425 52189280 674397531 283122302 656340078 299551713 306437414 4073949 126853850 60105149 473898605 469800012 499952843 73608570 422426671 49380824 822826071 699663180 918630549 734136821 889177871 634501218 778602162 386550611 635990101 380336662 643784537 356090857 808822759 125879453 487112188 99084886 842932498 7616958 620169646 128391618 588726626 202632435 679756057 61552923 256941454 240614237 701802228 675450398 894459712 185323323 356364669 98671195 505426816 33058124 402611165 85451065 338775992 65751945 877640938 711895509 835761981 4351375 895410057 546647442 573261821 490417489 649286078 388721708 757549315 204680688 239630406 94941690 895388111 586750518 870584209 86983141 772285792 722809285 929976179 792676337 923015164 2027647 711786969 301150103 537639215 491058748 771545250 461823082 810661298 117558219 961723051 638855262 716606526 578998224 944013305 449342055 901480184 726447007 887717270 515085104 927848772 168619683 877525772 238874139 463545159 11873881 324383867 181623123 662752969 529991695 855002232 447618565 887956326 372316822 862656541 198990516 744404514 493466435 841201084 473247817 813992369 548094699 666593795 280391893 802829695 726234950 740083856 94731024 859787887 431466224 979436987 822835329 993123018 885816971 983261023 386703305 455396384 52540178 906420232 385452865 980421077 548710334 816954429 596358580 754242524 318778714 409436271 45930535 89957807 84259179 850515259 468280725 625495914 45331860 471432515 240577946 875471843 642196584 921637682 821329236 987083871 848846618 850278303 463672248 629696812 162776980 476309849 63843266 533134289 128444123 896250465 176568488 594221851 248311650 692965782 282250180 635150856 428109787 948981206 829804158 905614756 666475125 964022253 206155031 742220316 579385784 744234884 210793727 372025313 102458864 850585792 180548165 831219256 358025236 691942456 447906089 671046496 22969757 888349204 53401661 122174858 44187122 759402987 64734512 964231426 738809002 772168797 22414119 935701940 653564566 720906478 89229648 287309558 43019403 695949669 491376385 993090773 806858832 967480800 262667866 696403213 335713174 723102194 163084554 966244045 190250854 884727636 41235339 881294930 51779621 841741844 382263962 398943203 363066384 861313553 166957220 261622418 41547436 962810821 873950134 968172135 909570314 965655695 603315003 626414272 566636938 830902629 292777780 658080252 426562376 448151225 63263853 154822485 64461878 710461131 140502789 416065966 265943264 467043074 442245702 626289141 438149307 807725002 748760335 807500986 15282401 325298138 285260775 424547700 286541104 714422992 239749964 793872355 556608479 708562081 517174389 721196805 651920165 667884753 124495585 293215474 224245029 483695353 259631320 432161449 260369255 491064862 438552773 917911191 707184761 819202341 413840869 949974114 394358106 416831716 391838299 877064536 322282591 693860824 499449537 673597321 147578471 521898102 944569 164874901 48086213 273115376 165763818 938168837 268242951 315577297 236760166 690627936 628953958 701367209 118696694 191220518 85456994 445159891 276956800 648239880 22582644 780408768 489360380 805273067 759616224 823152464 265967560 724391029 221755692 267769492 74226861 770109778 412905251 779378701 635120518 767611346 652393943 747957841 293999555 877790628 324433624 593155847 264722278 719483767 10406162 863273323 754542325 779960080 593884241 875732904 446474954 770908083 233917895 526705387 325600553 493204585 259089413 777966207 598878624 943056600 451963626 652964115 638125540 804361664 176312197 854104610 834975825 953144017 177295234 215762235 132205740 142537941 64850872 523702244 161097572 945418797 163289468 645018957 638491833 693706956 140827401 624042699 317135449 845022713 337214292 454341200 266304558 717354309 194848184 911850237 505518871 893634016 315350085 520402427 131275633 455789926 440147 107922854 6156058 313607623 69588021 983798222 601948660 643391567 370059372 562829067 360173231 844884313 662027106 792589882 13451139 246165693 110118597 879702219 374020633 739718626 139244611 548399151 486752925 553742439 377983199 620517717 400219240 703526362 186861988 795671924 79783104 840648301 524500292 582877109 127872896 859501075 515582128 961736009 718428840 773027433 112113868 545035704 74029631 219910016 100823907 437731618 193038010 216355634 32245419 299473681 97424903 715323014 443593546 837318204 437288472 922477665 456838436 794687954 730523840 840346694 104338227 284159848 8936699 477051176 247883540 464221647 62726087 589077861 300286224 712123528 453491379 971521158 343542026 492166644 310074263 682632850 172463065 220293253 85117721 650085233 411883437 644065153 518791994 714923450 254303481 694512127 683177741 902270020 447982790 577038606 411919520 885569879 842614441 963742428 743054441 957891786 859656299 953942410 313412482 583265907 285494474 975863923 614110960 747939179 32837594 89361001 8186830 439862675 153256263 742326865 27745995 800771268 672339619 898636959 391761850 717288703 72028870 915039317 611635139 870236333 172903968 274561165 231017879 907031422 138027171 337141744 108094481 969922228 260228918 669693348 611589894 718332302 573518527 906589636 511757418 969304492 343457919 994738373 305329130 822631056 296250754 619424501 425959360 600217367 579389401 998224104 250861960 757233576 223395462 311319786 30280827 483528106 145972574 840396967 790691576 905896098 276050979 886987043 690391450 712627248 350125495 446832998 428014206 483173592 3144105 111229713 92794963 264591964 34877384 957544596 283374650 691855565 385736827 747053289 535315137 902054916 795185018 957222208 499856306 578071556 402013683 841257846 179405078 592922349 549706471 994305592 410780676 668896267 479614806 559571257 339483679 767958386 507211545 755621213 565232403 829518554 817260274 981075700 469841832 528257158 313629456 519372394 442517813 850419775 406982256 895362002 437590571 558017730 374666859 932067374 691318467 970123623 591018288 765692300 512019812 940174870 373869230 556791373 241965145 769709293 18307322 65246098 53473101 591962566 434409621 848817530 459269805 846372459 269750858 472792544 249122047 622892670 579612283 760580119 650072299 725808538 538532754 998237618 5390618 571009146 279784145 648478871 36483654 139743763 73489824 248589096 100876372 385294752 187999192 456257655 417653692 929636587 26349545 833262442 232345447 505756149 66461247 851247820 730836738 849586246 14560662 215266458 20789217 224175961 114238853 746525489 576832827 720318497 492045222 822970643 115188836 396916402 29209021 276034892 217287662 737222339 682735830 824483746 76647444 80497309 48158687 272496997 236970071 971852322 848886612 890808933 730110783 751672792 581950610 820344597 113350642 906122332 461826259 661283612 172664555 213886676 146399342 148811984 77719143 795264554 353323104 627589211 568481753 614237519 255744177 955326173 219435715 701590738 517615324 869860892 440646687 668393669 253403653 784222269 343319883 448909103 230508547 543335147 148957685 343968783 302715737 451342257 21970973 198900349 156254552 356594834 51161094 535043668 313667854 653516908 191786607 816534962 9265751 666786381 155978390 365738850 21715054 145075999 135542961 776661033 649041190 724415349 711915052 763581050 6078500 253582762 28380276 467782363 447997494 460020333 409628447 996221103 943113627 989869051 339139336 517928231 507375029 990189244 295859452 583820341 441290993 926380102 672175489 787696353 686590458 957817321 753874440 816492911 697168932 836391415 288362379 953702878 225790913 335022300 10663473 835975963 507240728 683965149 622050179 741432780 429221974 936923704 709916197 720753092 634376861 820021612 81771283 712267872 68650818 760082871 440426327 450089349 402971230 837269454 66173918 180433388 49526863 931096276 311990840 486659279 383330890 396280250 327598862 853265521 342114171 941196305 10707476 204889404 54961241 285069948 282338506 518313230 486754092 730947090 137978974 435791819 231229915 490711491 165033109 208700850 17253289 539388972 256018732 455593940 325547057 522734143 95372685 965030323 836421246 836664138 302308280 336534684 204880295 445061786 65878684 650800863 281819853 754291839 393462555 593332546 100067270 712827220 302365318 835861203 705339639 736603355 465356531 505593005 407260276 941724936 830725213 883046513 76360142 519893459 35707805 71643357 41994151 763545157 401799007 858875273 757550174 822103577 46021464 141689625 100674565 225278695 213011516 505780962 129971377 255991446 134366024 889318840 448679556 843387076 804490780 964805989 800158859 837279283 681858951 691805179 444184478 611717452 435465965 647439472 548263517 603994614 232845305 352252166 82597037 853433923 410468666 514470049 225774267 461074811 440276048 732124891 600632546 885858127 339056340 456428035 359037144 631936678 12171733 216463087 70219134 378455092 282849003 420806693 37032108 689177717 600698196 854773237 398685820 861736470 374232932 801801620 358400324 771828870 428917452 689991658 590952475 733533639 555099676 577655610 123159863 526582740 134492687 955809640 821118353 966066773 804811081 998347880 877924664 929201513 409924760 799671104 9653633 200806848 151799077 480161234 9092887 30137977 9380961 776632951 128954323 585364513 257225526 808385715 726677643 822960921 528260003 588602156 576628963 680039747 31517646 229138196 199718276 513346429 313022037 961579243 46527966 886298932 858825581 979989516 100311950 222979311 93509127 781412929 718717295 822023382 752340789 966974206 333321753 432243151 323235620 481845411 297818841 436516550 92385137 365453108 49175461 349508570 304511864 321415574 61254548 536705006 413590926 731443267 223690708 388753666 261955984 275809296 234343768 837148328 71785728 884758843 103697333 679866157 601227960 827455278 66026796 654555046 146143900 287962954 128878523 379051136 217684673 611191196 89503574 205088806 113134233 259371455 243143048 898526226 209318513 767918918 285632640 623018127 618037963 630796242 4056339 260117453 169179128 236232667 175992475 496747359 254582782 857519923 201132711 755095034 368057554 832387368 711084626 773006114 61842070 570306452 35917306 44841608 32625442 518036400 462030553 844501882 131290596 668596787 604534182 759267445 235281338 308215316 6199268 679047482 620337092 826403647 196599009 489204403 471675613 665441079 622485356 833567020 348047974 594518983 506281771 535044709 220018347 273561134 78355856 547154869 298892378 864988569 544253600 688373956 380339930 447468059 346429436 494007352 347767088 590099247 454101261 797649943 651451734 689757665 479549533 733824744 27127621 647546657 166974527 500491711 218967082 684437635 434463207 870965017 72985331 367353378 77449252 529348495 125405452 890616129 653448754 766012234 289753216 559972089 134450148 620708062 468272418 847891724 785697353 893860410 757509098 800270149 752126472 917196873 859928474 931626710 238231014 705016064 305405178 705703223 651284433 932987956 368865803 705561788 421167847 478297307 348403549 351854828 301502373 923673385 376466174 642638707 574551926 992423450 547380175 819192516 32797228 594537934 68878512 359683528 88744687 751102785 469523061 765253318 599855249 793006138 623368810 694461147 18141527 988716795 11828595 720212377 70845800 741446486 179014203 817876019 592462296 780444125 329525762 777530461 47063273 520123396 335433692 721527735 290347234 299519307 37670280 371355451 170237268 629001389 469137549 611728910 194619045 925062945 757804180 961034252 643176076 721460593 172978542 864643055 409553437 984930003 965262699 969507447 808951975 964964861 606860923 618436044 160056833 586489484 75455608 843216969 661811646 890132494 833267992 920122820 702981865 858914956 292024583 463447150 312111706 750937786 131136410 288550740 14721188 440330027 378078403 741789353 164759971 922700962 270421731 271162677 212627847 434343983 379740137 863927048 387219424 991543839 239130931 806412945 702669713 858227256 252547360 500005592 164085303 958146771 213809122 792489924 354326151 737172598 328436686 950954858 945857971 982891773 489006056 572087184 12059754 743401374 737661042 903159878 664898390 983098853 624513289 670174877 304972795 623789369 343747771 508515540 61417139 234431581 220553613 244047811 182059828 665766565 386765146 527146091 167136798 981439389 694814370 816584273 768289512 816897355 242197055 957745482 696146494 700583143 700548620 823632825 628074606 708299530 300696657 616466965 464317574 755494696 70126329 588566764 238378432 345811437 214029830 491317369 227246840 821974368 301363719 722659516 659746999 698826205 251998748 996305288 207895912 970213766 849301140 898441903 850722785 856931186 546413289 799582070 135865517 490295921 115375288 834437825 580951884 951509571 767160928 806151635 528367284 917007237 898898346 917967117 692520350 772774805 202004393 953900297 859463305 880547867 875656835 944236751 250173391 735613617 94296562 338862496 18367844 666976570 206008098 695615403 632835676 677303034 403458064 465019036 165173629 416161408 327549263 722523633 99818359 820313136 125497919 344974523 256640310 675630193 343500456 474075358 318826213 942593283 833808077 930497864 534722545 901449050 316490452 326588228 284146411 528761453 186252987 363186571 221256469 340143878 216878589 601005018 77471278 649960406 276128990 525981991 202065590 206563622 37063547 835438052 435981018 679400485 467325393 522245858 192904686 560491451 355699654 769358475 92475892 145504962 94069255 790533695 562996519 708399184 440052522 890785389 861865512 975632333 388227964 427870368 272738570 777370880 33310213 702260980 170304471 342902550 58778441 107458205 25319191 954727720 610668542 969214553 562244731 770322683 516133338 578111225 2876394 509543639 119229838 405375773 95068202 120842277 74113971 471981422 294096698 856702783 605947785 632126120 108615435 166787063 109469382 752406507 595528887 623574424 553406760 619551594 311513085 511340997 223477898 376524087 130557042 712882438 513760674 946561398 894919299 978750660 60328414 827106422 492313514 780340708 436570252 582387311 237678234 574963341 65329375 112442839 43536427 573740319 538626059 671651233 218252099 877250699 412282585 470992647 388000960 984474809 160020358 707379923 339777631 493757322 151621904 918319313 581266053 670858537 576638590 795497133 45720352 80382222 76086104 142769197 7578266 173996289 117851781 972549691 877109462 972364397 17432540 549146883 432141692 612298033 386038436 485925294 404656 701879232 416276866 900063503 556838938 844768750 155834723 293867897 61798258 370998834 286986726 441663640 74026013 511797104 403443936 561777566 31488979 452581554 42786866 720409859 46504996 79169573 66277966 254965136 30000650 902230875 89351827 511432082 371033537 740551099 680057232 938627834 84489722 932580274 662459402 999805248 362350030 878289931 691760892 722176123 548670315 826549554 246050629 563088593 320784006 902367550 788793915 885324552 307657730 984187157 835616634 855851827 806112425 882193325 707923099 724733417 260208274 550963369 489832096 828991670 289638180 826046960 422352081 755898369 14912415 756403932 70810014 116124667 37157600 168145007 36601495 260609938 110486070 777658537 301574241 571011626 285463122 423994270 125027165 987822956 774137267 901315083 779224120 822897836 530453417 721449199 649704691 775896436 409483800 641072757 72359097 575610808 214575114 494657410 388625958 882064204 381642527 824123512 714826196 994884581 255830554 291310051 132141660 564525140 530084757 734838409 105698871 565305111 553846639 893468998 162772579 387196158 164614835 413434409 373747797 410162375 226334613 715609838 663221369 814217316 397240681 816391660 812107118 839509740 200897025 644249761 83874186 456551703 286419532 847015224 688097492 911997397 103361391 979616484 300417240 377750839 349881420 972724674 663841506 805272895 699646477 887028278 296761411 591616461 108334965 845791002 275102854 767307904 183584232 763390973 182609126 389109859 239537405 721646674 424544615 476847958 351752274 709446151 307020877 885709950 274985080 549220383 451502343 990463158 705547522 848848992 597081924 989877744 791840867 901237672 299687289 589339940 347866561 966616977 674301217 864350303 18809222 395951963 68479352 528810488 141631758 250275130 93016002 404920081 243775367 661308959 375328988 735640554 603957880 756687158 325962412 979784213 181163971 763788764 630202726 790421193 209855157 312512066 99357178 706045505 576921529 910551908 466271162 790278665 411346456 616634259 454985301 617977048 138667249 173448526 41066965 842213194 746358633 980757478 553378552 571672494 330204587 391234849 217475879 340277217 217999234 572287366 255929247 681912281 114719301 585005087 411283492 596551932 226903665 993976614 180305324 941385114 396991652 923373802 670008193 986918099 6823753 865706830 196083036 229297621 163544317 194594550 157069111 194126229 105473121 618532707 96753621 896341593 120689576 303256233 84866231 655646996 416410291 647877129 71198349 127200960 120004796 599077801 510316759 661733628 451880857 554656471 132392212 357212593 50511056 876618256 127401014 208019991 153859064 780658501 28328715 776025114 149797206 295392748 197307635 346147636 274584638 833391536 93838200 747274736 97170706 472416129 117609566 481017015 148743805 955036090 561979234 581522268 405450247 743824588 349849398 940316363 68589368 340148578 198406470 397219397 394690285 624790239 321549292 671625027 525424222 775147436 409988259 905459482 552322278 755960991 482546613 991882699 308161824 857592702 391952562 713737462 247872145 482243403 114615107 571653009 31260807 231983921 194548812 727508918 536686871 684128605 140360728 374364652 15618178 228182270 103234898 282042617 215217882 778601037 227108320 373610245 63346559 233019147 86752155 638041446 426243612 622154833 346688638 752730777 652049520 944220630 250735556 971391321 152521987 738835963 356123686 942779711 775180002 824985647 75525144 218118499 127315099 968391037 965738868 995145182 621667380 954023800 847570739 898173178 10440597 77910670 52973428 288483258 247240054 363616800 119462938 916871991 630289280 792270617 205483127 593947037 453655662 947060697 541882116 895079285 248456217 834017216 460997733 606708780 10634365 529049206 418596851 820023682 531765661 782801244 495940089 977314038 962913340 969888106 132366848 239781958 32040720 156631309 114151508 118406954 27242251 846095187 207591572 946568753 720639624 775736850 636267468 768767471 465631578 887429116 814482173 913175785 594320067 861607089 276826648 531154488 99563317 354168482 54388996 448510469 102903560 751602203 464620574 939917292 209542419 574559800 75678502 118984491 35807854 769798437 89455326 951379136 112065899 668256453 547814451 911335372 567063644 634447412 227921437 796097364 376302592 664279753 90318812 980812699 234570304 653027547 23570936 559860330 280874405 764584663 437901884 974141235 372133875 611552795 175018505 952752702 259989284 360458123 207405669 349457387 231761414 791402150 81159168 481870895 394712964 562969716 350774145 665446721 493766167 903469887 467817899 493409853 296937715 795712662 30391419 471547217 291109505 951329400 592472055 840665540 797228980 863611747 332620527 984293693 711561170 800543474 247567499 924638726 440109588 780975568 546837881 672890570 614780850 851851464 771150830 996903276 783517367 910862894 185500114 651617548 107642374 534751783 228675883 519115214 242736617 481553353 61514641 556818903 251128612 492008731 232694924 553574054 306894337 780184842 477091931 660503904 367321643 862290836 392365133 424768101 342169357 517705303 182863404 530696522 446990541 572240137 523800240 758504173 96929877 375546467 270910530 380586595 224647710 923412488 495151926 890947626 306000108 826341206 64444772 215446333 23659192 545374556 337667389 594184698 8509712 920319576 825903576 862996175 543391733 568966564 547095218 595719555 71699619 593608144 348223449 850115678 219724981 595450571 395484593 421550140 200205015 301908545 74121090 368497196 360730644 717475226 570266420 630181926 282791495 570764297 545347882 793414619 453883674 970201534 246838288 353935850 218710425 906190819 831120372 859971979 734827994 884404558 516464018 778284825 554332838 892185288 872464825 921607191 724693194 890692935 288605520 677590039 567339364 649951773 155633285 954910820 694458721 716395027 505105476 628076116 227867526 300309488 222961962 279843682 160201998 594749027 101017218 987719842 668796975 904200451 13982209 337837096 178353789 699204238 226017829 840026314 780754053 945423787 143209260 731562398 71337678 952655304 920222042 966415508 330658478 347574382 16780647 150603597 122682494 345365911 169936834 769274957 353922484 587560208 189126880 976597333 610573176 805528282 470792345 950255135 494715200 609354994 313496854 542255163 221258627 821109628 807237540 907403293 533029885 593137894 498619497 767644936 449551870 558373758 115565418 846326499 497724822 832029388 98482505 869438689 58674055 964619276 433344635 935968705 271078127 305491114 150670737 474409832 159097286 894450580 377473812 932646178 429522830 728422114 162589398 738821779 435682024 513884202 175784465 964177408 151474422 585616619 132149192 967720748 612636501 991924178 328405298 789185828 246800562 590169039 569896987 970274339 35848959 451250255 343353366 729727736 318849359 507748996 347986352 351052641 110498377 176115232 12588171 628703104 543524790 873681275 545536253 811036744 643829664 916688133 527947966 783346615 378356951 401032678 118343996 571237759 366778495 846972233 233921036 917649438 548086101 809477564 87137296 818319408 461600684 478023916 268473135 784118657 653522079 939379748 10038367 647713194 289710494 414873030 177295176 531469547 46089485 236377031 170273351 270164905 243620410 630475281 133491505 505314468 159247770 708636612 596900934 751748510 287363414 630753648 589535682 835587917 632065003 883082762 733104818 844380455 749601590 918098555 528782345 759364499 191485739 545925334 30566447 640665466 13670865 526705294 281216287 851050776 610788265 926840916 756569586 903247933 203532568 789225012 731127191 952885931 603754168 656322181 487422806 893704365 867848267 915584309 876380487 900256974 16927058 852584376 347390702 483154461 12186995 547986596 26808268 971047677 767716470 815463280 550157548 645496771 387533875 982671409 963257826 967553625 582698477 951037594 708469969 768294616 405776744 675036755 216516872 903765653 449381765 956447471 601068658 976340598 471633906 950326093 485029214 813127020 701986391 741763795 557685241 964112918 532179910 919135271 335224496 647632551 23179023 139691728 11590881 366949819 17071910 321649498 124506048 562363610 354204870 700258649 696957356 747877450 353923294 736901786 506967637 548550977 297966387 894418287 217856465 701864155 678032695 957793813 829487734 889292595 302711395 936112717 904389936 997933106 613134068 682158405 580344624 818817747 375063695 732314732 147545987 548904369 149342731 516160732 484126428 778683697 260173583 316962980 60068406 689331214 20233065 86539406 3404547 463863632 204019969 768154036 423612697 524999022 156297879 986993170 718941189 937222009 903861587 968839975 517036323 669044305 583800159 670694278 201779341 716095851 341736819 571707688 201555076 707619567 508896943 883538735 538998926 853175130 669923616 988002819 883010518 990184562 836121185 863565274 655212017 950529018 79805546 263573382 229826245 352856294 194299344 308478532 173159309 642607590 242277938 740907226 569971419 851042868 703750195 953993719 657875858 935150790 424157388 823764151 609415968 667380462 260823188 962556692 294801813 799181363 5578080 144657127 97302060 773750968 564256892 915200765 371595769 610050579 184428406 351376683 313100656 498551085 222358229 883290383 609991801 875328548 495189871 712709741 95729550 193539211 182953078 484122901 92784365 790237933 410472297 798194508 99598118 105648911 64260781 418154934 374010761 858461868 331802950 807174920 13483145 475457925 238167138 429345186 68485568 926442775 630013863 855336259 412289236 593388104 260098938 699941446 693086393 864294704 469009679 952904002 171403458 478758840 334630822 724691204 269249985 614966133 104410819 743440281 241301005 763797449 49103107 817177053 563190383 891183482 201958393 407575706 391826214 975152526 872904065 899835792 83046550 759232604 178541278 709918823 61106649 376804133 94060901 835589795 574777623 910050600 419966798 710102090 522409296 772437378 27383106 43223007 33256926 99506701 25163763 722230178 632851881 902638212 685405476 833713769 176359112 295692367 188370090 432677927 365899273 533893071 531981633 900284380 813285196 922826104 64528674 968597348 823713760 986571909 365124596 923467881 303718908 533963054 68667535 652910263 651946619 969194331 708449610 871170909 549072505 657809290 523191311 565015122 50748172 489505489 257576139 547069205 455505810 594953526 192206123 780014458 637277686 872971496 409442301 707510357 149588199 521684778 279474006 589758614 333192053 590826587 547154849 602991605 233955213 670926832 585571944 913366702 475960624 987820800 307496748 980510901 378496907 411643858 193275478 779141034 448946523 452618264 108504438 869853223 629362857 921745852 340891336 450789794 118132722 326312145 190726246 354073427 113731987 868806242 384545480 897347777 307101997 914705183 36327342 969406071 400573388 604526430 122110046 344462980 20308075 437070746 119252820 373680357 246796982 573325676 29434807 439722098 61372510 681306973 535265861 650034295 511484919 788268641 439415778 498755704 397889058 730018095 182924373 597710027 574993965 668952112 524471858 822940589 356519663 436579605 96445665 307799872 160580092 944890628 346571558 659468592 365606585 581300514 84334430 985206775 573860087 832587907 247921182 699811168 252914153 484719507 296896027 695595950 395397134 890726585 281991836 553815703 383563754 703830031 135355441 898340347 133357860 490752159 284743306 548581058 28985204 101911360 21804025 939172984 914689661 977452009 797771819 925903723 300658356 734878677 195531945 340478891 75440292 446951522 322894230 749332281 221911886 557443764 267068210 420867620 282437499 736474566 223921766 227715868 223306101 902785064 37938048 958748547 110134405 469637264 454290817 858052747 306859751 563641014 193997999 426694295 333758719 792311893 91237651 449577740 302458246 531641164 159673613 678752499 79046075 961257763 803345506 852574587 259135981 494069685 131762444 195611165 79028228 265194345 155549637 263934330 183519703 518309316 296742419 306128984 228302500 453470432 143607674 999170674 682542830 793045359 319832274 381250830 202237111 793122063 58422665 402437560 303669230 766732414 312745615 596191678 591721854 723821808 258183323 661186943 53189302 587024662 223793039 788816644 373441809 599117069 311713359 685018758 512391663 898199555 292957749 412852711 124285352 367982803 165911597 200482907 56926083 91096730 74426445 354955083 184866697 877801943 523795385 861365154 86048800 487234417 339687017 976774872 487709876 646652427 640182821 816451378 745037011 772622264 115108819 555635752 512800147 982351093 289007148 384504966 257457820 863306860 502929824 887035091 75812992 649721205 518188572 804828192 761152948 768459149 709163882 909036966 433679710 588774258 120570788 251722549 97325120 550729361 259550660 439117190 319206942 864706079 494769803 997696405 486128895 693598243 225651027 903642427 856614115 914030031 683081037 825697573 475244526 901771838 634186672 977012204 669870724 819909469 686745118 942385061 845820734 938835758 323108694 670728166 470807948 790795981 476840353 745034810 576132033 618648903 523041352 918494540 833433210 858023942 506545967 697403878 266424905 605275058 111069604 225884423 164590852 540586481 251385678 813434232 810605854 832984519 49074340 607294696 365446742 510610253 257237992 406115453 354766237 554296274 263148445 440419539 8713395 103153627 86685556 615499289 139697760 437418677 261824727 343168792 283126628 388308621 103869109 450793391 213892397 556001842 225595302 292564584 292336225 309185509 91039996 870626834 195901223 913142150 64584949 801137520 670337268 996699884 93501078 293450900 13185810 631630339 621268900 867925639 692602548 978305625 364158547 364515001 100595149 441912365 21078438 474595237 63543522 402366077 394494641 824833902 59023180 63105853 55646189 317539173 259087659 625727515 283158255 592563038 470445988 842827889 21817616 573931782 243100468 995342620 358369570 928688247 668578995 960721874 889746821 933356921 807389952 979228937 226528439 331020367 252163572 383138798 53187021 835098083 222740005 246740005 44412001 519606810 83461752 577392128 243221220 989366361 109332457 324982875 90819526 255370242 217297440 457514784 51422813 744678856 170968891 652495582 47813454 330198900 238387840 838407515 535330083 783990977 724645227 724677036 227497962 327345133 248365480 655978611 242260445 272236463 157126954 436510329 322849501 987155388 359212009 749113899 137843398 954348889 864270649 963504379 351463408 532123618 48004343 245042926 3772344 371337069 257247291 946558788 43544713 667421794 264025616 671824011 375416777 562490550 337570383 403192486 294033505 963535661 473960522 529810118 111958522 578155705 19412403 383660588 152875324 274106754 268205531 689241039 165546792 533793245 409840097 610896363 166005741 198705157 63706780 948426976 367225934 679067741 92885415 187706025 97126776 702390808 698987076 937086643 816963809 819606118 661025742 924427571 621090266 851908236 557965827 589511431 35772662 504314798 127708752 326275254 247816483 269512924 194203371 878998108 347517853 518089986 165830425 991956528 342032069 711747981 613563918 631047805 617629918 818950122 157135335 293468634 220973813 792573161 553154112 918175831 631951780 816884919 780900329 929175052 80827764 357089364 20691368 629606029 294430537 366679979 150695316 421393055 326922974 972118320 552246964 748561219 140354705 393528571 178254701 785153449 481346635 701147243 505771483 649892538 634174546 838945086 443235027 650351544 85268002 450032138 215977925 350006926 253328532 514239017 422989087 768020540 664916592 672572645 461289660 501392136 332315544 770357938 114210226 645001862 518246172 859374992 7211670 728833511 719698641 922969838 112808075 984175415 208397911 230462747 219630376 468604662 98894703 144603309 101133896 237646248 89429596 266749482 53148531 942062334 322042478 393811955 64406478 965892113 116646553 259806789 112511521 662771476 8047162 669142370 289920312 995151694 84590324 754111844 121763766 737069210 219346454 777817442 23792737 176000767 8601298 361058510 249989857 254265641 202354716 935306564 894358763 909439292 133847528 864364038 359126562 513540898 79672745 834314200 7606372 852445584 708863731 773501912 695400205 802534638 362426164 516595919 69921988 486958244 340187462 930820770 881103228 939605412 734973400 808226989 517846895 676655360 37528102 591332491 375819945 460212328 457658178 893143100 519371488 817692939 590431481 984334233 760532387 854241356 767551451 935025631 164088200 424177568 156011768 896977747 338048453 536772702 12187952 441843550 115791510 207511244 181155750 781166886 682648948 995869714 366370004 431641390 279861655 330519539 125167591 600217452 174066282 729928114 288741007 839341375 812954840 887875244 77896670 445635387 227224027 585063641 7292145 582623095 472727917 474196271 394846760 810626057 172439499 568293872 240070842 549626990 430554944 723384971 564247923 807433260 748321853 937613586 256179257 429521059 105484829 446153343 60307600 287269801 234594242 681475872 100397193 920885719 563187123 570136279 371654617 707002668 49413067 505425034 322713986 640658389 13874741 883767132 760373892 908364429 278782678 810857744 318337726 569432199 554435866 852082741 184736294 742397517 415065705 811181168 25301497 212947183 66197356 220007660 171191161 877133078 153851055 831743267 735400707 899484838 757202239 939880034 244181102 898643083 311198196 365746744 184180067 730630513 137618291 664487857 290414595 910244389 648509494 703802335 484072989 989523750 874634901 951275295 510815096 988735683 689712516 869564163 373348497 408616430 62891478 985593343 572768864 989875114 749792534 798451806 567897649 951737689 697057350 927566249 135538851 543702811 155957449 173383939 57864005 276385483 180854909 680590582 180463688 955606326 615574302 865328936 849499383 853353113 298529702 619165574 387650573 613112558 145794531 954601057 748025748 776290724 214751827 419769757 126790378 350836378 92445157 985861791 499750712 910294516 455501148 721252512 139584405 145574685 29858029 856531775 723185965 907693719 347224871 351166020 37069649 50680229 10812538 410252421 8233080 449177278 192736289 897965145 74339482 368607445 321100730 724604244 136282928 220106475 201142490 864535753 696510834 734698628 390748353 705617330 410782620 703006626 244864357 810106953 783210446 821630454 642296545 875931138 782942885 867821562 536216169 707051337 276203057 481822694 114662670 475030200 45719738 931283507 463575634 701465563 267120490 959263435 347869575 586746955 239952036 948197481 855243239 938153684 621707128 832060053 17564797 598422152 189329260 346156705 300064986 569629297 166489191 308414747 143442719 410703047 45824727 754169528 542976945 768119166 423123525 775413827 206161592 690016013 232915661 898912694 223378156 603902963 266402350 736504730 142642085 546704302 322716338 858292401 534797757 871366136 844716926 859324643 455440803 913853570 357038128 807506665 462755098 500135432 310902231 791881179 186455932 330738835 112400328 991397472 933273701 943722997 521508948 770906834 762743181 803214460 79823493 535276631 327536481 690176158 140703943 927279220 670879420 790249922 108817676 238998387 1662277 687161341 198105698 606526427 167026613 571745126 426282104 899666082 611861577 686458262 496491435 692038104 641525529 759240294 222370820 626943527 166569225 648946908 337341458 920076801 786234598 872629017 474574098 911801276 44967836 90620556 58149933 587235055 115220525 134569579 9432807 958231884 454556575 928740163 36720908 394671728 33697383 877385816 130168176 869795291 572655931 754671170 703075139 727851909 613817718 734858979 402612376 774755408 760211534 875650321 850820839 879742915 76215346 345570366 180613602 852460443 746475190 835871782 511362289 953040593 600873124 718865964 557312051 742573108 89256034 489441016 155326469 745699994 481962968 507419142 33723033 290236668 111445135 685614559 186342947 725358485 465115549 703036998 401022834 700979743 622589736 927590151 683433062 720983944 344233146 892172488 174825659 529427546 341551139 876417571 373179870 669960922 90457762 211655403 200192685 308611059 55033881 296668237 54644142 436768469 7990208 75561598 64556482 864916433 270507471 647946504 440389601 811107328 227026235 482508608 296487382 546882748 125217612 654550354 515750976 677018930 469129205 822775030 162802575 631124135 543023794 964494148 151312284 262265630 182077765 706595566 660605587 884480831 411398579 477706476 43352055 829195974 550234927 714906549 581792699 785183733 296877356 784034375 514568113 800859010 430372572 561991539 136991227 245125203 241292970 888537872 624133878 747608410 358836450 480376939 412335118 965324876 211642231 561492093 162688449 306925554 27173293 331444654 280436326 775850125 568636518 586994815 443980352 851566377 624808037 859370338 601831412 606969823 475751841 482928325 27900553 114032756 72322701 447171839 176787339 284432884 63121226 907229262 84005455 94635445 17112807 905182961 386474674 396114951 235828118 555172252 364115200 397037237 7529001 867541649 315499829 787289561 783105034 892751540 59584595 68794858 65716979 329471297 315073582 413209533 125111065 785717832 677227172 976464796 894384325 942003165 265179127 687419105 203331903 830308777 572665883 774879542 694473204 954986386 448530638 996167774 136307627 765797398 128418295 444587660 297072076 837078725 226463042 937812424 140964271 608470132 6606553 619014137 547585722 850339364 300472783 519231305 346943033 818522315 433717319 490276485 299141110 984539460 899402411 923245440 805967771 988474290 695686763 707186174 284217609 693209104 663713708 760612202 672792597 916617952 275922089 974627375 575166084 914769886 133868535 363826116 6665584 866320318 825930268 973245591 660726299 750959718 100646364 810727035 564869953 812535857 707683940 975598917 351804910 404014842 215584549 411694019 73719621 652810832 195262364 786417075 663805789 675168537 285037788 696977851 492949783 836366150 651334602 883054035 298844013 301643515 43517524 541146416 183761516 515850010 183309060 812985003 691969941 938338220 175146480 891872280 815868720 989966227 40944465 93446332 6921010 853589496 682014388 740523471 264148597 547098536 279415701 760689269 696537979 941465165 429713433 434068012 48196533 533253633 256236330 514151200 503674954 672175590 385005485 451987985 303769267 784236087 62980528 156106869 49697640 271355683 77467716 495433487 395898759 815286116 679682307 803739578 444586497 740136060 181369095 718441944 430496052 825252600 204105776 292432327 24610702 914862655 220055425 375054451 27979231 732972719 184891800 459044880 290426126 808336392 773229321 975457916 817024809 832972038 310787780 848651397 141169695 291919664 100308419 959505795 738046194 741747324 61680797 696127834 154655668 938134275 356757333 954875748 450034888 656360172 90936740 530657150 373711532 472382819 323204806 582270713 285834962 597806638 452722641 813564615 344266266 574186703 498749165 877007976 22505475 250076442 204110579 584133953 570698220 598279889 596202716 897772771 663929262 752577202 488425400 964463305 707743328 777959187 16152511 251821617 221099326 900661809 100651007 123751326 122391821 562588603 3038095 964453862 793269387 911101881 484316135 785609280 566355123 935721884 57969055 536145866 19936332 560157016 253208943 922191098 489701936 696314580 143202299 667470121 264728684 340807757 75621129 946720151 587624577 615945134 183581388 908732304 380269099 495807406 198719367 223939003 123965176 346875252 21547840 708268508 497199018 661451513 443711518 626575220 270016390 502744220 345454517 618255772 31028654 60771345 40059508 313619113 137803689 880440165 757574935 776873663 283307868 833203092 773537635 865438328 49236260 576731416 73563780 490982447 134945430 482207434 474407245 810640330 480473826 543170160 245437515 399012291 199548692 574480855 545150303 587312067 68047147 989751714 355708946 544420712 414318468 719160373 50030830 723730249 556384922 946746853 249984783 495708262 141800662 971366966 127688939 395545094 240218513 962615255 105955236 344434659 45059853 166840091 115465122 685322022 18261873 346851082 124880089 981471721 826336630 948573935 58447288 909675702 585661480 633651796 609035307 691691864 492912119 581745559 440443099 575245690 198553211 287693982 133729900 305121761 232943537 812182152 443188989 742601931 676478764 747200825 551331974 746477158 650061962 923862431 502992054 792790563 327440564 773237633 522267085 703266375 370722787 401629066 29651465 758668514 464776915 872563326 381822308 455894254 15723002 32338325 10115005 556624310 44528429 193499727 181863813 819919272 423376301 893772581 462185572 642932915 58650399 295179433 113361801 494447203 483226891 802762462 17891909 566553283 380196448 805332989 86105707 823183884 446131072 834830479 333431328 647079368 143581463 368822958 363044915 932943599 817631022 963469075 773653363 946120084 389235127 943755504 277365765 776168909 294505097 719803096 325209179 643944099 8567363 497975572 130436042 843816259 196457535 564656529 319450453 498414141 207243435 221274524 14026217 205842935 104368557 410746616 87888228 417382832 250163195 703809660 483766098 706598867 480586881 987452904 192099358 892275668 712877187 783166423 500013363 614264869 356788141 459212681 436679355 554643398 459399887 832302012 359051188 438724279 87716398 428991926 290264078 554679187 529967898 847016850 662628492 788550138 110016497 216694973 34890154 76556854 29908892 457810079 145220134 307006945 18794215 681704359 514745197 798044485 186716815 422396553 192575288 217266748 210091164 387968577 30845246 764628534 229551885 651433767 217596636 473657284 407989730 471942931 93839264 250124216 199020879 589963751 193229232 401207817 292951612 362639338 182769310 879242260 344786657 352505917 196713025 578046227 538216219 792694778 243984921 507023002 322225114 668330627 70049657 488830988 173605174 589970079 250365276 590678245 79315595 904562213 312906133 836069891 470740323 884664069 419867962 692651932 642768082 934150230 381310403 505540056 203459552 877064155 362271623 919687155 541483282 716423593 142635550 635379067 237742544 304147439 23790797 286033389 127634564 343352784 311212619 499836509 406427132 543379931 211240003 290300684 194983122 436515451 143355768 624108460 353285462 385781665 293970936 823237072 815850331 836602057 687267458 972526045 431393400 794621051 772909449 776396281 237704366 934208474 42099600 737896169 105123941 143034092 88573152 239213727 137804728 421698369 232532714 374116351 265338953 349586570 175963069 724184708 682912727 969012254 208723813 545045926 12987387 309420854 60494118 360664535 248118840 431772625 79373801 359080636 299505597 577042130 477508613 654514809 511718667 517888997 345320589 606760627 17780378 823482345 408718514 894290019 749950233 877621813 605358337 680363420 673523799 802100269 189312940 381421854 15644951 796591631 567427228 671303504 213979164 864074061 75658440 173219263 88247646 617266974 69936543 130783976 46296498 657800325 466054220 606489200 236299471 362976118 101534723 729054903 6430229 474102528 312211245 979370222 696573397 840596002 359509812 566676271 498402644 644876912 247382286 822224295 134049658 960750473 151380029 205066849 77350026 778536556 647051019 671173965 469393183 559457527 282822743 798098330 140976852 662054831 273638389 400694046 337174419 642123227 206352732 593126376 198877987 678222741 283385404 339938613 149296259 775842998 463470189 709820795 675974899 679814139 216495312 460002848 150179528 416563130 31373595 353918966 306432344 651330387 124776337 732878562 160916002 485080897 246840628 925855137 326708005 443240860 114186438 492242573 109567174 956319865 669317304 919300732 77018700 110229812 20532587 89025246 84168562 826110637 523476433 886058850 226878676 905080048 114563898 138048036 47225474 487871935 436406938 733148202 498691635 605105539 330537645 415251821 282293160 841572554 321328076 629021141 198561545 365463277 135795735 910776227 404765957 912983653 182112915 435373167 225034519 790729756 749439806 790266266 390769766 901946434 897912587 907767721 696556596 864522088 246728335 308873713 25013995 382050119 189207421 539511844 512722319 737294575 536044643 769614879 54931746 503233999 301920440 522746959 289488270 964966472 736531711 772430839 575135327 760728473 371768114 650470520 7837523 811778534 610732658 730639643 198107490 618499975 568292154 827437820 560474387 959855209 356724695 444856456 177251621 252550381 43424612 991231784 947379530 972952024 88343955 791366276 696982675 877350423 272405511 578228760 7841083 698671781 434153089 962017228 779618586 824391747 216930372 353501208 325360566 362488389 89023280 264603332 210764142 713796585 32326542 494081229 124152761 299439812 224929845 754309779 669896424 999508793 234262535 882593642 625230129 729428626 685598771 753482438 261441203 327537013 121592649 904742953 36368687 848468908 620990142 964420697 351463898 860873129 420232953 993410686 781762881 968155977 650765663 989112306 575932511 827851614 570849958 881498427 79763410 416449008 203220414 855283387 19969613 150511501 18186480 515615016 446495694 461575277 110957346 462611809 93202126 331825797 28682011 107836615 57915550 120611209 68746246 112030059 2731782 353269633 82048898 954738680 475863818 697864853 654200154 828729988 362116978 655293824 117145137 522337794 324006423 639719464 210865159 631785138 170866277 258345665 48421748 414203599 316399450 368344436 156028971 526659431 106348546 959782850 551520449 784076352 778310627 888634851 683721233 919674857 308928358 978046843 461111661 745255787 466354694 497381092 242878191 826446178 743532791 985992856 444599559 627529794 372224478 704610561 248345581 674274906 9900151 478086479 311866904 765570982 157197004 923567377 526119643 714008913 452396805 554528012 523926261 944282222 854408416 975084333 855543047 896505544 344352534 640869853 482582659 744422972 100400710 742935787 634138567 917035890 126768473 756762828 674999254 864999792 465384248 748901702 610802784 765320969 635764195 650162489 387249523 390411176 65925302 647551055 446442967 824415540 394364189 870678351 775929654 951212730 183551557 698389050 497855687 635254554 441399335 553360470 217989952 496068879 434187781 979619400 191030419 640991500 438140877 939720394 892754041 949008871 374860532 853317304 415506701 816624375 542521700 773779107 678747131 714500058 147497780 684360092 643583225 923066732 596977508 652773229 609454226 750350130 651499567 789357667 290293650 300366751 225415253 293448071 45357353 809663657 322662187 662032778 284170671 467331219 106014001 643330203 160573264 757446787 558855190 892362757 592306441 949609991 673469097 703159260 638430446 884344220 402573540 869983325 555983568 790819623 557725139 863093851 854191808 971332527 540878594 652001869 382062224 523614280 194807394 443299001 306617721 978757572 67893537 898327819 713427375 740342771 200460550 294143740 134223446 989615524 177078803 368542703 204019939 348527605 104884791 466215507 167867778 714694778 626913868 909987373 673027842 896177014 711562650 877867418 650265068 731930207 54133690 645478626 249426664 662942342 628440032 777243358 149075474 225666287 152757810 539748104 320936966 798402224 129499983 997846224 179190148 963233181 739967176 837387219 747349384 776795842 662726419 849566886 42492699 355923529 88083048 357345499 327576496 962112706 414679107 561147568 326505438 331102082 284054586 996594660 500794317 663239541 240061584 493092249 250777970 811083937 717278548 928498040 631470623 919757416 897084865 998630495 619341461 851555159 70335218 76418871 6928877 307856791 278372776 579547527 1223889 146881707 68224288 290155150 106083401 990494253 504201270 651486118 271607115 344142514 242181435 849119944 265611078 752180578 421659273 743908389 426222485 590433410 275897639 907508445 190280334 551059040 308863553 525830526 458169711 584541638 81949751 892544066 637075019 908490599 571513068 669552053 237195590 645419014 230443564 306893543 158651407 208340734 4833688 232297668 44199501 703638593 602168527 681322716 56207538 866439820 316874049 470985426 368555394 983382472 491775537 670253623 372577441 937463675 459656993 781185433 549313908 561404687 253850605 834688408 157810953 173880368 99150340 169007615 149224975 642752844 17263075 604932631 151026952 494546476 154665857 506673954 37285245 259024943 173545905 536159118 105703472 486161200 342883687 715284746 446611308 595232664 538006638 921478687 446746670 589768970 403654026 735234157 522488306 671561344 139864119 925551164 39285492 535388391 267009980 889854076 553839142 978989137 97007814 894791456 748797412 930100206 422337478 513485570 278598879 874018381 737915104 877537366 363049204 389360868 156645870 442108217 110325621 767758145 716112540 857769530 508584072 930022488 789734399 959317986 491010133 765840259 224805764 372315511 355602979 594871247 587866545 778445106 357032901 840664833 739321771 824400704 365144476 778373655 154176809 196581568 137129513 504161842 154167018 364044621 156350676 871916152 849170907 916387081 537968074 604180053 173016905 826100287 636779931 639330436 239195752 983702990 236960805 389982733 35585326 572286504 475480066 923381440 293219671 776260287 684355032 700137679 554398233 998617178 845715876 894528898 196533775 634411480 329335775 433206643 408428869 631514500 211814383 445129125 425542287 685180176 559047597 939338642 19378962 778297482 675673805 736827212 614435713 815004485 564391339 947311802 825094605 974328815 726635961 943243194 225947131 242939140 207361893 806311766 677228578 852571120 414982420 923784656 343810104 869297402 344777131 668584986 435980775 643120339 462973749 842166085 506746253 769259821 312166970 361472312 136825982 370072888 99895181 667290084 633856421 729699385 530161351 919067909 779658142 853006645 768218224 970728805 880777851 966305010 935764558 952607283 482497762 626457373 84897946 274318350 127253745 989384155 681578296 915320030 173074167 402636162 178322624 737566829 736090634 934561135 587298699 855136325 730532929 963152285 793994719 892457237 386172616 816842079 784666531 831371543 34790941 165720095 115359011 997107830 346545407 555603875 548752733 965318160 414913944 996019203 820642377 992658258 234299226 872639890 745974466 933432324 368209646 750856541 566012217 977131789 366283672 778869230 318197799 740691370 202946357 598075152 358693408 476037667 353684338 445107133 43700848 896737568 162649008 422179009 21761452 350307403 92798894 769281033 759681546 936762755 376358849 542465980 509359644 664001075 36577910 577993102 574745614 897179015 131775812 553347666 321187312 895228778 142677761 784759695 150604272 533772790 277145441 975380588 805485974 972676519 663530933 995194002 112778689 117757180 12494545 316211363 97828052 864034325 541936790 631909957 289442296 806611081 33085285 105242184 67535415 426524294 200627612 218402622 103301323 117309276 89779590 138802151 59719203 692666581 481376013 814449091 278088402 391416490 145367175 864903610 8975170 196024623 132147267 165477613 98120164 734375103 247826047 956913689 465951464 995613035 412451137 616210418 315750140 501924724 257422863 493807297 431621594 980362451 795512678 823827904 369257308 743755811 740017595 934691188 456056079 901350146 457401084 756230237 315039824 685278120 119884469 474420553 104758483 577326278 364722751 700244212 541409723 885504555 490826741 833428819 679910733 746121161 482164880 964090384 66841012 957926753 856289739 915983847 851325821 897727686 24976642 473006968 419705145 709179334 639353949 844051699 331967044 786696329 635724815 749602398 528585145 744408716 672349917 827991698 67932879 767673073 339313573 959803450 937744191 981561132 705343958 913976610 567732142 625150982 593189900 832161804 734240885 889673706 14758268 656531911 117806339 866062393 380819845 763096306 113842254 468499076 96988077 998649682 97197714 400546424 293752673 520378312 283334247 644565216 250478643 653781453 599079870 722827455 528774909 951532148 42574724 213689451 173096618 866691481 640998036 714277038 276635885 869831066 382603299 879575979 686709867 828266220 794100655 959216747 150319763 512450489 231612360 294357446 254585103 775289322 731757355 946527061 445689033 934875512 84657215 169562025 139519001 629357751 622647274 853008904 457647286 912498694 186726363 504888987 372467790 553386535 309915344 946103061 910603324 964846224 110723950 361378698 138455231 295081029 156852218 387409438 226289705 565364345 138484527 546095076 520281686 797367693 653438829 970030626 546416019 752171481 686306952 823280448 623878507 730583127 204039039 393440900 350455754 412485207 387311564 396647536 371765079 567207109 542545009 633346793 258447167 547252109 118048302 261878513 189778802 651648957 95353641 386160364 12210610 448203021 175654552 573112402 41533142 881156526 197911679 373590688 101026465 772083995 359270254 360008753 358771530 756451990 123032156 210131505 177320659 328783812 97009038 986779103 585908483 968876202 371610916 557693988 285402160 770923254 468217916 860304225 149639343 622862182 421690328 504682571 15017262 437407516 345827470 387420222 262668850 608486080 523970359 991349544 142507261 509844260 251527506 541577781 311069422 565843304 205588499 947219433 839506725 920533429 14604437 16760206 4440025 743033952 349179404 748152867 641473425 689999440 532296125 583880566 383927455 986336633 465829513 715662058 151078883 800247879 767299789 819098082 35224397 557148047 405352521 676096557 237534467 720729905 397378705 534238861 109903618 953063741 847315201 966392872 568412650 839106790 483587981 847097767 613337970 681425462 158471135 778998621 728870761 735165714 9830308 126981284 67837047 936654468 842335731 907736920 879251543 947813875 698522456 950964007 366019813 582845478 234577461 709346185 6481092 960823699 614694083 792767531 605698979 941841434 553806261 703251746 612436163 910776655 148992229 720379440 546382164 659338145 279872326 653606580 430804867 952515322 643012756 910124103 270567807 533440925 155651838 633715557 246387596 274783289 157688654 266420685 96083882 693632406 499475049 777045906 434520688 596406506 236587248 892858517 181516726 235368912 129714864 631811694 1410707 804997472 644827175 974750487 270168231 524558603 417769528 852635318 117965982 920279247 658550614 714165615 633306443 971553687 339228286 742127758 406487156 957008552 740489485 816015973 469035555 548749002 267839647 675060641 317874285 914110883 91754347 360511154 130916833 478010428 444543852 628755228 365715322 780953504 453880046 816661259 782017830 925534092 789530569 969413467 122923929 187225633 86903821 434989401 260819019 439043556 60649184 626578392 40553918 925726643 593177256 666945165 3358029 738926211 31020623 450337372 15408855 197920495 160051223 700561741 585477625 646003611 385384636 786172341 18440937 87352897 33595143 425728542 399168396 446851000 343940365 700486103 602032076 746785036 408352791 758971327 101942898 929917062 166446495 777894712 53962203 646525875 552065128 940411655 128579873 822949228 148006590 153343978 84697555 306962441 91657022 396851641 338127078 646221306 78067585 772088875 397317125 794761493 294928165 539744729 126215665 873080152 550223066 611987980 188198905 263747815 229201594 896041620 771897754 956544736 376352420 610478536 476799589 620835342 70583522 752782914 309595343 531995322 424342268 608269837 32750217 116217192 40039232 600229941 365382459 372442856 276304433 539579597 17659511 890981682 653165898 900676921 161650996 810613086 700059745 749698839 517039575 903352754 325108952 856566331 402249284 900161111 440986137 522727457 25163064 501484847 154456775 840620836 629440780 755812009 133129697 703238172 501712428 981395060 895449389 941609755 521886114 808541959 89647818 195700474 120955283 528294047 511828700 637715116 137513321 289285156 203032999 861140586 543445919 988628535 260953955 562883147 413963922 469643181 256057127 267103315 264609349 763656873 185897262 534663780 204350435 942766935 751758028 970170880 314424157 726911419 123937757 156890562 20072876 796779478 239917938 242925156 168383304 488326233 338406022 541072151 342837374 883671036 550885383 859506723 828984596 995450317 942510643 962633436 555420597 871966920 11096594 63366563 22325248 120300881 30859205 663209116 196552513 888382508 74098908 76086450 44365513 411379180 4007932 241272329 201696393 505137836 471842252 508171560 306737988 779614990 722888627 940057618 2580927 821805086 49722554 928677306 679902432 807191554 441379007 603277804 404826591 834399337 378472453 427860840 170367513 992308251 119424270 422202762 39759683 403994633 5490158 946628925 936615155 967853091 63540896 356261086 101639480 381958784 205039076 727366653 477753891 579941664 84200514 889843418 373938340 448723401 113932695 359987692 81663151 613524482 168157994 358797572 101625525 945898729 460645999 587082062 291387564 458984310 185836128 475433264 92773287 152216417 12312711 333819975 223830646 579135598 268098630 955225321 478757079 840224326 688967889 866667850 555259812 753915298 414351444 850307767 395260179 657079056 367813422 664158866 18608363 817469257 757522361 947128522 378815670 581787991 407369997 592068333 140608055 993506744 337381777 577427585 548115844 959286643 34728232 134798613 62096125 673004938 550369622 622421427 17210516 714521056 296721269 306132800 53721183 772265453 574851145 879255561 161175961 907303129 449364902 983242760 29452082 578740402 183119813 190254949 49814518 251122605 183011362 857641410 683748584 859368061 140598096 182309703 51039839 403538104 181143258 983184228 491083077 749136903 196380862 451137063 151852124 550743717 99229504 823180080 249193366 312628980 72495625 434907810 33282441 846164093 555917332 591756127 302876336 954424537 544312793 667578922 310788298 445042107 176719903 216991087 14454918 485039205 142836133 367874407 115844222 313371328 277037605 509956786 183448914 552532971 343128176 779870525 288642043 596075122 568514586 574245170 144683014 323631802 287899545 810165488 313652866 792450825 235201734 393229521 255338013 687017685 416271894 701889445 332672803 974995339 121816121 358566621 304674382 488149266 187720375 661021720 646679698 685849074 198499422 725888996 606207837 649216249 129967020 352135629 281774226 469191151 112585454 567450230 66148437 969693245 951665318 997422855 937074186 965026510 517888560 843149521 254551354 725976134 199880425 684286950 314827055 713142860 653873969 800236362 76574896 649771025 183923382 988119602 930073830 931241448 512025732 772940838 426620729 992497751 75240384 171112789 36117725 308793228 250108651 905471368 151849402 325962173 312442352 722317009 257372352 814484081 282897155 947269958 890302062 981412785 742393323 798078176 757173215 807246934 338705974 818747592 437461633 844702281 456774550 673937102 316364007 447267260 275325171 662086691 480597471 999996885 706308498 748472593 174784091 799224918 650970278 771003082 714898493 936951568 384385749 900151799 278179799 910786233 394264656 960358740 272568210 512737780 469293502 530714060 152620588 729131341 444123890 645068587 506056322 885660342 412251745 645804344 166518042 947267646 923270553 971927070 71921216 622296158 178562566 698142547 652592537 983350283 769125851 903429764 880634836 997352128 519824174 713848818 270143524 692587822 492327741 988265395 824016456 885080154 424205100 779162065 280731572 365925606 210337424 371822302 39749480 841223099 396156266 486594483 353322275 783096253 216928447 289300064 260269825 944464879 459819579 585384522 273913385 692081681 69229582 651872158 439527142 983569563 892875161 951942570 354577172 463190504 391366772 813260820 530665812 809061172 624822753 666437527 557352672 913173869 16033448 980080390 562886867 830907582 99415149 967759237 426415624 801268363 648223788 765288806 744982009 868830525 209912048 986864850 243020218 791064763 727486430 941216748 60196270 123307353 20466884 57452094 10122464 517877969 203386540 941403386 563310634 751387501 174308311 308913901 119089032 592274207 354602597 655343585 272988431 945078669 116269773 482028289 17967201 171152585 168568588 788821696 487680543 859599539 59719642 441273782 264209980 627349750 512004445 983765546 714302930 877963873 17543649 391756140 244528528 380466352 89949278 309672347 54303637 980275826 834665523 850211539 30596104 370278198 55990514 475623641 264503183 907202967 854776371 888045570 199895905 582113883 232439496 460692359 352546106 518374128 75392917 230856659 3355516 803429540 369916074 721204489 167711763 552411349 145843501 464361463 111987803 224999771 37255536 437039014 421882047 782739542 111409934 783861488 724587676 942515877 749224737 989225834 825052022 925524318 106493642 486067589 170564729 794866977 465612550 599751971 388620573 605239652 585526110 828752124 35198981 71224868 53257507 265249703 48037640 351496528 27443098 113336579 5756570 113347647 93797873 356952019 278468258 347621732 153815366 177638874 162703783 507651260 305536128 983332795 579262154 771817568 324230668 576269182 120000704 611137251 404133897 639178378 203814883 905710345 484284125 760101681 641177893 827081809 203979067 486342917 9121976 357941021 180673433 614168224 367294859 985366444 326132391 370708200 113118045 992198167 958002854 995828213 29067953 996714346 842539585 850912641 101182785 874232180 184736835 718772139 59507845 355515150 187340098 791610051 411234056 677728992 239389517 570817523 280424956 690745218 156536684 817630959 665442557 891000826 273826503 639784113 254682802 344032924 100965354 107722997 43949709 294999413 26560718 752841369 25688847 332404915 216056951 580222436 541208892 947296300 28339678 131988383 108548579 408423094 308773753 333980030 36546231 629242581 102242570 408529110 391769977 949374887 93157283 332723114 8226194 692682480 517789133 838021132 264126900 615122136 206663739 597259963 212906775 471989175 139187256 972292544 930778181 960463914 868061016 921935825 68551326 303714368 225639734 727742031 271270687 378793012 354624552 992574022 800709423 895062374 357278282 464415324 289939070 634467755 62163369 875849911 147590005 715716167 26035574 774231721 517760793 824833230 92950459 583609581 517124793 679313395 245216627 571324479 69252928 641034243 536641678 695703074 399578390 416030943 211539099 753051086 624243646 982781620 620410241 749857011 556244836 969658325 638477953 976219207 832807469 861767828 619103879 706960332 514969076 771028197 699324655 991844757 677520560 695807504 507103186 871248381 742434374 894177552 527122111 964246333 807653579 888843392 777266262 953312298 902064824 938483054 385692043 667432347 221719315 715323081 162721164 272513382 30067208 484745691 34291683 815291858 653929692 716722415 343688316 371221350 78188771 781690615 562840733 690594050 682453560 993519713 2424651 650072000 362138424 554387877 195213246 470183706 125079546 828067262 39872228 744876714 513453226 564561468 283532967 888837218 359911217 646901069 640273237 907490221 715421210 987720231 598700580 972903109 180559559 399772866 200147581 313363636 165584054 552711520 56067130 687163394 421234482 652589068 405035033 953426938 215311299 821838336 757342578 813156043 485939697 876533922 416112459 573351407 429561297 770170696 165727267 327772615 233974548 864151571 366700174 771303281 568729140 892258195 313367406 808625408 348079504 534803861 164304907 420087309 322350227 829415480 55824084 136743802 40425713 482529625 105551813 364661811 79222309 841735796 257902576 350772268 152816811 332999248 111800894 860843104 87445330 523919110 64793821 144027746 108950372 377689308 20818486 911637344 549364833 711454702 644063453 990291016 897120150 995853431 33701427 795772561 87479424 259684108 216423123 689105010 670576813 971946377 327720604 581459728 76149076 848733626 649602239 999930669 585966452 815041276 18963161 353810909 109932536 410567621 46200632 118636287 16483094 950500662 950204321 951202250 512554170 665156544 645947162 927882446 381253704 881991271 530717653 787918206 220799147 576623164 536071629 921302837 853962954 959227520 627075056 779788672 192401994 415642212 208638601 393080702 118509063 424652974 383003597 574708154 390604209 841277495 63749625 374013257 349781523 792953677 520178397 743468321 383056298 551659843 31474908 184040264 148008083 751707649 43461366 805684316 264894400 864307261 172250626 583569047 311967790 923854877 751364304 783918470 230679471 267280181 181603948 596643089 439954437 876254703 631508056 844652903 644401468 644703873 20529409 982502966 833459235 945505767 274775846 460308865 125366108 659665876 340849510 776190582 662351054 737203435 255207813 784273283 769984409 830000549 373028061 872098476 666595626 718116939 401247893 598941672 302448601 473286305 392083257 958914479 227110171 969130897 752716239 864004956 397426323 558955440 207914807 512132556 457185992 638752589 183851005 979741156 408067974 698983968 329672325 972780610 141656374 281638531 193796169 501816539 230454724 689365974 541036243 696785290 671615198 984361201 305350062 449390743 325563354 388987404 284459468 395488193 71531149 98591052 46700195 49181579 11374018 742268106 703255955 946476565 339559093 343207075 195782562 434364329 268672700 553013099 262314006 935367563 668232487 992139686 631721454 971666302 302357458 468259222 424762000 746597730 122506304 958228131 852959961 928830316 920272520 989418533 393655434 890478490 442682917 876446468 550994984 766997873 489028582 510025140 18845461 58939986 28021176 902838489 180857454 645835374 612587497 876611715 633329075 755746480 725871682 955131386 383381209 662841218 105051474 707110236 17883372 363041921 253677478 831163219 614487332 694575776 540952250 903152179 733690002 968707757 260459283 283188410 277411603 796119601 499691234 766156188 307654624 995702754 525465838 669691047 81633303 941920982 686202752 744421557 234436107 244448189 122467769 224666674 171720850 221803972 218845207 296825547 203481226 554358695 266438464 333647314 198936269 518325135 3474693 465290399 66367141 95398181 34140498 609693802 144580233 796617751 793624751 812070033 655312889 696012622 422258597 800352038 718442726 833265037 586367405 942986608 610955230 916855849 588334038 638726846 180399427 356606245 315896802 542542611 132678875 864330687 208598633 450940589 46014385 806874967 281646244 348535751 230111472 652426900 550869857 677323813 498070198 840578426 816086739 982429521 125920831 556421284 95738575 720373265 537791011 872438720 8005525 834566186 413062729 730224723 478112908 902650987 159714357 384874827 69086538 837943872 404688913 840224932 508693307 905500862 322570725 965932540 509062680 848344768 263908904 562348789 115240731 236193678 142123647 485780137 44735194 263408304 156002945 251678354 240003928 569143294 435243316 980791816 207460944 323611660 113183179 926210858 297024634 876931640 276023423 770211296 547942689 596198619 304243164 607828536 35767820 398850798 59150914 581504219 522262670 549522733 428614251 882429268 352894323 441803622 286833804 437356054 409989639 679924448 450857088 711719043 28891002 162812443 20885947 279712920 34379304 733907092 440440530 675035472 430979693 755579017 377905827 886134557 691423954 746440257 371222930 572358074 314207891 573514583 418058438 708157713 668952315 889288389 515849707 884685491 669143854 819025673 289181206 300591994 98473496 950199380 399275130 612494075 84471900 384453642 122948167 331063120 156695817 453220601 169094924 711979592 512908799 534651931 309111278 349572133 95755503 311680875 227354349 769819449 59659030 726993336 154244153 779203673 1682007 848761830 667905465 877481913 870345802 983576152 429146759 532949550 386093122 739744511 412187843 886018083 175903955 841765351 353411451 519691997 103095713 760352502 385405960 640902436 65259423 363708344 100734850 933019204 899934210 938732577 58627762 774387537 415005731 979090915 387246468 844402937 341343645 462140287 206778434 968196363 308042255 309466563 34128582 408061947 185976098 366757157 127929979 794405379 192588769 486646112 266602210 842604098 97920425 102372998 75762943 802464672 522139805 651406727 169022567 666336159 148018257 172367861 111155745 453614902 287110749 377862972 82590634 786185026 294981498 470388446 203001819 430755956 423820797 731812666 625031608 899189319 815657177 876505214 648624571 857700942 165691092 932175398 253622260 567244743 345354263 897899562 122400321 490399428 45563005 954187943 494697888 688749296 390789647 663786155 409034191 585612303 464370690 583459485 419266074 772208036 669479574 678664498 77711771 973317045 577541986 709547010 630380025 815934199 668643517 882037219 276323813 618214566 73564943 151700861 128077054 230259493 130856011 307999141 47804432 208722158 98453925 718857183 374307723 552269519 465673958 917775262 324411593 668544851 179437733 517134566 131310210 776021499 316240955 415771424 403294923 969997430 926731730 985815319 628814195 711783978 36302285 327366043 49467208 627672113 200686375 252921773 26998288 174909234 58513330 624199810 551153041 658464142 560032727 785107909 427506416 839687434 514853469 790736260 747995247 905455343 724716163 834905771 669098181 961749110 762381542 943258751 648987616 829270109 723018496 988521143 523200004 650372094 289145851 926950330 313581875 542948564 429981482 695222474 532228588 946641011 27002068 580542466 556410290 771219393 285672688 567967280 75732462 852019302 809773334 943610671 771608274 782526108 72914636 403082012 300769715 528279642 295510008 431092072 294094154 488662150 340682895 566526179 554312304 584387989 4977236 329793124 161093179 701239384 258050716 476962848 2638136 777795535 438783039 660637916 422457937 836198568 111975901 711318526 137310633 671443583 265359260 967430470 636288444 686523347 128417142 316306491 258572101 355062355 283066091 452828814 18726910 823663507 630469481 970218653 928080886 978714038 551892660 889146574 395830643 407815582 157920196 244699455 31501500 131751972 58058201 423449671 311084209 599285139 500457291 909772763 331113724 387966346 98233605 644082893 281250348 903888604 48614782 934265350 124274962 345069119 162299541 596529511 351318032 888858320 728920080 880065999 615580144 708534459 506421658 514131346 110349375 710877276 98506189 294980865 119501539 182837552 172405055 448182461 132734709 601114996 551705490 565272888 470512644 973632341 844973374 921794359 248493598 305708791 92031860 746732397 150041965 373859874 139524483 170809073 19343250 522326359 27319318 933302727 312450608 424720652 142941641 942154590 626025899 787051691 208903551 865304453 129206023 786115168 745577165 882865980 872915903 977137816 904859393 982341459 336737590 741130534 177429423 332670017 205493633 684195248 437351874 492393646 426658821 641248673 312293336 566517474 168034331 838304176 398560225 424880598 134564304 914600154 906885717 949617634 560750377 880534095 344933264 910475063 176563318 663230126 2343414 211182228 143519598 777478042 397046811 654082330 524714855 723275861 37327079 719908793 207878422 857739388 379457274 456276713 31763718 829932696 99439628 701914463 187716246 532905061 246101742 971847525 379158 181348978 25880252 401381572 217887393 324850728 105000768 274728148 14283933 566713956 26378939 822553863 248635037 922508001 540235688 863923418 195624403 442344855 364837118 411411714 224521947 519498645 33914132 232171258 206446356 811146460 247103024 747675890 138508385 534007639 255996952 534684943 167198099 700912531 566551817 574400483 528836498 637546448 48883659 157548462 103974197 880578642 352867018 681280414 233531313 353391140 34844694 219201611 57551189 837555058 488031762 907269478 354909645 461157600 138252150 907212735 495067182 873011477 700630281 717286208 441932384 665888596 392502220 883309582 882879916 960354723 356239512 422416947 418620772 421640268 21844175 49553252 27771570 256961470 91500903 383591287 141341125 626864121 286697730 372574892 351035446 500122561 416073262 521092007 191784771 497306741 236441053 309733633 93420812 560568894 370972471 760604664 25399015 857695521 539891028 847613934 197078940 897202997 367865468 892182116 786934002 973107115 7638552 835023344 367385238 906908573 872109327 907276844 229481905 765345118 210402649 370350121 366529338 511659149 410884191 895743380 222611470 796558374 594055444 988095563 771686662 821421997 354257008 784784558 52988558 477175841 190301413 263092092 188171311 469261586 48728190 229925551 78779426 86458451 15210225 881140622 274093977 365808862 335231055 659355058 341367051 396690671 273157363 490069175 358920825 800899400 651621645 936060987 526281162 592671935 4040723 735560822 632460840 657624626 504826853 850358492 399332681 903884638 240944715 749551368 345184548 496298896 156640789 721089585 125313392 416646010 409072099 640496212 40609384 276918264 38891564 594048486 41833280 554656434 533815898 980739011 325872449 326866739 132873777 383432225 335881389 838973638 509542809 959084563 600637645 749654294 737926371 818896073 67871578 299550783 232693708 791778505 620634450 775576967 268012219 316862319 35401905 815155006 564031724 640101075 532375704 556850854 320982041 418197340 102639008 147959946 21056998 758886966 126151808 732550107 650646454 676571894 109152170 715439321 251326578 958329246 450952394 605179150 17002576 274590352 13552431 81951142 77252221 804931374 298834652 616535498 278523659 297006882 2346008 526019497 419215622 559690569 172769526 940909178 486824559 929342250 64658674 388052905 230762901 910079376 799803501 905015217 304201846 642753019 368961435 851980482 147102903 176543408 144025633 324608318 3526107 80112021 18487742 950567961 912183720 973187458 323332416 769996678 423695718 602758647 136675123 375592377 343163734 464798556 202454387 604020394 601044969 952937632 860911537 932990071 64005989 757010480 230181529 533851096 237210430 473039043 253153794 255173803 139523089 295152183 133876260 499420449 356253289 761130899 386482034 918101608 216305513 309555644 129501348 389640184 110397186 798004476 589811515 982597209 182824796 615667836 592859741 845669214 276219334 889531044 571418132 834781081 784417712 855370738 515066496 814553468 778749179 821820366 707216211 923017148 168250400 630635961 367425414 659646852 402803095 430335924 177470079 959489311 671120321 721174693 474508134 727006811 567309438 731771702 522601091 589619822 552662395 797089891 53506327 845555650 377477930 552997043 124378959 866723486 761784443 984174478 22031764 955443617 471245144 603873683 6779363 743157446 439932178 747294414 406814028 679635652 626057562 676227474 454494981 769296171 607700378 904058093 901431443 926781715 718016856 921570167 126836655 229993085 63299383 980700573 826689012 939741292 674030526 913931153 708726145 944055551 236684222 438907788 103230520 464505316 314340084 813024926 209362553 360042752 318603904 955198881 862060514 985787582 477330923 801979504 440192310 880613248 814456442 903838712 563049187 669352061 25919502 389121033 182907887 655078545 570063863 845126505 277685217 317335177 62578500 202193861 85779484 918583923 394758522 795003064 356487685 387250385 270415235 363997461 232510161 861450672 166203823 651611295 346913569 355305065 11489844 241171912 212496412 547663582 383021417 697485797 401278718 975079315 368279599 904972783 110969527 394583775 257989233 349137999 133423283 872055260 402196299 950092644 81597285 387827984 315595335 769016764 76648601 222755128 180334573 847424106 99169594 993669738 886994067 995185051 507677437 620687071 96202182 115897004 49590821 435488960 308775818 861948182 695920959 990377767 981521921 985237803 955534960 960304628 243560704 802490234 13410165 942440399 905320784 967361968 723141211 972066926 283507092 600363902 253075179 412619519 290039610 538836650 405157858 707657871 254763423 879114665 686664706 811822247 272983562 489475573 191347734 309704257 75026573 109500770 85624498 923302981 342162283 912673183 720655572 978652459 242644207 955227119 628642332 763063240 396601621 527324745 467446557 525327890 452600273 823161968 452299675 522489438 9159692 691593920 248280068 373894992 218868618 726589837 403898993 827582688 338144076 893045468 885550901 988802982 905091392 977320755 739291791 897773276 269939156 316835090 155053929 746187175 126696342 226066992 47810801 241363955 68053165 165369784 161877965 572524344 534558033 856684359 284138907 947591786 176590190 726871359 239046976 762998807 179880506 650434535 207103608 378292813 139372365 785880901 778022187 827885206 644755434 906274514 268315658 587244621 340649245 679028177 86085065 660085345 62585420 480713588 262426692 494429378 439782068 479025738 337889824 386104789 12762713 188042838 153544204 281031105 94537127 665338899 340477945 784890720 606876234 763786639 416343438 799371335 171924056 662354899 126108820 496625091 304378806 787248480 749405654 982294393 3206064 363379176 168145223 179540832 98485978 733523155 629610158 686669485 214948306 324202285 280833124 689990318 97298424 690991597 594182943 819493320 690838617 911714557 716007438 971649876 137705274 740872914 399583702 945119707 45922536 154936850 147148854 809364254 120930696 249144545 171680350 536067012 421458365 548451934 138879067 696205201 518074321 529875965 106679569 238730841 75736368 319409940 115047183 670483475 64254952 259354224 177427658 798445212 765759193 977025197 322872035 421826873 65327597 451804034 218372197 873293383 138994716 560418641 261002623 742190619 480481170 560837133 132174189 527998571 246952791 901347734 691928355 812046274 449434352 463981071 58272898 746054088 642997040 734922133 467060401 738764178 469162007 660735483 629127426 652611747 175595390 524439561 264837424 488821762 86005787 969590739 573545198 749602568 727055513 937854792 5633569 105497319 103328803 193207809 82495373 158259829 102251509 667956356 319358829 717615439 232096439 675160547 154061629 819433304 511758742 901756780 294302538 805625207 595459609 873065030 714851686 834931283 625073755 710476141 241534921 438510228 117777913 957739033 607001758 976001660 194264753 241555916 135924839 229554844 84800704 134757760 41911693 811573760 126031100 947808693 628305154 873871595 822459442 900988287 628207794 719378845 427619175 456310883 429974029 498834246 497047477 765272469 481728855 617692797 286490899 344419555 131426203 216004441 205453326 990993636 660707895 784250741 419142018 499042653 127517578 432056167 261653460 434017052 338682492 833959695 814191156 853463607 153929059 399088535 176779687 769293603 660291603 984064200 625712087 705240528 462326203 861794318 604326772 812752984 51874048 507480039 128847985 147583713 130996702 735095444 373842009 633169762 190859911 259467631 39122544 690165531 29866754 804842743 690785509 708180322 403344573 602029152 352244954 756921514 639768420 656055056 434786422 694406639 507430288 613249010 597406345 685367693 134290396 827702232 594045904 854798648 455800815 542148700 507470531 546389936 245196665 498832690 374537714 939061826 601651714 980800391 238368979 817238956 80740724 971323425 527834892 748411925 190644409 556990640 101267005 960952045 378066996 820378061 323389777 442530891 279242486 525953768 345782199 686415065 519092043 896888320 700664246 940409110 695706088 979541213 222813164 365566535 174419066 261126038 236707989 308420044 290124971 912687126 797054282 882100739 852820924 988894121 877334385 918401866 732359201 837238185 603995878 605900059 569021108 674244052 623963059 659559090 491306908 602735499 558737422 820328360 87819050 379707045 170915320 505020577 370677330 405002393 214583536 971170800 708234189 734766107 307161375 666707312 55616331 828927238 525085310 697095991 64020872 634207390 11847014 629573775 624452813 656665027 110803802 385542257 370883175 516706774 332571367 973051566 869072831 898507088 883478237 999950646 729514367 973090709 671767042 883406310 159683798 230659123 152547019 691266504 201301759 310481508 82904369 383683275 380092000 817906514 493146359 810672306 432435012 619674532 527359621 561316647 181370883 201613650 157547806 448793220 334352990 716925887 532434600 980419479 308611950 904541005 747750715 748314029 496858129 537165407 464444448 906008399 549228331 905506249 727086814 962498555 191346181 223300060 41398585 878012271 595203265 958372449 195899423 430104243 294039372 575729374 463900798 738885240 190889827 446394232 330482461 755190344 409259553 632988537 368974453 923669505 784173565 817332727 583032316 921815206 477213015 960842447 875583285 893038140 27233351 347007696 163133461 203221942 145860905 196177227 27435621 158710303 61598152 273113153 197039923 310465359 42457196 68476762 10887799 310090062 173866432 589442693 220597062 875613649 457288564 962500614 671368249 692057107 211093153 984238318 385523242 779090639 709963089 906657467 879464702 935923091 6153580 753704245 59752056 899198480 115283144 288739850 245796158 949991987 3271611 78930775 50999408 501034128 28911969 694753401 417481589 598702810 130762916 252534432 35890582 107021952 29475686 760949897 235418547 682697366 228177045 907474078 292822624 429369781 94797387 299308897 157771265 966725402 610820554 642482747 304294508 683738482 650456073 816385478 329415273 854869600 824414127 839283214 599108098 784992205 766014524 788417383 690046554 730173086 204116636 439314500 272362736 831948448 438837699 709496595 48993382 923511856 855635369 978964595 11948939 156978799 135828958 789480738 457335987 904266126 135066678 809576476 146279951 278834829 58810407 515655713 404485036 479246190 199479715 969273658 303457558 648684790 77255873 521481929 150217050 155612549 95324615 246963370 153151835 902284143 358236698 778504675 338238153 417694115 183853701 288047269 90189085 249711056 4605685 298881779 140025112 894174174 861775673 895627147 589947820 875069449 471558414 616687970 199963410 254346631 25635644 906753702 615651330 618878689 365644987 451226150 365523109 787288868 543178049 946197720 777569991 781426818 1101499 641239853 434123511 551287332 36802159 754806852 607353874 815703521 532288199 762356260 138197340 143525905 13141018 36086498 25704834 390349343 275289592 721356415 267557759 675918682 404675301 565014335 490423087 709900120 321384377 681022539 13375616 814049834 369014597 699356621 395018264 797111577 43075358 738952040 19292900 88342227 5688823 417947957 288806003 320008930 229388937 848086271 301589722 661426119 560260054 969659946 373841796 445762129 18508851 915049120 602624025 673329734 256714461 551909581 191117286 281060229 197967988 947431470 255768048 369018226 348582894 494236551 236343114 442938432 383413961 505693924 20436805 383733497 343721463 454344048 315987988 954967706 775834735 869529215 285584206 470180245 227522610 478278044 172569066 232305360 203048446 430193178 277138003 945708661 931177463 984363925 325601816 934260367 59850594 915060839 36795024 154714827 107059503 481881809 85242344 457911251 284001689 548021286 320718030 882846810 676458186 915773170 609989917 717528032 574483228 830865752 646680366 819370148 93305269 576588493 346746649 912759269 170687399 907752435 836860079 944806754 764327791 853003136 714448376 967383720 813081642 973642027 276164824 417855199 401305840 704468354 384128180 636024058 35295351 422756260 264360661 465239210 234959675 657299556 133288889 217366118 78699977 958366568 229461431 576731785 248732286 432682033 82992157 515468891 15958074 186140953 159759294 249231481 239010285 476286218 456371676 726802966 84928396 166590581 24275557 725166290 539679956 759145283 163312770 846662452 335807964 838403383 375726187 779788093 365254214 465679243 9133423 253277037 175827536 839754066 44536035 910050925 765949984 824521846 813350741 864904876 386737416 895769369 722321517 852573047 349963549 938350581 90497939 127691851 15891406 930832198 580515142 710805392 486904789 764634946 348646038 374332626 300496896 845636605 734483622 741672366 492619325 631506355 254523331 740863072 99267395 845525459 758313225 777832710 238623402 477567465 44101750 789216532 408539888 504713088 161190029 882046466 455426159 674881911 445515642 957006306 464166841 725036027 104984637 663527180 209273343 390942134 47692340 992598397 622725910 850737054 613787657 885960366 858433380 894023544 336650199 500009823 326485629 869661865 208960890 726622594 496870026 964123114 956904667 985471250 141018761 638485964 607731913 793175899 772775885 930043938 41142875 814587364 385867889 775333919 525924373 543609841 540888577 900548420 667588733 762877875 152853780 950552180 91254385 963473748 664228237 721865422 594938960 876767416 610369945 841145321 777676489 902503372 312815195 942265289 870245470 919695699 507417274 700913493 199404883 940618974 240120263 490024671 316384478 799216656 57738589 874209653 778301536 785482037 234054303 465608385 426307889 772711814 360947683 474046398 84726299 467068862 85183139 314253480 298713589 859247363 227749490 347698419 283334524 476915009 208210272 617102537 430312577 884349075 116945484 715944371 338001824 842280354 621941999 951537241 160236054 168323868 117530577 932028127 151178954 846417743 290069066 508774911 69324476 737156914 648315825 886012670 574725489 616215198 484657379 733693566 509023421 800970318 149587748 164758911 60328875 245790816 115265985 549136958 382266506 579045270 196971596 261943972 168961699 427521459 227926476 893291090 245485623 395577304 112849381 672137869 283746896 450721606 156896076 454585497 17976179 81920767 70071046 116524763 106774986 834076717 684360984 744461806 324688417 547214419 222174604 949962729 619323888 790159551 314001388 897149393 691017562 982056767 311888319 959169234 38851865 849717915 281867142 553158007 480873186 488093520 60439726 661687056 406598675 495693800 71110000 435982947 168796124 646226428 510257298 852560359 244969290 918222575 658104663 715486176 291060752 540925225 265257001 536691570 103421073 273850097 68753360 679931246 191537485 267117234 185900589 736675103 560946345 987732091 976442422 982400954 864388210 902263705 352988962 410961840 211885217 300091923 248779499 518968540 18404125 949832076 768715689 913941529 356671408 559054901 403212112 537230146 327998079 583554476 572475602 581295471 262583155 452083950 171288807 394159701 67165829 528376664 276811489 290407575 264368166 879417819 131718860 261962308 184556298 788998204 765419303 904618002 743234161 920255617 58365190 735044722 543563916 782717778 708194891 810526347 723673089 818166345 285354191 445182729 275153081 818321860 366453917 444361077 263315394 679873188 407304297 953396506 191674765 407012921 168551424 472880617 59529302 120747805 58863285 647409317 62102886 173595445 121363545 781466594 712416238 810106434 110633803 553476620 328077282 349005227 48217640 552576880 290418272 520780901 106222240 947157918 411462532 864694953 539140375 803652579 162702207 393625160 242685605 657301815 154578146 802320414 95349902 517722330 430963671 466916071 423094860 951066467 623224009 670390943 509120581 850420970 308206181 774505053 450576217 499264698 112294718 724359556 256677266 887870549 446081356 522849562 355453287 572947756 402473660 611271878 26119042 776023444 79030956 542432629 382439165 520759303 485549282 808303920 234588004 418338167 304242252 723524564 666244967 896905067 691061104 762710978 463151075 802979256 530296039 830542966 150079286 585182019 410358430 482789823 48627435 993231527 830179957 880622497 571861154 775943072 184962788 884653320 281704890 655042473 201522290 566008500 423247927 443130162 137095578 933557649 689528352 808780051 29663305 419685456 184224496 367373166 277932502 745551591 439865583 921033364 148242411 870489188 288309575 615657328 506684501 896999542 394298847 667704417 133836714 661807314 193799336 994057574 65692530 976054409 67745816 154530149 109238338 620241500 210229742 939370398 217021465 430146406 335349675 571938558 483952734 824445628 504015089 800194375 305291296 577082494 128300015 175074757 119462027 202122940 178476691 316789259 235133865 579428641 306183197 807052790 394765623 485652133 275245446 454600375 191076714 392538642 112557416 863618203 157902437 513380157 224462852 764046566 680107704 960202568 675202112 786801855 466638806 754110579 558644837 889005431 157867104 379441298 46145005 523099531 232398214 802460585 479283745 709511706 462109405 494547823 300051526 702344480 486659701 905722951 37162463 188914163 113757733 439447119 431211837 799927562 454980978 943096701 304015372 728435992 210381016 732595200 67305623 152601533 148915765 409665779 42965096 888852336 790482289 892777920 339607652 936460895 676917400 766244397 985723 645012046 532768366 735169435 103532301 366495560 262826229 578942044 448442444 785708968 501953906 784332280 418933504 751587762 568785357 746920629 343383455 501390857 77476004 136489706 118904431 242684452 238705519 377255929 37994178 824918011 802938705 807427959 750504933 812062425 223234472 884527284 739686538 810294399 119762617 175467484 89024236 110383639 44890246 383394023 181376762 676086935 528006475 888361459 727497094 875314183 9466932 46345200 5599011 492850582 204447681 351251333 87173716 993128018 87814352 468818360 308000136 535905855 399477204 863914068 279887878 642876333 444998477 839342483 657159903 668554961 364666061 809797147 785779649 963485806 212184694 878383278 289217723 603248565 18655842 827801411 769897817 952631779 866759831 947966047 699915003 873005919 815668364 949361645 908998423 950167635 540416252 573352524 572407362 730402286 697059895 706384899 330356828 873641316 141279959 177430348 105800370 713268589 243992618 846226901 269667214 976825168 138481814 785593777 309762526 446090129 966695 807871299 298388321 633047762 616908458 790455966 531174581 597164686 215316282 653959802 437406160 575163479 245170112 980166973 411925942 862437350 559143991 912979176 807913801 972321726 155808334 990335498 327634148 948834490 548701459 999189104 266684518 360291549 289921004 577953051 198377928 768179495 58029351 195286489 108844447 483887112 165643891 864986391 647595740 865181341 294778179 805688316 634900354 820590204 325800544 534733726 155121368 859572551 497113342 849252930 60164134 777808826 29488098 388695780 286764686 617873165 449002578 573261191 447869891 579000572 121207253 778554861 423424757 522338441 427232957 674898396 339932200 385628460 173346038 648372588 13749002 550857605 26956302 765406099 434891529 813554606 654658622 656610068 327384636 362159408 260343364 522052074 491293215 611603041 183885946 802512087 61518742 383384360 327226927 645475619 323834467 862974525 225820424 868003541 526937613 582833557 82746992 152282010 74604642 134269790 109972557 363047424 234824366 289042402 211925126 865642786 836839581 854793484 615176724 670522421 39110708 359150736 308264476 625687897 130867517 801371978 679216782 868457604 555639949 729448417 411276400 557147239 246102879 935978678 37827923 375012167 218887748 944956652 121089924 867191474 611010215 760806638 506908403 675700489 195637045 691679502 566893632 976752271 575019916 974440506 721066440 912129127 218690383 813560327 452783418 959493713 246353729 807251559 508708374 508830728 437119921 865446438 394279579 418206169 177031491 785694579 647948441 806923630 506311389 711212324 514229562 858623498 616194176 851610012 221085122 845804302 509049047 721500203 245706175 772497494 488813988 843959743 395819613 836680257 356815829 619438409 436322526 520923450 356028039 919441132 914468610 933744738 383017256 701891652 577172533 707259684 435983775 984780315 10527301 747456893 43589974 345610506 328713248 486697461 80448113 665492179 542796412 845046860 544588961 918128573 390246403 698302709 300361727 626269968 301297729 301815644 156091276 686619543 526612928 758314137 486816145 522697789 49774371 785781124 427765578 796515865 208933961 357611852 227951813 917357457 187906585 442700380 328391342 720698029 586077790 870448695 825785755 830309621 420952150 905591061 379879685 803832408 670297928 869126342 347496674 935872624 400472829 488205962 234468691 369077874 330827948 868692517 507567729 621258959 250259051 836241532 177511784 178174648 173357186 949593540 878033501 912493561 541052977 949229032 234915279 285332657 225027800 422711119 355572174 551726865 418172632 605850101 17253308 265345456 227847807 267873606 214941057 568147164 316237379 944249553 828590626 935614473 144337640 733999205 408026576 430108947 165764150 190843785 96623439 113374501 83974601 288799840 132970333 297011985 65084949 117847238 112984328 254861324 168001138 948338426 464109547 565159944 103259494 413309565 359787382 840070378 463558973 900090781 395013247 742195115 359437237 760349399 542196475 933917877 529052492 544583614 27274467 256294696 172908001 356991087 131357089 365891732 36389007 981566739 591415428 622345031 53497083 918368775 563398019 785051911 725280911 841693484 400126111 961233666 894102410 946170721 222291368 769637665 18012295 543858251 253663426 949920329 733649608 910386196 158554665 915610875 11965554 316970127 46763172 737679606 279793233 373060359 134106875 660176823 427191728 867554957 735547283 819419473 704331868 887646777 584552596 889444460 719779611 992554176 227339668 825061182 402593404 885401063 113581839 449327377 316262516 762418103 282127348 542978408 217864333 660292404 39417939 576376716 331636486 471259034 463866764 961423877 316747580 611254799 326435268 460021226 268045053 405053989 24939557 491728990 473567026 773013023 423662761 916522686 73910093 698627825 415418836 483080891 466336853 886578904 286058972 692682394 439816039 727141812 168169023 705697245 475702111 685204826 261366337 784565130 341352051 888030310 411807442 479889228 15981608 667076424 195082248 703737261 691869913 819246147 500093780 925218122 296012858 520145368 266555903 795180628 103288286 614661539 251278836 284119497 245238894 320682388 14967620 540179060 278292782 325972473 71023906 511468907 299102285 339468638 146090934 179136030 65660354 113828309 55333291 225514803 48096928 523713356 212676532 709369100 673754670 893735697 737315340 843426321 265654862 991336201 428437167 908597845 57765120 990275486 499189750 875024503 90673101 91149488 22495563 712935644 596159702 719658361 541880832 599820422 67247227 835578269 441475268 711665010 118090105 326054221 112598148 992107112 986617820 998349527 739677833 781315666 8987361 23141709 18626927 518906074 321523205 720709120 272281054 434479645 268520588 437751771 237756566 825850133 442509353 507135737 211612942 725378696 43277046 502864737 83892325 615095292 463409801 618291790 446552614 589080169 541975376 857258903 424137399 993577863 944404098 989527563 536461572 704391103 297355194 678584468 65610449 998736861 607400543 618865342 388477706 407735387 328513895 940473313 414008468 848054107 716164168 863706577 553626495 708210391 671618698 740347701 453575413 869114762 3871935 912136257 869983483 889147066 355404416 638486228 197483409 440037358 279077521 881925294 584199202 940558474 35258473 503842363 42427520 927140020 388140472 772942844 398625512 997704499 291829568 718802501 718779654 971819943 558577300 950863535 734194406 902897764 555355555 811741605 572473395 833594543 490079474 569811371 475581172 692845904 203290572 911051227 702400486 836368257 157117465 738805487 524888277 571224631 162353923 595088883 163681697 946489991 910405908 977369896 6166870 487467869 162106734 417611642 158355374 267327712 241557192 380247001 254648388 766408865 60028491 561003591 2703562 848990820 342433180 464081430 194405929 943755726 828634563 889365738 100210985 667720313 214197985 268128752 63089669 687876530 241965352 978984573 837540969 914057253 629120578 859457757 731997012 767827684 11960540 80485457 5798510 651869551 395169423 796196194 644489154 984984511 762955802 792892165 179353947 299497532 48826144 730532589 302140600 603337672 342343795 524743312 442917352 952342998 887132244 961530943 204836446 338844539 283874400 379253416 355384817 740299346 690918478 719611969 616622950 866286380 590725339 613871892 19121420 101894427 99948470 140828625 138097991 767537408 373764772 696469594 501652547 700781094 103995670 925414465 584062247 944250270 730313172 833234162 278860695 666781648 649042264 860195868 659866353 907690639 525300952 547656180 357833002 723690329 559052079 907651749 641881044 720355719 669421911 888660154 192229479 837756098 498055044 514536480 32247335 168371980 136950556 658270236 310415441 879186170 147064038 773303735 690126261 777050915 481690422 652304678 95370647 305669820 182343496 652183232 163065824 389119170 360374854 830834528 379707337 690103922 283593016 790486039 450140661 504979501 14028964 396888486 221877557 317476392 156340388 522231369 427904886 508218668 31800301 406306471 39556254 807401810 30996735 672070252 629894441 781333553 22067461 841167344 592705494 784487591 744649225 769928528 219232593 744125051 709966097 974881069 117871847 408166137 208887980 211136639 202138770 845623493 41572089 321747478 122849694 337889638 143254029 341043591 305208671 513247185 10792561 206978481 118658640 859800699 628177071 636552600 210109255 596303737 3134870 396403308 219240292 987030412 116471033 471063613 42626820 725457419 225221091 920613682 805013024 956090468 270871241 794181446 208527189 530920502 9021702 479305315 4710690 777081300 475320569 567191081 388093969 451183415 212049273 469253751 350043176 582223199 228052188 530608639 461264612 746899900 33788369 831442230 42813429 75413899 2422044 632170505 21199110 115970736 49509287 117226215 26180041 377347368 279190203 332674723 99098586 791206826 677421049 832237384 60693083 764423965 706371826 968034950 115188077 730661431 509788348 625633759 483392850 538601420 259370750 443508020 257077684 964321240 497518670 886396711 245449933 542840621 421847164 723825603 87358302 133973751 49679479 348776977 264604436 686568743 215733999 265499420 141580934 490738016 396181525 976735894 409389779 630644783 471693901 779881384 110466274 199490755 191385253 521880534 206652165 417747480 376912081 868218954 432068002 877099851 499545078 532139440 179577931 524312564 367167934 509117432 199994449 496035803 176983208 352806340 143942011 726878529 655187191 787201036 414265571 560702460 206297894 466851917 5577363 181946443 45269371 824903700 246232691 812889370 676887720 833694399 431503057 657958566 10210186 248720120 27417583 287986287 56716549 283063320 52986937 152522864 113592732 596151722 494647213 550349375 437009425 736636048 694651198 983206614 759981531 885955458 375562792 614602794 261285068 371098227 232914356 845638483 297386297 983098724 716084601 848753959 103977817 897901189 243307850 332970141 224764207 734400035 547333289 659637440 431248342 503032579 89009271 377085040 134918270 163885094 9479063 781081584 483005301 705459703 682823376 809013055 417148223 668110741 139143898 320081502 299845623 898320013 875292182 929424874 211077250 358077768 320877063 880700707 79615949 602882399 30647857 396234889 162520581 178384099 71242674 715471155 681474179 937460529 832046413 894431052 584221943 781215503 451030594 661678556 564739381 864674351 292024891 570218474 561606627 648658769 64194618 255651712 255028840 853395140 116243897 975045369 178253336 788644800 538409607 723737395 4309689 7704989 6312552 799930773 789613126 932305831 454087728 614846159 15769488 126195968 102935588 576137620 215524454 609637069 129056532 357378012 52949480 449616799 185543143 313228024 178407635 888022750 251219403 790253399 140779524 309892143 65088304 757312388 602514780 623240853 269959205 919554036 123018790 902350768 326014334 897439000 642309992 703922412 398054433 819611131 530436088 581187389 27851306 842796729 139579192 514838279 115601952 658186885 79427284 646816773 202072298 277615642 136850862 308873727 19549936 966172605 389628296 630535713 445199241 756273153 552212987 841578209 170204508 795798371 186540513 614015061 258281183 496079329 281309308 687834131 568444004 989599782 273682 839270876 254622234 407339982 333082722 445310308 374288632 416441664 218093989 230848312 229293707 909250067 499483291 797585190 102457041 742304203 669327788 835175182 731263556 911252896 440179311 537410471 351386604 777438271 534020633 945176767 361717586 960972622 822789464 950023954 311132619 928971831 467632448 838280277 724879120 907154580 325958242 879800537 521365246 559517826 142237371 287706431 105266848 748641035 217891774 347714334 227084182 490011233 476392375 597637856 550972425 810930769 694932625 987115946 919971307 941789936 895517953 904320704 401372427 768957692 404864183 425811372 196911852 863354353 676812384 881516202 40563388 704035469 395062634 798451186 484509192 646080037 208421179 368637316 223556305 490991196 196829056 810544844 766801563 813107192 482130641 612653245 397096486 883443135 765201573 774924786 264224249 798000590 113133662 228500282 80299838 725263502 427045236 962944678 436366178 502461939 443612894 472385889 39724222 417013594 334948554 851638842 251194222 815712640 311023060 568206428 417829297 634244454 349590317 363856024 126257036 573586423 185922732 360226111 255044285 327863598 191371160 438568667 274006143 405596189 244455088 631480129 593417932 693540109 588576035 704930712 147256502 656114967 71768846 972255355 499968865 631454661 216633634 951417173 633251907 740776188 160180117 667514305 591198571 784360436 455686674 552208364 126716142 731224849 558209074 929892202 915062045 964548544 541804852 652293184 615840139 981539265 467967168 606660734 388281699 451338885 448010139 858552361 181917857 795894737 656654404 953489976 370751619 786016384 545642807 583139118 229470212 635747143 157844846 567950902 208080778 336989905 175845461 671884781 571999609 617450646 577004546 873949115 268806606 548024039 9680427 364216167 329539663 665675727 463121948 865611186 569779756 612611366 271251926 654608552 101124144 200759351 41804443 132848666 50828023 257749938 36258190 897231084 333761909 574601716 559977338 622434073 447087092 539139593 50761991 968880875 1775247 196779629 192223558 399227326 66729616 427393171 301910230 732098797 502094721 619542517 19496716 153875918 68304584 540679886 408804523 724986379 496267909 515465017 388464658 858019339 317016171 629502994 538899204 947801350 122664595 927017778 271012486 458116902 415505835 922853271 126032385 608153934 411696104 844339972 446476367 605859845 11196033 45724454 29345203 56033629 31012732 793315423 527579737 833625740 652899571 858364045 517190570 553529010 405584991 757012410 307058687 676830051 102071960 399700484 36290500 654625057 179595874 826139955 120602316 258732704 164741151 379392568 44973661 432217823 267362771 556678835 237169222 637987850 433922164 444097720 429298288 951518629 530693981 907611517 343527410 345353272 200337800 543235098 335513141 684238279 565650750 869618190 620497236 789956219 318035859 814153114 290226170 993103779 780326818 905038911 393515821 613229587 77127118 116444894 39459505 916645810 346613350 488073890 305734512 456149464 91120294 284909685 194141234 949234668 136485644 915908894 185959526 707612164 566188150 948567059 64147590 161983116 5377744 309629579 231263494 485667060 4306412 687441464 198052916 470163391 403433395 613365920 345244686 938283415 513198464 558987601 431771534 957493666 623420156 997202251 280733187 866947732 372514215 651212948 161400215 718140381 538655459 595997053 66308015 740060546 487851533 954107288 41679760 68791729 47943045 248646217 163257866 457070409 250886199 471254480 43607487 775263966 141715254 951483094 799417973 920854911 570626671 899855494 641119528 727335155 513322837 702847803 291131027 351395259 116952219 206861272 136691306 430039497 4673176 650677261 417826213 690548410 332951051 780081992 771012842 903703790 495128641 534834016 281555262 697230936 172965836 711804676 236523008 336183589 67934254 387489797 182863589 970022753 607571628 886964568 775477325 914402701 797304656 808897952 231362408 291937473 18538478 148987536 74083360 620690358 116473069 773047918 603094450 898822346 881895890 940224513 147929584 769122433 38802297 788797884 74747159 157267153 89892394 175764189 97632482 529344922 327638945 873698419 462472436 605675576 56068832 118169154 19694831 415845492 382874702 942957846 657281350 677748778 295247884 621755991 109873085 321949312 303881999 728088259 448573781 741519519 726250994 903099237 597781840 944182212 763386474 790019269 376526896 679417377 265864425 416270431 179563025 880475248 452716316 490903085 300205357 842604191 231889351 645026874 578594502 756776505 207093451 979790952 162225183 528826300 210096604 843216804 275963601 713093021 161126178 840629595 741819529 986138178 436350627 790890639 581679359 940143000 333350985 625636125 500164622 577952487 152551662 259196202 157960946 997787317 920644585 940023177 675730720 741723973 388978765 911598823 7009360 204697232 23730251 221482858 10837392 59273448 17309523 58517383 8284 694340785 46722482 759058811 189673008 224025411 158825692 867946554 97763325 167645752 91751022 781631861 185929514 429728909 44089236 551737676 452789850 543272094 181266683 679919176 547166296 590798410 467852761 690410782 48274337 817751531 72861370 75817535 4599126 75919184 8477676 742917643 658839031 800207862 540185531 886852665 126327365 620527747 235478657 501222188 18641689 928532233 710850975 791299311 158270868 809604483 776827285 950815324 206343871 717698765 121923347 649721014 438802329 887957766 658078345 678911048 624796221 862616830 171113973 871403254 557082406 639007930 78534192 360483372 101718639 112549911 34311460 147212020 106527490 816867075 413845212 429913483 400870089 490955289 439451987 893199160 20559039 985338510 560724855 937788454 934280032 992985614 307349693 307438200 299626710 657934201 174134137 971870558 278265156 315040571 116654342 159077574 87786011 242572822 144385141 547070196 331017693 401536172 98342683 159764313 136673630 760392169 278020177 493142124 400244143 563868898 130075482 534952623 14190122 975268296 670349944 801952204 782752320 959145623 288301146 484116929 79631020 391611612 353593333 714184720 671183309 807339062 515843946 937352143 880119747 971319273 408722427 440368386 299779731 586897691 86954976 685693237 280510828 977663994 776871119 789442478 444604925 968293600 898120985 936004762 102931855 268327367 112926292 443398749 113493115 638741018 515158858 695855851 342883712 495055682 219751950 706494821 618125710 872175678 346329368 988247382 539880982 953984653 765457833 977988833 446788761 909188168 285286897 627625125 454180516 874326156 162581939 967797090 765339646 948543704 336249398 675848856 339509010 593952692 314435940 975213021 287662742 398512514 173596245 894137419 502320451 669455587 344758634 657434866 87118519 268641926 220133669 243437117 126689419 682760250 361998030 669499726 571450579 912803035 836955367 857357977 844302528 904220832 237140074 548705989 273532020 500280381 14090437 411136278 353094155 908023761 389858465 639294636 608573149 745115029 339850181 441066567 342593223 586117797 32821050 972717694 713844277 958967425 198200175 606937619 420799360 911857823 806073514 998418533 945679332 965370413 688831356 986103599 226077805 491497414 275567592 324482814 222541919 661364795 500909509 813157611 384298333 940383204 823126641 824849157 244566373 903835004 466124138 718276786 585094554 617856826 605345170 784531470 36572171 454390302 69247663 719681561 463832891 823764435 714507374 961541842 870929632 909009681 45997142 843357911 38220968 479970208 99345051 397891599 83872875 459806702 100807234 772320686 418118380 444233417 366343286 523325970 275236775 383142133 305610829 820659858 185942165 908178510 528464038 866690891 627962869 817187052 289962928 328440230 294173515 805984066 628584475 875846286 555261573 953659961 412893323 809217494 603681447 747326193 599017015 784979356 108314858 271163098 211101763 398817020 131283715 838058560 445043561 786993772 313500834 781835592 754423448 819593845 189841959 264107634 223325790 934025621 829823836 896524966 408009244 999643075 242691238 843563080 231185895 878532149 554466405 726953458 150316655 652399335 330258083 881281571 466501210 690799044 247642289 502311680 356709445 490907113 454233135 939639757 384113635 688767674 486097155 881953318 414579700 963792693 216506219 525453718 144058673 231252683 28953509 927015360 821057458 940416324 696331539 723247267 455835280 850183823 323254875 462296266 350313720 955624826 425134351 623071910 543760265 923774080 237979647 344133211 233705691 901578082 404258983 433820494 63636217 918526148 905796641 907375240 723805853 961332901 234276020 957849550 333477093 506900813 272839497 361388884 263254489 832579176 312918509 354939874 108182236 545198559 271017330 425354908 14626159 937830807 436034338 489173381 183414394 374522392 273289760 958564608 875262174 982785881 70320875 104969552 55452601 88648845 61392792 488154929 389529463 756617418 683310602 746089005 738515702 907591726 407220564 438544961 242337335 796995176 632433586 714717797 2388559 487243133 322956115 653018167 112663176 839377822 546600947 686983494 584953634 707490806 35339741 825232513 35333177 701169580 277326580 836792017 423360721 546544190 237905642 708477846 162228225 218033753 124785694 915553081 768047 876547358 793679585 909869566 558958398 635238746 258173412 852527451 174363377 858820544 769834323 795094672 134499204 979891526 458123222 866924670 223484640 408126691 133708776 522974357 486005882 938627944 76379347 991921107 411247481 725543811 246655665 636477014 460987260 804414216 126769571 620818549 296437401 648060934 172019081 697977051 82363459 572030433 366109934 999633838 616437247 936457245 701823916 740174452 490272285 539249636 160367080 999413327 230456114 434059562 404546735 973542037 76119754 960470439 615228302 889335119 575672517 845421223 391471694 775615263 744564376 851252130 677905331 797174497 612399466 921794192 99928390 865566355 189561578 722986040 682331623 892882876 352093875 906222645 370698698 731715340 446319231 695210978 430949133 987570648 824703340 868401637 238301085 813846537 803707066 868474475 313581169 626686116 163536345 552978406 545296064 807364803 541059434 859923350 20314087 289956748 56992544 901480736 468054255 684919432 566101294 631057726 107993572 154005964 88459637 466955538 436213827 684589593 495994439 580228774 397574191 542181937 505784593 723085721 541524407 547957650 472209938 978612034 254743174 759594857 460078854 689609814 540243664 716568673 24568243 962068920 666529479 917098488 318981955 992657647 634786398 812040899 69799037 866054056 970341 579139654 23661193 595336729 214313503 349399682 111867818 673732493 119233808 452930274 316028301 638693132 545088020 800413960 566832340 829869554 541747596 853731762 704214086 798879692 759109828 778122774 670498030 718117887 15411432 701288252 102858815 896276006 731917123 984396751 260532144 438626503 273470576 302398184 36417374 202043696 200228407 600667828 111517686 512064452 158733741 694271579 635840600 754985849 278368830 929984483 688223242 736110691 266589079 740273185 712347951 860625371 500270693 543934834 95207905 466953302 190149820 213648340 142555337 794290535 529583986 917059203 496573006 802267606 708510993 981839406 78133485 107868081 17640125 729175636 562401200 618286247 5320725 751815341 6968147 589631879 503046884 802366026 721429183 856273888 47269018 744395675 308530616 840251962 45633804 669085923 95371551 998993222 218962313 600455678 461319787 528376076 283600540 503380424 134898255 956459706 468756999 787519993 711647961 818346780 675133424 807401021 642665292 806876059 195255576 776259255 360390966 510688928 228082684 417172406 289867292 453437158 145887726 962378752 46022699 738426845 126559048 858250161 591667307 683842404 467855763 826982963 771353925 992741375 86937383 240369042 132699485 946979576 824335368 954527203 472892816 695436718 623412894 843526678 238244804 275991459 4207981 218211473 61937991 577703270 416885350 833670147 532780402 839995516 763332640 863603017 545191642 942064803 193486974 274141739 182071542 414372595 270945220 376817610 107657086 818217313 209679353 507475110 504034865 916161558 819216403 996050391 320494997 786533672 765513941 926528391 609772341 691634208 114290012 677152119 42958324 950310256 55181804 541665751 518945891 561971821 382145599 500174106 420474530 853382075 621469981 923485053 348744075 803009717 144304233 754570480 512637023 962594359 253938021 316639593 7623841 481895603 200560373 629003238 414984016 893993869 412142724 823193367 800065647 964309266 150488852 718549061 160749929 337644624 301024284 464980340 444963296 881801491 800300474 944710957 214681021 319305913 150311921 177767294 162179126 850415336 832085861 991819645 729955612 914863040 278885589 556203467 41621782 423721772 230572606 811430207 321383385 483622948 405615663 846882292 85905714 394126963 263306599 829682483 329048221 548272467 536909290 770884967 508705874 922998783 861584186 929770936 568991937 821268465 123877353 261778952 235303556 614802513 143148382 268328608 101453670 767443865 743849179 895713954 171850319 482287591 464324543 488943303 416303302 438887873 229780002 992156465 516157170 707802058 120449852 636515170 518046818 882494010 672530832 681787385 425338300 746581710 392282616 643722914 630477811 854639122 658816876 973939664 798613841 882532401 121508536 851554195 591212090 880939224 329793810 666266825 632116612 954753119 749113486 790156892 766431393 853275135 670197204 696233888 631898610 922653012 502418268 816589804 767657307 961713993 227254262 717088897 56072170 962717216 954741104 988590721 373035698 577283712 531846873 887415361 460595668 930023022 324470331 591721679 253244221 566197521 122881948 376936644 172004519 584948766 154805371 846353069 365976457 438591014 298205011 937992501 203148477 248869187 88881583 853169219 530849186 954121782 82573541 327422103 113362966 475110800 441754012 507591650 50174248 552557289 42900731 520246671 119043962 500431810 117892235 717227534 462636636 527084407 9867468 245835251 90811943 733775199 103099369 598739454 575574608 920031930 833594153 953807346 919910421 970515922 885512481 910539561 746511547 922495059 120209124 440953463 232319523 571102156 190146081 705338443 76975612 879072189 728785576 990398368 960954854 990940781 150044852 976421949 647650638 910970672 220568998 933215256 596901589 784484771 46331938 948481391 325794725 524066510 315009219 693838507 181570837 403905704 135390610 614868406 423231183 839941811 439906664 705438189 305129787 755620083 334495492 595648175 590480437 647859974 424744146 625926969 42351845 325963833 38109764 605206047 355175140 729713172 721723224 963956773 869042770 912256888 266686920 458437488 193903664 856733905 814998901 941647748 861760785 966826216 72106603 977110467 658835361 665980398 330491198 984524049 792400957 874221163 340082086 487408892 434223345 943849674 875395359 962377146 488309188 883599306 20528826 887927755 611278022 756357468 609064976 680414327 540227647 840328109 46882107 756375551 556294253 862921912 298058136 847779893 635266254 841693293 65851615 219690867 38612900 845271940 704743942 876453023 395311399 906884500 108362099 536884634 212249762 296114553 182345402 858728637 606947838 698974118 587987722 779901477 663432940 920296631 177093880 703481110 440891475 772644705 159213511 396975389 225807593 863991456 498588017 997658983 717167588 848261563 138559769 635415881 579599558 988133703 296340131 647568156 599424840 851955179 794314262 800312358 302912142 450563556 359275293 422526906 163903526 804623251 278543620 289835300 75028174 574630884 128696979 376557644 146726153 739385668 292987336 712367874 520621810 897860024 362801768 370436839 320305548 391041860 75011147 687160492 226386110 658982693 372597765 490860797 286783174 702156376 225583285 410788510 266235549 589074549 196913740 624938691 618799060 874106936 396797696 762583157 600024835 766447945 30815685 327028575 151425264 836796562 440065100 999142076 119288742 709189576 414584956 946331960 109174223 689768189 549033426 626829005 202979029 619773406 397613405 777404410 72553729 943799905 905625896 907066973 227225746 619680527 424201674 911507572 883177267 910659295 485935025 709018177 579747135 949501634 574044765 937035869 442340010 962306760 162560377 618370079 372658182 792510817 558078059 599350419 76513878 885808291 133049627 717704421 517336343 969579725 888929747 954130093 806727611 885693153 448136921 772591857 53251619 625969538 583719902 705696447 357960121 814728629 776053713 951301059 822129130 878634916 877950992 879065728 466457439 846844884 146425587 793158225 731983973 752312803 143604859 620279828 449924314 459688622 31522011 682251625 673050585 695844326 556948678 611271742 269541943 528526434 365247743 666057258 240161577 780714933 273543916 807562727 454351374 882702692 762281982 881262086 259667722 806757937 590079510 767547723 657021775 904270579 722928131 767150993 65824694 595632154 379199983 602092342 513949317 790677262 210962277 774766279 290036075 919772460 639735344 938328435 716122149 773368506 608703392 725854533 24256067 336915423 294511950 632978149 529498883 754486691 479837123 721593990 689573353 773226353 580763370 790292125 615181848 921499302 869105826 931730772 54318405 867116712 87984095 651724748 523508429 825788264 356294470 902906289 799951296 845691014 839668853 880316698 340452694 780663588 682734605 888083359 694205456 997973530 356592833 801615190 591747070 939203742 255172297 693747920 504699589 843601036 181564734 829966232 455280488 953437054 668787085 948342292 755092364 927687959 809694043 882742867 576980335 990864489 90037814 770017465 661263962 851456870 329376649 492457607 60791718 801283319 571553244 649433905 153125333 570402295 71268709 972208544 906561644 964913634 64730102 688109831 434657893 509151580 1490206 55178379 30486624 277302233 174479464 901317645 509422162 984216993 399710520 431793007 93551715 575398547 31131435 162068598 72423151 331782915 314966248 464440098 301243071 357084313 305143344 963427850 293826297 618380425 315582142 805249533 642355478 897134107 860684810 904648027 831583223 850146687 732439732 791959655 51931453 690544485 524277376 807085270 271415271 425413056 12731493 113690564 102654992 207579658 136412356 449313336 433486036 917857585 865168335 935518028 546613539 713930445 46325866 323198336 287380626 941585664 258636874 885761363 411246579 633651086 1891056 744151638 450296418 741314093 720894490 762066929 721370970 726717586 699811363 855190069 404368027 594518925 515492665 535726316 254554667 820901850 530684507 944700488 97282481 634604968 233976741 607397803 386599588 564526882 127863099 785750278 723055205 728442998 307781417 835972751 122645026 954966811 881674945 927212836 139324460 609449704 195774310 676204246 660414753 780260943 579753236 915041241 120974749 261301595 136075974 534345234 227969488 988151272 81398048 116565492 34662325 979538762 245078479 564750684 451899165 895709927 737614457 822251004 361396316 692655232 494328141 943928166 429534272 915399036 390322938 583724859 47033214 375202927 333469939 636500454 220363662 300813424 198643206 826463106 808890547 848968937 464893683 923387263 225257484 453729136 307879388 901559819 685840234 752687592 717913973 806472378 614595889 948845506 704172763 968370177 396411030 537181806 434343320 649721265 554020909 663448766 604349314 701823988 514470723 821070470 753006990 894957816 626588735 875765157 841008325 850038619 479206865 574607480 155070712 564000525 374119626 555649950 491949233 990061397 772828017 953276239 512510844 585234759 566745692 874910957 60925187 326474230 118393836 326471460 81321310 946546458 573598044 901595053 215139624 473751822 471512054 690201188 59126569 431267270 376290982 976046924 504112201 825050608 634211272 810475982 527317072 792896727 587914683 755871464 255845 109971674 22270191 351582251 310838721 750954264 691360605 893305995 536961578 647611408 485348184 506158147 447173526 525123302 313347629 800571650 793457212 941139279 415416581 646421468 243010371 634419441 506369120 659388804 600604533 927911010 541624870 586264487 81741856 456969781 294218258 762065881 56723625 629063169 13236046 311341778 155039439 280916548 55195685 268793442 208909452 523222827 180448737 233311243 204063814 395828319 32075897 406669149 136751402 927905245 510507577 737341991 730007059 753260105 677785749 772409330 489078490 922802235 361407882 514848710 401254158 621021651 5705486 321571397 289561386 653406071 425362060 775048225 736633365 854616386 604818266 756311209 128754639 613832696 423000796 757894916 331128301 455135371 107341950 807422627 346954567 709772183 38729462 295064591 58961034 996658086 332154032 992296485 528632237 828817822 724559421 971601118 123403269 519164848 292474601 808836991 387299006 582309922 579594824 892961219 213767155 912774083 528082363 630369739 8797015 896662986 396485076 592728124 80247180 501288365 33948093 776661293 682715851 840611386 782921076 980079163 948935433 977289642 572407829 695749284 560478265 609981078 83857431 485882609 369311865 424324729 240607538 998253590 726758082 853476279 407562445 990595366 815502835 855391918 292321585 456424974 5655309 926869962 68019780 529564977 7186725 741303505 17387168 493862896 397859922 627562830 96496039 558825874 149449177 802250147 521605450 919718633 151018212 894410026 356274983 527214924 334360661 636380048 246661554 942050794 369339334 720965498 46213124 99950451 56354874 562254555 445958397 870865073 853078397 991160850 601739381 673838807 236277690 889242537 31801349 164934874 62080921 890605430 827759629 873452888 787216336 827989159 422074211 509289798 251091166 875437586 441439115 793159990 367769552 415694842 272567287 520478508 249386737 394649676 289463290 556893561 46577550 777474530 317149610 678331438 116737399 454401070 38972224 143867344 98441538 364127770 347040017 616935255 393146464 611069248 128050235 590433510 187758073 270409811 58321044 863874796 547511838 586396104 526737223 737239497 587102344 802806623 429346186 666559755 358242426 682887215 76475880 840356544 174006445 970729623 541312132 685232003 419882910 979250182 196440481 842462233 77861278 172290460 56335045 849895295 237050297 879942764 654228050 898697414 330060276 824386047 516801890 566061907 521381902 810352279 620196398 695701985 545850430 566280921 179859844 503405555 222354435 581493843 521463332 940208226 651644920 966418227 603691218 680627536 86177380 374136258 125190622 292271377 49817895 973045822 885662515 888368185 589320357 703229238 575856056 930691778 294177611 365745763 46420222 372536142 44009124 866160825 707775875 874046200 684892525 986039321 274081086 802589594 37835022 853518896 603776685 701707618 71279516 496815411 15969771 349777270 5481310 976737603 578192945 945277409 837516667 994509931 335530406 624209386 125248588 654701175 466980001 989896386 809778582 855229063 312574246 633649708 72433691 179478082 93709756 766899365 402881898 951675695 4906176 525348137 103585941 196952985 102016904 321376431 175733500 363820681 11171234 480047560 25517518 293323606 34414236 580114418 127704464 788601959 189478392 959749009 412643795 987443488 667604468 967149427 117754574 773139800 762835096 956555452 453672375 634212961 266572160 646688954 209240289 826601021 162715389 164140687 86997532 705072752 171466495 732783679 357775943 983995073 269887961 698365743 449162429 745306932 620579458 773264200 702706925 861637084 69424231 789231908 298112656 647428209 599297771 717892322 645499978 978615670 54863112 255001582 28261069 399203125 398056839 746897475 692580559 908346334 757479386 978723689 411922460 636799222 48621113 964292543 314219684 710074570 34193669 841282905 12900325 288594035 265849880 669491762 604447373 987943183 259358364 793298969 420210861 946839146 119200185 427498684 266355732 389713824 35048134 419153751 285349696 727794785 532006337 686786998 93065258 525668531 185160582 220984223 100650561 935790575 893404423 904179195 374763970 817293403 20308572 826704120 451754052 458641855 52206715 753302775 552839705 845739932 503794386 576176974 371330352 663679495 271159730 977148677 352441931 760920271 65887620 332657446 212981813 742947750 450321176 905415000 426595304 759475167 131960945 550789841 172587193 322841276 284482070 497877587 102541128 330726834 187725812 226526583 4246938 860011897 42777009 452056023 349820175 843241034 299503710 357620197 93301477 473595558 175443957 946185076 854569144 959651257 612405054 664434907 608019035 800108040 605130824 696371816 249128757 335361007 184062609 477518257 1434185 255089202 164614606 535098643 5023962 988134526 644841793 957317335 102033749 190499333 164942794 603856101 543430425 762906482 292829521 396433037 65300885 795359302 711171276 738603280 306972086 838857605 608519345 765018757 244440226 545636140 339351126 810222644 122149195 466016814 369812365 526281717 279461272 925604598 694911578 887302014 260162262 910193904 621323567 721612204 40106719 562864628 304184481 993534782 377932872 664851809 111016474 745489531 24185363 184041191 34749392 290930664 57211768 467528465 126824010 594055520 418148925 572866418 470127485 966936666 835446509 920355673 828905876 963313554 296031736 528656059 141728152 887605943 306329630 323589361 314607631 889222340 532921080 654998003 359100508 925323048 674574133 719246003 427958905 758046041 581448069 615314763 537938989 623510031 377360806 573815822 512147159 593975098 511309641 783099198 257507570 943907434 865077644 951741949 704081572 714025609 123027434 694587614 435061987 590053582 168335521 227786901 203567006 844969787 678242281 914573796 787137799 916102887 226180708 483099865 430281323 773219626 257363520 285116587 144818222 153940184 124611231 155488915 55395192 795528826 29480421 708159438 28641660 793900542 268675218 447672777 166569149 933999736 238657101 561673721 593629 106839883 88765330 590433986 106961995 558404063 235142476 961258918 814433835 861609420 76040622 567357332 459016089 621711009 536644094 614177020 272760434 800414475 753193194 883504953 495685942 705089799 347304373 552130042 127494423 525548246 132608387 551510015 274502628 313079799 83449586 875972633 50750924 867335876 361608433 370735621 255587021 708273533 85224338 521382455 323622335 985359165 726431040 986380492 640044878 888662028 747230223 935926061 623991121 849543669 20654710 653779637 625760637 862069385 247415089 438238835 67074997 404865090 64986715 142983695 141995291 345159169 7466206 258151897 123990315 922474198 770354915 952516589 197673673 961261066 82027810 558878928 287260292 707420884 215689178 306707051 200295087 756774341 233053427 337932564 187311526 423096574 275520579 799549171 727645781 972606685 282449264 652857119 296965015 507977816 191979082 800131756 353492318 556783498 299983669 735525290 243166231 540523894 89063013 610206144 116121479 174551569 170724292 969300269 432205297 540983835 84463015 770423685 462418782 796320923 62800910 420587923 310170567 509756732 477903822 532090810 86892820 744136802 317820203 799980492 332567551 426318870 165442981 878816524 387891051 936659733 304555664 426764358 25150737 310191738 108793605 878362469 61384291 114727261 21504772 148616315 38958529 67605876 58006942 429694653 51200374 734273679 268079560 841410920 539128793 681386949 69847494 308198264 7287372 918297753 856661328 935967017 147630874 961707857 107923348 335621984 180332890 553006764 233172522 699964236 316599145 962213101 673253681 963941891 728694296 932662142 924796129 970177376 65246540 422750348 76836094 611343389 518838690 910799761 122956279 243474393 71739179 606352631 149868534 212364965 105792958 152847522 142262787 850810473 18528072 162938319 121180030 993507426 442640920 443406730 6406963 772025430 593011442 841628617 753391387 920927727 379894673 998652967 679055384 938374417 544353038 690743563 31796513 688466468 454749169 770928528 309065104 394475258 161491656 274742702 1765476 793541759 638198315 740191353 330004603 461965674 29197385 771863518 224515483 564810065 152887849 253020980 142419150 432389675 347877621 645729238 371573942 731112858 320038541 593349063 144786181 973497861 30429985 544420222 436915727 793182469 710002781 927636361 325380787 780577493 148813821 604076947 20144113 644487265 152486476 651624965 645304660 997563792 140558229 198497568 41270737 638510908 175321153 495429635 290977125 862883469 260960177 725645896 236966924 738589763 667349180 793865689 38726604 660164845 460384370 664210251 566046104 797721295 310775836 633428958 286924747 624837724 487588222 941877965 675544722 979823969 505670600 973042279 19427117 259591348 255849621 379875667 131593821 677708487 309736177 397243919 284266624 695297902 682994881 854289397 343728307 781213488 430913115 499464517 376350130 777483098 116602799 224134416 218988874 270059782 161445784 554556747 382996974 431657251 34094112 345478942 159336379 925392302 565434154 951826984 704041974 900711913 872943487 970516070 571028724 946176377 526867856 787448665 161649975 187562229 20223524 762496614 163256055 395034823 12016830 918606137 346691954 926533061 80789807 529333465 121497911 951103347 333810390 937259576 157993565 377127607 246813231 601477331 401628484 782504817 400699395 617124530 516188855 523199218 99527572 472917613 415535562 604219207 101169774 943808556 49874281 169723150 163078890 848321357 426028467 473348380 190685740 551484267 452115716 668799013 423753632 790156312 598199882 692102068 16674365 465909677 446744686 465049955 314692294 837341326 433114985 848184719 546612145 877454355 600318897 757497706 408525419 843479915 319936174 786571823 181718400 948507763 645496056 750728949 567537620 814720961 314667489 918040616 564202779 952532530 501473176 898282027 311050388 505974464 373888376 859912579 209273403 258614337 180966672 665643649 507327900 550733534 245344618 530522094 465163791 791938485 671335304 818184546 425885926 439349300 216026960 601225335 356556751 965023434 478487119 638189429 164169398 866010747 26435797 642752612 105307468 177741833 7037290 730982872 576041280 826690917 455069835 687335829 117621605 318394855 29449332 455294147 49576029 730169413 703467742 811498265 272538117 956795730 490527783 995058002 262606737 967481967 870880652 943488799 167470178 522444816 454305532 774487585 208550312 730661798 718232307 943862105 528156379 562214781 8819630 968098197 654215942 713184477 353409489 495105376 178844444 521610543 195515922 863260903 278197538 695616549 261968865 753710188 650069071 734375192 306656629 982964120 914408355 950768451 19609669 330224252 99620469 216831323 71434763 826557188 282983998 521216767 107338503 184510036 117614848 978417775 93929493 402915692 268087250 367936354 119942421 677425840 379521871 768147859 738387572 793747135 456349126 873094689 860480784 962547216 201661810 956590281 478709836 813094402 206157093 723656443 627008952 739479638 258786843 487708151 482000380 992687026 267065156 581972286 352349526 831799540 203581818 320777472 171458836 730028345 57618352 995453913 283495623 852565173 19345934 344071083 17632082 633918763 607380154 795795682 252671764 847299445 278114765 397415720 52507778 63412162 58424541 819788993 46168418 189597187 155546861 436236846 353366927 985976077 841982400 951538545 438413613 864387398 739101494 788259468 123526530 764917061 214513709 688731908 522549004 824236655 514051823 923803366 814862810 954924368 58741837 496671465 114770410 284440807 102799759 393841939 257674435 965077373 367084981 624333396 441879922 637560716 320805029 398820311 329391357 342168770 47427957 706285169 421705126 830053223 586496598 815929672 792076519 830813322 687026973 999777987 826143835 830677264 300008135 506956162 404990753 752726408 701704557 996845949 154843275 375474865 229946024 606675076 438161475 823108757 691940707 789321534 98148605 372676089 50938657 799572147 268174433 858672719 325988974 586040257 329504797 576205796 506966820 559451237 486345773 780338198 122497528 780547198 105575448 161833070 141185335 776523364 665314885 981674402 420729116 515694282 402999221 448482820 8786435 784824658 62516368 527666814 142423805 389490606 237305914 480213628 6884575 794295056 710251269 743458008 354861888 612057621 208275437 947151639 106736009 199549411 526254 325917292 241207054 699665676 657807437 779320648 664078147 787113688 509640174 584297093 534347874 758572530 600921264 767085154 648520361 959191842 527649789 557402109 125843567 296678637 224849626 520766491 453779034 725865300 88772099 830901083 246405813 916918728 665691718 936682530 6165961 66504739 46834866 945045457 776981556 899430382 508297781 697913696 147667625 254158873 170359949 702151873 386853502 635458117 311607854 602624508 349847332 932499580 447822333 679770932 519646544 710315840 424401776 935489375 926297339 990337631 446961910 686671184 420566910 505254630 461435629 503460847 76627229 985149829 266545363 625454975 90774018 855631862 747820455 952148955 578347809 715410099 236264145 266934002 103672539 822562756 652565708 812332940 373993715 874035322 360948143 985715995 601918028 827096404 785573958 805389402 499711957 871292238 548186088 662430089 71447933 675478741 99890246 211903232 86534912 802904005 86610915 524478269 480244498 609013137 304858848 320188685 59353260 672388424 130980688 525796780 275048786 747756207 527117255 888706507 194119489 707443147 497755991 581319544 466976800 869290364 416738508 793250615 477857577 900128741 830018771 936715112 648105644 980106286 96961474 437376659 181717638 430502882 205791430 654637741 100457279 396213439 330690625 537163204 481578559 723115182 688967499 900168847 314574349 966812934 874134175 891797963 637780984 697872246 173519148 572641883 271299407 318342709 273294343 878494806 384735737 898052717 879068731 912017142 126898354 634048611 486074517 698280311 152056241 308702295 161646638 908748701 99706635 238690223 139918063 417113970 36957460 317559235 144898247 239889573 229783278 566628630 245622734 729690557 58947980 415888326 89339649 668080198 653333728 946394998 456434175 897703225 754898863 906063731 373561938 570953396 178419928 333895762 14386523 591891391 151238906 920313106 694573325 700339836 24679194 256252897 110109386 449405599 10419714 487262133 28151582 646182001 440764789 896320925 234021442 343929896 271798533 679580593 213654353 985325226 931230837 978652435 790328067 827490730 182815557 509623362 436065981 814227095 463241491 519017943 67584663 301524955 83093656 653336907 567743182 863959729 346461438 826431664 225156424 506873327 2563904 336835567 55621715 444839072 258550173 682617887 344795896 455300805 120733662 185987741 19095661 571077539 4908541 698013735 178237764 544755510 387748936 960981699 804292967 880176423 736742503 911643749 890567529 959320109 820298817 905409756 229653849 757030593 95889280 431380287 212244417 254145344 98831897 311543728 50678074 809693952 5973649 894614851 536414018 909102293 685039945 952655789 519611987 772473261 180267928 787656217 538507429 691447902 439669406 684971255 423032097 579724841 218586029 743297643 413831349 586210187 356499613 528135266 285436982 521448862 230864207 295584113 146269383 748420368 378079230 665041488 217108163 897499582 249700486 781202808 595346332 651329156 594175759 883440073 707361689 913056511 756389302 796242342 625935754 902057059 414372962 610801876 346384174 726160683 629220226 868994526 499126412 821994349 111986369 293459303 26000421 746492579 328584982 975050831 742399374 860193487 30114566 951900911 557214472 892530193 37240763 842473067 399378407 400504672 214359195 350159346 46078669 793210762 714755371 950639698 173699500 349935197 149812709 420812439 361415680 555463600 293420203 608413804 76784696 109612577 85634172 93963299 12887287 630408755 445640238 642559623 431099865 761887736 618371816 821687206 287165850 658337360 615578869 859162811 664874483 901688573 448079565 715437303 583875032 804908003 504301819 548228538 482804006 625495581 30195933 708409427 611217636 768397496 121665277 565482674 54928627 736748293 310215930 486097305 267342743 458623044 327841480 780106306 466409284 719905322 142891934 491387389 83156928 948267207 730301665 938930218 6372188 157794013 63276357 470750831 432479197 525514227 63977048 969780630 486862152 576669844 332864568 539588850 399706342 486795425 328889743 901537336 36321346 161161137 37054032 83742431 20952787 283545599 260774695 802751778 706670204 984292939 634629622 690061898 260984879 278377570 175836337 959081249 613558145 786281027 597816993 953585119 405795801 704689740 649091903 904527284 236599867 616985694 130339366 369485391 42387775 242912867 164852982 572498802 324070646 975339105 492430686 825768141 476591281 771685301 78169405 88547986 33672834 604173862 511206371 783135765 478338060 595925967 595214014 793055667 777657116 896658126 605571727 985585433 641839170 961519875 143313882 547396319 140312903 237787470 37280452 577782267 114502751 863052106 506430159 964428768 602427205 727806790 127937202 268699519 77908781 181126020 47720494 467826099 135463818 520633401 101737969 718955888 197525304 696687107 122045465 476377790 174428246 873540388 602902976 851571568 713633313 963634012 773403722 996265566 936016337 953732094 127387058 559548071 171484694 598534871 119576565 229145867 217294727 716047284 561825976 627575401 612910332 739570924 690057476 707877359 629652575 883611552 182074775 529553615 124705348 295069707 20812014 571099881 15194378 943677991 654866542 964669878 858677798 997054847 801056357 935973045 718190118 971341571 655124589 690541350 45882412 218816868 214208872 545828340 31686724 435720309 225411847 668620390 565225250 569633722 166544421 610283012 82850583 325581055 34518195 291989788 205495516 526282496 196356141 576342586 560281410 958607047 906900233 965894855 305192189 696312117 635421785 730047816 503879864 968972903 510902229 631280041 78351355 809719739 87735973 603473786 261969729 974396652 672858865 964778188 665064781 673009125 275123329 913566696 379490828 674497295 489166063 653948587 507331491 855519682 460587348 894794977 632296391 850397500 553714193 899494210 633416387 900554421 174735722 442291937 258630002 344672350 309093547 552464327 258602790 901545481 421633077 734875436 654016162 727595303 620836168 726988039 461321905 790434744 596106468 652824796 326634550 916322860 549920876 700349066 198930982 745237982 242340347 597777647 235468212 537888873 400256232 960212425 185272509 764741328 121599974 167875706 45846659 526092057 4273091 615554522 551916456 897822441 83661688 402260596 173662733 946633592 596572366 891788422 684708436 855301643 430685391 642379825 152816516 847032995 292612666 624054479 548244486 805264038 234214407 986886596 400540529 674769902 247068510 514447347 30146393 781876353 263325930 592914309 295950057 597687496 357740196 920415900 564431340 764972296 11121954 478666625 205827547 493470739 176930685 819783612 716247371 960151869 192579022 829643476 168122988 734566664 9859224 772852395 685289040 809025301 6386547 408850941 35153263 481207756 328295297 936911747 319546488 681626285 20103040 784632497 297606911 648375082 118130300 457416287 437759203 808649045 781942094 878593726 142363362 366029845 35982974 208508284 85921120 204438796 5439496 906536391 802370994 930957693 119353218 295342103 36980608 168777925 152642841 640886373 7004300 611759158 415954347 423132555 201387066 340748674 4937373 547538047 504704031 853091766 69757637 266297453 41579226 138494659 135419007 582774487 478287545 743949133 524007171 985840851 375801722 406500233 386346663 490787163 273291955 315463085 194944830 872291733 533228592 603556997 538766035 731870838 547738066 896158350 393383063 649632441 221306244 592932594 345757769 645375708 630986827 770817436 298076782 555631742 151751463 355660174 236976601 979176364 359832344 509690052 196625545 302874752 51065762 669463051 50177225 648766544 192288638 793046403 25711299 622404689 226684049 739375251 101887078 545565490 455105245 694576029 372997389 975341155 80273790 985401155 244307996 476333596 360390415 387544989 85167490 575514892 279867886 518352281 485984882 654186802 421144221 692638218 279738661 712201673 275865896 964198652 660577106 903734017 103892421 255302543 152237300 892578592 41276078 620356769 448486618 517951061 229638549 382837214 17211941 178383050 170785035 271643287 78086889 549702250 152766478 327760608 277457094 932345716 292595330 968046549 561334035 893328248 389311876 550848062 106451145 628153860 114020495 912666451 350987565 607567305 480456746 836650511 447566443 989860779 670862502 980648264 519240400 732153148 349267676 956525924 585063605 931096515 184467291 642171667 450288927 573459652 109452552 342188252 144831950 938743299 441279822 658653743 261787501 511331793 223758756 990928894 104204232 215515433 122108639 156039349 99488781 999535951 879967716 964464258 17313250 209986206 92564417 417495035 337786406 622087709 184088841 646346005 252712279 311985901 26715479 785665537 727426028 938169620 591450189 689777776 514672864 541192487 428563775 506240350 26214331 390803552 75493184 727213327 478401357 549572318 156948016 710411297 20543336 569503742 478830638 845642295 305702952 792964099 369119094 551264364 372625396 950737622 298178988 541128283 376207524 444398495 196933525 811390428 448967521 847021821 657840047 741530137 378160369 683651061 466946630 819152116 444273317 578867936 197802136 921989158 25247826 310179335 113013292 922638504 679105568 832958225 155221277 995973587 857601251 930811045 688155195 719878471 3488453 878037456 301616155 634907966 18836436 612288147 171984753 441255947 9873034 574108225 122800217 643442718 191024635 612957396 163631057 234379778 153661780 346496597 134597321 711223599 513166342 864431002 163302012 693320518 225090678 898823554 873005544 955848089 817032965 934417090 301771018 706207962 433482909 753216480 268562 643824149 188419770 863208389 785579832 818194303 122974639 729428971 408980926 969489448 735473919 933024406 888492053 958796661 696938028 778499007 730392704 810328645 459381693 794067355 397616816 935521662 71963627 405251835 219492652 979516627 132621462 274505117 207234775 223495950 148349420 338232242 173875075 472002480 165441780 520351527 342656315 345723283 84628737 933972881 84998216 504347033 181265473 240935792 131529909 855394833 51588271 231314462 12361127 75521122 23845135 467576331 117928748 694717527 643539428 731954660 602294126 999047165 326526281 814048373 86567972 260619287 204519019 266749202 76793041 429555221 326077240 821859924 207657392 319214840 72799527 883642818 754066719 865811017 100512835 173715572 41545803 764992899 94466384 883059106 531801649 739996139 608846830 841701879 683197021 792661468 302281851 609026228 461501553 791117429 769128442 885025226 427384032 822883812 770154776 926341194 14164073 566708697 203863453 545104952 515207652 669821292 94435757 575191949 68902878 150444981 57603215 798133325 764974947 835934830 832099589 862381803 604189506 935864252 566267638 926645633 728848779 834264521 212359110 677819922 111613559 854263255 380496405 820877455 388877365 449211176 63622853 181976216 153262202 514258406 484991644 965097565 272755257 458352409 301973395 574796437 34513295 739768932 14028734 64923657 63200344 494226957 374017357 519433159 108614466 456978239 10901200 624385604 367255938 637621182 258936893 884994300 542543511 801412502 111858370 414391604 373350844 870749841 281481319 562738850 441518388 531841047 313832074 990785766 88231293 816386246 391791319 569865986 307259196 737799941 287896876 811427518 200963566 938273468 193564882 274595653 84970678 528404081 228819259 558128843 228262030 740719225 708391920 762972500 99105190 421071024 260243101 263184695 156511873 330338503 195032443 826459211 361718278 765313012 83969097 739102213 275097724 471744209 195766115 953188876 688348664 843116623 706958293 816158191 804115794 886514687 169191774 837990885 703275390 748930742 618661667 657989481 90948274 894614837 147160743 516511053 391847722 996543063 53709245 128547116 107952242 357248246 99019320 600106784 401288113 734155390 564001397 708603143 424405463 677955383 297054277 965521674 256626055 849286316 153232509 210599986 29873658 481661762 429188790 991712964 421063238 957957538 928332989 971173396 708416111 744967275 283495522 696871754 328701840 703643713 463749808 747641567 689360413 760502907 598614591 994339493 116608705 373028483 369546871 954722915 384834471 627601391 504431099 939267957 887925841 986513529 261908913 392205637 71408089 300892683 225796048 702469863 69590903 534440543 521658517 987833188 646036090 663663990 373125695 943469827 584120018 854325123 640926793 875159929 479539475 904488032 260395443 374130627 70629705 610785334 459500161 511481923 84923110 420501177 106996779 193915253 81029507 297877554 56710302 730331600 580991055 837717029 449945516 780900897 506132825 752277931 527249656 946167067 339207396 907920394 54879501 961461396 305104115 503847231 22746280 269380801 135723542 506398779 448225399 617205838 603043126 761464758 337723394 826885123 650722000 902825742 311143302 855679366 730451762 794081886 91729689 714206238 299335712 374166756 175225013 261043566 65945340 466026046 357030065 506623787 355500692 616683232 307493864 627314005 373401680 579823376 382541324 752333386 308264861 316610193 79667356 629944525 284095956 663784490 242404238 259154826 205595787 928856858 708935043 902538857 604082474 729960415 439845709 611128772 508365038 716146302 132464805 513464289 138767564 376828070 248697518 481071973 355027597 621921537 226374470 766696695 731991880 983347757 50325868 191204720 109581783 591642294 385825040 754885295 343314171 763032311 14217033 833920349 530882080 963398956 11302779 38564545 2218508 434182467 250880532 341738406 43140945 106557905 67418052 147137606 98049573 675527104 267807279 516298018 351403244 377232317 203548762 219761540 8484674 914177125 388395653 570843696 240629258 504780690 498223906 968094844 138371092 982844088 734666168 742432297 152349214 890120853 751359105 786749232 193471770 588025376 465541159 724413783 548970681 881626684 31312681 758941994 36938502 791866160 199816542 948173639 785494643 824552017 587648756 716246668 172807956 989619254 65457186 448696884 282599057 856908374 95171240 169879086 59486458 963460366 103680007 205441964 95660373 369527433 142298625 884791244 512715316 758280051 540827668 579714849 470338509 534829704 152241924 157213713 84821154 716508607 256417688 852748984 780419407 804215656 192552640 536663515 433846959 657593942 626265638 904076756 781398328 985337486 811292357 987335945 788296727 918182684 570042541 787575698 706586113 841793492 837022208 870508258 417475865 809457978 461495969 671534021 266026226 608563051 175114713 772547498 211669731 427471272 88730058 411386873 169607583 372337221 130018689 547787668 453474973 991891766 358879551 578829736 483140584 978983892 770302294 896912654 451411329 643359657 490370384 511072240 418832034 965411661 721280988 870682007 442311768 457037484 322483788 612049472 412177383 556614644 316738895 978746226 725743752 839591342 368508745 682278349 399200140 941895927 692275680 694860312 460766208 578822587 447409256 868582209 61735637 760075655 565037407 907743640 861823233 973738525 718803031 989364634 888337640 919435432 605123307 732783409 233427215 730183694 194293033 942947584 373788771 869457135 741294539 916042895 708509660 892813263 8243757 218173261 211118838 835117813 380191022 578763633 376261035 730718494 322277086 772881646 348326357 502445878 56763248 378566764 158710238 163652051 80193973 307102905 35273425 645063069 462976593 786399639 408470281 870031191 844714306 912593288 582590588 789951272 25318189 622163021 393921153 542396036 462547547 717039250 31734809 687878892 15622860 600902298 309235390 523854223 74506714 258067687 70085 740377901 148270066 973744486 403717788 889366911 10828218 772464992 211775494 440384651 137240402 601749435 51453384 621901035 618944811 870978126 370352382 641760084 62490106 178459102 50239698 861546212 827572046 916365523 626046371 766502670 109895302 386631636 184145744 565717329 74883908 779310481 348466007 771351565 586072047 806373190 406681374 527673899 513722653 554003274 362846900 420758880 286655531 376575882 154145058 330452788 97436712 936531465 796397692 806222197 354216725 569328065 338683040 658636817 388139424 524081660 295258837 884049446 654676148 924535434 879338925 994743227 605196589 676957093 534263907 641308666 633838352 982836020 544485827 874622144 512745399 717361538 97688827 911454832 22165650 711460927 707479029 911149390 776827173 804624041 275682316 849157476 107937361 832725857 807444159 821023052 677311498 816258083 315055769 522489744 260078358 617197631 157893877 956296693 361537352 439182685 198460860 570043554 251048336 309071980 173603290 453361248 306589339 742288953 686008677 821225271 3435505 445877735 110480347 873993021 353681235 424287418 344266048 565332565 276266404 370075809 335433638 841848067 148228600 203011788 136314943 649082514 247101211 538852877 499377033 862541006 532013361 676294087 538493655 793458345 153582085 907794608 628431271 681031588 569067375 648495245 151676629 582340459 483849564 963827466 210417623 649071837 272393610 433406026 1940266 705908744 63086470 382714371 248810412 621115696 550598803 580045625 54792904 879029035 375612990 391541988 147232365 792498937 176748961 477376989 202930876 594760837 470697831 491371266 142989791 345254211 71203484 290166540 284550404 964287946 614835122 896255631 876053384 912318547 510460167 580485476 94357139 243907376 135576576 722304110 312042498 627102653 70406809 179739250 55740417 883119821 729535730 942961727 346145632 603989260 586299937 997010392 368928128 920899290 669390357 692196557 117468797 239970575 107343944 312670875 175741326 781209383 106507703 714896719 420521049 754376539 298660190 957732287 591568986 666960603 279519524 895172760 632103664 824741758 337802755 775404298 192697583 422554312 371749213 558942364 221816254 343870405 153653926 374796506 251942423 977034491 957850846 963530504 54885978 692615997 493488885 891413545 509966569 566587718 456357955 499655692 41922718 955415999 80470741 866518041 307940740 395770458 340063001 434328364 178522148 992403149 22262994 713574332 248261448 744213557 261599871 400255447 287580466 504220140 220695964 945847879 906676091 924529441 419261188 884011770 278684832 438675034 68425963 349000226 117974370 243220820 142713345 572868100 195055589 876105897 149981864 263761683 257165228 814131268 264738354 832106135 558566830 690181063 66183000 152983011 137195041 265941425 192899968 853445005 769189464 845847846 683519957 934930049 513559887 963601381 589618440 988424299 739404701 836108032 788943696 830633046 503104777 931456499 249901589 543883272 219577889 401094532 277567514 778196631 464049212 706325527 476199023 508071489 247107000 977473684 328427813 579431367 558549138 935364367 399980744 411939207 268597363 438887313 106716079 144296389 61089976 372525709 247260122 903061866 251176819 494838215 297137208 489623325 200030154 716857166 45870136 484020482 468468983 919600267 112932330 145036449 69781493 72104997 46766625 542344586 11910429 723595582 392537470 955341180 36354478 918426464 874455534 920883597 358069199 627076142 225635623 769335301 615223089 878540949 831731637 904078133 543652834 806028799 297534901 402941356 82058877 819525178 441295979 487329876 373763638 686247627 615083503 989312024 927409102 989729098 367483135 394686466 360827072 402349265 46191150 598676858 362727632 738008791 152974845 719877463 4307547 986959417 976320603 995946958 414288510 753117387 199956010 776782359 89822649 596630310 84020052 544087998 236430095 565224387 279952287 573371916 158816103 326359145 174172432 530937280 41217800 289167750 56154186 822739318 767608203 820850522 560823796 943492235 579484787 764578801 600232459 819834848 384298480 985004038 655136677 994523777 219133645 780607001 449623147 539209004 214124348 892662416 325829979 357575548 333459211 579445454 399777068 502457898 197618574 275676960 46963635 198455575 74970253 244792912 79728258 165209761 59039403 640072599 237577061 546179966 274467470 711183466 57996525 137531242 49931078 355536654 55085153 993567025 906547650 921356825 316279871 791720312 485235646 809083569 268289928 981331608 14842615 185763287 117855499 869307733 306151176 351941126 89687867 158281652 109653960 204839851 124097908 163362679 106428731 804167809 545134239 546447188 63823669 242256927 135666858 526139584 519503133 605196350 130580370 406196659 109104235 793083099 413726781 667585745 583378670 903930036 7069995 916587643 104850988 408443790 66645392 722964249 672317409 825308394 388329380 658357677 301726447 624697306 92007888 466573732 48453084 128184936 34125159 359015531 267755613 779926541 500224677 842072241 440063501 716649278 285463565 377724732 243973391 829199298 797121184 885162439 815943592 970371501 768108779 920848849 408231344 624557441 331597649 964673209 97299876 216450547 101338267 818807213 26191511 118283771 73845313 748763216 519408056 715471839 136037142 549512034 165382765 561127714 158450400 952360611 766431928 852325920 762051665 790224824 654341459 963395562 890771004 937638872 917257024 934918066 201398264 933510492 869338666 946774824 12787310 170496561 155293757 613002120 586081261 977012223 446228871 923016173 6263412 225080380 149432544 220725741 65180924 510648564 239337220 742193234 690034803 877658544 594004772 879193355 426694552 815923767 439451320 828962684 6677407 84036745 48085384 806729083 449176879 814533021 221597874 223342595 200242423 742771738 122275500 848584563 280563915 550866085 173914002 629866225 16592004 345349742 56003028 386267677 336466442 624504560 449190433 673954481 256809065 956991026 177903764 476780953 243205141 243919204 98552189 838600093 404394765 847149874 208034873 324677652 237390377 305566814 197283745 246150568 33040850 836293452 565932950 783630421 427843139 668331280 42789662 864099429 107796296 404123900 304276566 616786749 280604975 782021351 260681508 875038431 331416638 749363042 39430762 251165994 126321797 165091330 130902971 520280373 388216749 922644769 883597575 894129195 177642841 264512499 261905237 653292379 310755763 404832761 73217885 785100349 701778110 711695117 33905298 259369550 137711632 573744724 336079494 604339244 600700619 954756775 558633202 751821067 244559953 417261731 129193103 935338553 266151423 355946880 325016507 954970254 363078432 673399995 154998032 908506012 534013456 779198262 732899623 916152654 346861596 698562866 290517856 725497027 3176699 250583437 149821732 373709304 279089240 806923898 256839740 918474102 546269525 831804189 67733741 571806721 414226936 908686180 400157437 506087178 502354768 641251844 84122593 111557865 79313293 370879705 253131506 897092969 359611021 514174880 20849526 912214077 515151755 550366658 423100500 545952375 325900708 628365433 359536087 403515191 250924790 282797963 68201455 355563149 193764099 266823953 236381451 630908111 121215846 685245246 73111483 531026929 356241373 690217635 649255855 787504836 165960553 930720999 524908795 913783801 441072496 593257030 555309333 669582899 282917777 572539978 403546364 609340033 348969112 784684156 160230293 196964862 168458727 843365171 217738823 421827861 54796647 742869479 225488601 727720294 650433719 884535849 308498676 836615848 310079747 788959812 306815117 543071836 483807139 967635100 538251962 988591517 530350794 610212889 225127375 575828364 218992524 643306222 331263904 397775600 300652475 877492923 420346647 938358465 764004369 977813562 389821217 515063080 278733726 898287466 496052923 641074471 209410292 301241233 242240696 519773729 336691851 738172904 358559465 833949641 300426021 873772390 783733366 898035942 543193459 603854606 296195268 829509941 101791093 763997549 620858368 947662697 808641741 824500165 511691195 832224802 313881105 552305625 503720922 724060613 164309972 965649625 493186085 980649788 47807331 163157454 70099245 358184623 170028311 889701681 714649536 722050799 523238258 622312921 471978663 779548578 123599274 610653829 466553950 784990845 715994142 853471505 238741654 747145057 57752137 761857143 303489879 945436951 91493276 728992567 272910952 535154986 389305976 849088976 34533414 294747636 106209379 459087585 117102944 844242702 504956263 887143914 16615654 42694024 40524364 630896412 304913351 893242763 16608481 963631963 726843264 740078102 431516992 706894667 120163493 308372462 106570783 350554192 130161159 312497962 226942053 479486740 120045867 637672411 306176811 449380736 316868339 780730713 746697905 754374185 288472270 514887506 184697523 888914327 550869796 889751815 616089848 852008902 717495495 999629507 899172829 965829570 406686100 689092342 309475601 853411440 248415474 721272473 60225835 528149888 49629856 109376250 26257925 286870689 222740590 741852024 515622840 618486003 483769296 741136699 576938494 749183627 632723242 714754041 172213922 262029953 48249461 566143216 186286498 760600897 672905411 966301413 29553997 46124241 12306137 988412330 906567926 948682449 226466566 502812679 107948916 904070434 760311580 956673787 116791251 351730500 271335638 964541386 114598549 531864203 227332067 582936898 256598832 653728993 419506147 884313019 276488699 392518160 340767582 697176853 463291862 846794006 497301843 961538644 217971055 825535812 337884351 571333443 9437971 616939803 434544152 707628646 547194919 589870482 211506748 454702660 293440834 555201333 244298247 497816945 404797588 748690780 48371124 806225060 643941994 709057400 697682789 961212585 451271062 827448444 508993240 617872522 187679820 230252385 33545592 762007449 246773519 622675248 533905647 628316396 383700039 424128497 389680403 922079331 286248501 392205893 240328389 865177383 270149835 854607179 166541060 964481538 345559366 772989934 536166729 896283045 760055677 817533841 108284361 246550118 162803659 994243311 792949175 836144787 125075844 915637696 557268239 919514629 705907136 865804331 407726662 923807969 78829402 528179344 492769968 843733402 680657654 891378032 800071157 990563347 697170931 991513155 264812901 312208696 69311090 307265965 195533658 515199744 341320162 695350568 426540595 526342295 13932347 566351384 566243333 970781112 774476224 785646765 389244239 581831083 129525864 223419434 42107582 948617923 811258730 858287601 18176013 380187165 161244708 256952790 137812354 785870511 674177182 675592070 393717840 425229666 97381425 979206081 220451382 798070249 284997705 632731428 448770253 654297375 228160249 522751371 397313132 419323653 91143135 589275058 261960920 551352639 145100592 456419456 268116932 787399153 406305357 493385933 146207740 193488548 68803778 408128937 382678767 462572169 148132350 337058132 19060557 346555843 310110468 365984311 272916064 289404112 132281850 265270930 43325641 233106592 25842762 430336529 194823093 288519184 36181376 722793021 521269858 772893818 147339420 223610501 186085386 488241002 440715252 950655048 203222846 526591816 226403480 647399031 136365401 904537734 194713171 423062665 204966823 727738225 68360207 674097404 385881474 590179742 577101015 673045455 25867661 823916345 208472462 861310206 776184836 882215588 298678276 690015357 45291458 678605658 319528086 435604355 166448934 803722295 530430810 912251237 768878327 904095626 880579829 962505033 466359019 498356773 439511722 568776985 245779505 551606417 210918840 733230622 271211916 562130128 182615448 209314871 165786003 562936919 352143540 656845886 626813644 914446145 594824361 681829522 327717415 460344620 127879096 733452322 57758718 953074304 481844319 554732179 32674827 283164083 4445411 519158175 77839858 590790050 30311667 86243504 3984713 821398181 680110315 785586279 782808009 832135802 459272079 962329687 915081203 931141049 722352135 862872679 734037929 974409000 948507949 988429804 559771257 806193307 311379714 544026091 356251072 923877319 386590496 411075911 85906866 650411677 248154140 712684616 354926094 713441590 301691566 473204741 362123154 845023461 448084386 825919029 375684253 938024964 515922310 713032248 235056654 686657108 590559632 919009685 153530179 811771310 345054340 721766006 477955374 919752049 394304018 746717640 467743168 571339148 119726653 482665105 311766841 325792803 112814809 459913042 127280907 938868588 79259956 929507124 559080688 958768324 231072500 276068234 107732830 935968688 234134837 481200742 416410105 970019858 959028013 972569352 663252018 797982537 728644455 778723054 22506809 202466153 76939168 513665393 74833569 682313566 589030681 803704289 455452426 978150179 305409065 659354949 359249017 930094487 629472398 706616418 446046018 928217321 723191051 999152240 986913149 987284285 223195715 755262146 697831666 978932036 45376967 526351035 163079007 629598060 112393913 704968917 407389810 624890986 347417070 754639097 298216432 777499360 326030733 843202941 156564741 876337959 170844973 534408455 23781558 166942039 119245275 944523378 933372797 955012204 67168586 854980107 431834185 432603212 380398871 485440996 97558247 597519995 546422954 768864903 120426418 294683807 106544101 895224006 788892922 980875398 688690553 959750296 610665453 670477417 274422680 489735753 415365009 578939842 455546408 940312962 727073744 931982793 74459124 511910802 460606130 916475792 184526981 752777862 693120237 884309755 231917427 279180898 167237751 698719992 269051987 888075316 855441802 907868961 567452211 866250250 726510802 814856813 539713470 872459297 203295605 585630456 515631865 830872577 257345807 597987516 106368132 837463155 407078532 868515588 151976942 909258246 200404546 735665225 456798896 910677732 751287339 920701226 259842197 572777979 473632871 858808841 112878000 263588402 162364648 954794787 696480816 783381435 250863451 389112725 39573235 643560035 61748173 425422926 106604253 281708753 49632901 474958230 427197773 462213197 204644055 969470536 423210435 673628360 175254468 634028483 543919347 724019335 683349644 710535503 366602075 682854471 608408723 959427972 684860926 828146084 119134139 658024907 545878289 895819394 222007887 378110535 98270807 411981801 42994390 942656176 69016770 541189556 214488818 558819793 30458931 340954026 4411445 139539105 68864926 141834684 1511969 170128916 61817428 422392883 104762955 576511428 290002738 851701066 43134037 582606200 396414887 649347163 635834870 752450362 670346440 902430691 832871740 991983645 547474557 568263512 218572881 903252142 6255229 354883125 195167408 797897898 207208517 209829513 75247376 118990541 99415725 357833592 286309672 459226224 374324212 940146178 301469674 523677643 392262463 941733039 921951808 950708384 238051661 663413358 172729752 580761289 177588919 915722938 270952964 397625290 116149377 987506585 313490734 386936160 65315925 946466446 631518435 708805046 154307881 707528456 292329418 663577822 331474435 772103617 173040651 493356806 311411128 468733466 124236743 962900726 292871052 455739409 348599383 436857641 178813957 292203527 195676478 965640809 792443254 866414518 858071445 918088815 167956250 964197003 534903245 641303709 42440998 718274168 279802349 540403884 19653864 567227566 405014125 436389317 94273534 498653017 199122575 382613856 92115421 506817035 410879298 596367093 264553789 308086106 269706953 686935564 279337109 917303089 760218889 861318633 5850812 157910150 64289676 432519157 80583757 248024003 153917609 768473613 756223036 875305116 422461318 965789515 522225185 925739049 577637202 617774868 136067056 202528586 142617052 681138344 217866742 473426219 369181140 580273430 537754546 825132605 166752311 525163178 68719291 928119822 348117069 605315480 135696298 791614805 384047325 521750715 218883078 691465731 32867079 454198871 176021875 818580583 245293779 276783420 45750518 625534223 247915976 715048516 162049794 940820643 232053041 446414971 440498495 577650339 39092405 327154314 130994682 871264816 479484541 809206415 792226188 854346001 64389196 781254088 58023198 819357557 560122562 797653990 96067842 854877667 353783285 404821496 57014337 656469741 118214756 481321913 245521477 368134799 290091968 572548148 462851366 467004094 148999812 787924372 529497519 822326814 672472433 702294029 501779864 544915509 533385832 827245795 452922549 501365889 7655232 234357002 181100835 973414557 261589367 851008088 662833554 968931346 939031792 997314725 813074609 850314097 466801548 847413300 317092835 342042779 123904079 189089129 96085803 618603302 411209751 950851851 798239426 871623951 575513260 868698987 730724574 788721823 255453056 950251688 137296698 509145621 463521817 920955268 876353326 966809162 647344622 925950912 9071560 120283979 61506514 841805986 322379549 495234655 352372591 599344670 45739607 966917026 360632417 660626525 200793147 448842428 378467260 936283541 494380045 988093025 903114514 984199595 380972468 691604528 194184367 531935340 237839412 697593790 320181623 993380072 330441646 718977729 248689354 768578012 118726521 316822147 198085602 733558070 232136697 394095880 260268623 281372634 59385586 338365474 299187062 700290693 511460514 687503005 35785174 424321539 290616763 985709577 577201378 799621721 711242540 790910455 554481058 810282689 463076845 948103651 162167254 975760127 137667355 674828230 602402543 619950062 603341965 932210794 833236729 984471266 55222095 678972752 101823854 751847667 683058262 814591028 753706255 782841657 166728693 334369704 153554674 571098859 175684436 615922660 498724778 508880830 73412643 659740207 161101278 258060422 103636852 744418161 408397259 510689175 453178764 958702043 899672287 968253431 170232689 330814118 77487627 140697738 140189464 917779059 626505174 715121578 347075200 871165849 592160554 836896234 123699420 521154048 444592425 475268047 338610802 606332060 593402846 843694264 471448906 693012342 75119296 869865970 519927455 955919004 168476820 580660892 174322466 852118504 712401579 933541809 401429589 931851557 456033174 769913738 109208280 733890694 155692650 398606104 318907935 487439684 191705753 880116128 771242325 807691205 538862780 605365550 415035501 678439696 174609687 539554104 293609030 868308337 334558183 464820158 450866254 452018943 102550345 611803398 273119086 951618511 65534156 460115973 207249352 382088102 24385984 571258161 154471738 788551584 702891710 947840121 20787165 856102131 76447718 536297238 90575819 344031979 325674853 927211542 24757421 470380243 98636810 994071760 608287624 712179135 325194649 793205358 494255170 654533876 122380941 934152221 745337467 841333556 80557987 286562167 3039480 886438354 77720761 801323003 244578130 613303500 95664675 544524421 290059593 921663340 269846419 394241452 335206080 725462285 632693781 742386579 562272210 587680253 44853963 999900880 313571664 652766142 588830756 974657478 866845890 967325316 777432293 932968129 640989000 820904903 416756590 633877271 336130234 745447676 679439577 704285208 192797365 814590621 661908427 763754642 175091919 301316765 82020546 365015056 106537698 396811492 217769054 395883573 283988379 333293591 75718126 870583618 602042104 612908335 129430748 496575633 468504702 671293369 519660281 903574878 616328807 664924222 213837796 559442071 493364139 835248115 782875197 907742918 710387182 751904416 647235693 781694097 384555554 802674960 471421949 876207329 636887939 808120651 759057150 767189479 653550576 794842002 750474931 852728360 118767127 520713336 508150001 614922958 156426833 915885944 44937075 188607580 59023136 918959693 134818319 907960991 852952503 978679400 602756684 875761636 67501112 890185443 633759035 778397735 683233193 747206395 121286206 675460283 623351288 734756857 570636917 925922721 822795609 957639234 448168111 711859623 155610317 315162925 126335326 161804939 117896963 444246557 75632530 243550665 180910175 975305371 260125788 504513356 331356096 591485236 208840441 337604926 214625997 233987690 90567091 954064960 197500661 732143492 529517092 552555806 441583828 693197809 542969107 882241987 362712420 602174410 232690925 376544065 263593225 653823831 473884706 537793735 147059343 877176780 750572160 940480998 830111697 842824716 258078268 448422693 122946979 748014167 552350572 850635667 607829980 986070573 46483713 872176423 786034454 942369998 362004871 877763936 768958391 936978767 303507177 354157762 110189137 243443525 234043411 619835220 135844888 524864332 499617138 510045813 166141851 583899623 499965501 597824255 22070796 572276343 77956086 469894136 102794267 267641068 246824059 582635202 246329236 571396574 411958715 433479183 119110564 145969264 43328415 762254240 484709812 685289761 637511492 874742427 141529322 631192452 118032840 387675429 227877220 951863760 166075971 347895751 105749301 367260283 66518930 860693210 410990325 799223059 480331764 715950135 469883555 932791682 537058000 736148956 511630088 893363969 414478815 437352343 365619119 925075728 295272985 392811338 146406092 726386718 266181676 531140988 171310827 819248062 470179431 885922965 140345707 693006542 683608814 817909725 795791779 844164786 174719346 920030119 400353029 772806010 342067359 862991327 82736438 510754523 322058390 726801362 279236634 898218937 412288028 537249192 21424347 586162693 473127214 906362771 856394728 874282711 247125986 325061749 160687999 389944850 352273673 717998326 473676011 715556573 443082928 658188450 350989524 529654636 282898063 767556039 255527832 715421346 129258914 227105850 209615521 517116094 288588091 361323832 56499596 564396416 9865553 907872746 437031174 664959378 452180882 927921146 785647582 917519743 764262747 768377765 42824418 802894712 126057207 699065820 660166942 856539050 101170139 877089642 757415125 883944009 379505299 895914617 246549517 785169634 6379991 191826299 58715695 133703958 56402298 680479455 438178848 999687110 538666468 612482491 65190726 250480887 64733345 731625269 591699735 869211477 600604505 969547723 554532889 933031105 83939468 431526115 195212808 310106293 11910877 558830414 209363105 650490068 2705838 232346379 192493300 994979746 94904632 785418396 763832504 831127493 187730908 223415105 148823484 158780542 8598267 172216148 155742334 418540086 330548026 816067967 742030354 983216316 764608831 952509410 375257944 602206415 226874002 453136205 201175612 645999927 582574646 662445473 128666534 530250389 201610580 887961705 76981314 382939736 229906685 345524443 143210991 528911482 420675753 948739383 857360260 970037703 688566369 937603440 882683365 925445714 63426391 977197353 87492121 418315174 340589941 839426242 14788953 476807616 338843382 570125832 489387028 838945798 386855939 479760562 371439424 708669489 288411509 426407989 138138437 366559596 50672572 382412814 215124102 726465247 612784645 943184445 281672538 449246559 446867990 635921946 556357964 659044736 213413982 399175412 117355990 122950054 102205218 631794363 318060607 991082838 327228878 737411114 456059117 554381658 171308267 767879523 492499852 910985813 6855493 940477663 377660840 585847946 330977944 856473550 53909425 763031758 331964005 538647896 462941676 803976173 680391026 993037927 558394432 814547082 153589531 625063886 36888133 746107841 18925490 295643808 77057779 211906798 144943449 744050135 202034837 469556455 15901339 347974894 312966652 349737610 255321783 821354723 88267293 583779273 143530367 549829240 185257096 374752744 107398371 222955765 101736149 873344849 95915119 661737193 450580280 468593183 82663199 846336550 17696822 698038298 374071069 956650648 106170325 117020370 12946781 988983125 140389593 643025463 453272041 877308825 282678825 409058487 253630223 735058955 426857432 672295779 487461763 565288568 418781825 642386645 242681666 971928459 628024879 988771841 230393629 853781670 599096233 981544698 692778296 915723026 167303479 667903317 394794567 875018866 745750451 775662941 756507142 835708488 107899030 878491120 696841672 796015729 388655158 693220672 166705604 196560449 78201957 229439805 21686292 82937482 22871148 818240024 273912349 456580351 99181973 781494217 384938566 861811898 376305597 796923493 525100751 656130313 402143438 926258290 573764955 790927752 551020072 638414546 503964140 519420387 422402882 695212900 290762185 677090679 436035878 921920173 109798575 950072907 795075787 845568235 596552128 851683232 528023527 994258728 25151565 925147929 141144193 498167259 436276863 487585177 165632425 685654679 608415783 823358941 633767591 853624729 121385282 394624308 199980116 630227279 518875890 557124764 117441176 729145870 399256781 560043892 23846980 507234275 481526170 706784790 239473527 416462405 387667459 973250212 636828686 707551582 655844198 891105918 336141854 436586064 279012944 780149443 542448075 623705455 11460016 229946237 3440342 637029418 594041805 797865386 654575736 784059412 189836861 623374254 244261832 260043991 162238102 194415070 93364531 284281424 265167361 403893962 88922502 141968820 74761208 806934369 340135886 625543750 367302805 777687517 683412330 979827899 330288655 553244842 276952275 467203222 64821387 173233481 143772667 897621394 837857153 933001606 152730597 671627578 472909010 643408481 222168898 443936379 23610131 553803303 28550486 270329771 228885918 338271891 296757600 697497235 496872077 720407295 303448833 968282867 195895004 220712092 126167783 159411686 115853070 915163202 734232672 920318740 683718634 981247420 381986862 776406193 555725835 702969447 216817161 996424050 745244039 980743570 480826307 848951733 373145816 446318823 311434495 552600552 494322661 498562709 393222841 932454103 122293080 501267035 186494637 446099804 224748300 980072180 466390668 959134724 294220230 958163896 55061473 763099598 188756527 304020620 271130652 483781183 336708493 760473523 483527621 816744343 29871877 628195780 73919168 777900699 71158055 504290353 4197239 150722770 116623783 153145268 127724781 777129670 598875894 869401071 367734529 824969695 666218005 998334579 484345627 665790947 333672025 735616884 414428145 671476516 552428584 699445562 88616902 930881348 428993439 526240966 49817569 532304132 65464573 847261974 205162572 258429544 82342101 368729843 28470242 352895988 137135075 233966206 124118748 502007820 407303054 729600984 516981508 817786392 430371095 972519263 103013747 718219842 599857639 760813453 533227836 894740610 207217217 208092805 81876742 400791625 337591691 847294164 441322544 783461910 579616004 880780933 113971146 212154171 38273573 532137204 81333313 299360562 261945737 382980276 353532308 670762593 572742308 840968799 438043900 984504586 916528758 988465659 719526386 959705780 180488603 749132093 521178106 669015606 329643742 581214523 339624426 521703465 137116064 652981875 604684446 781444631 454356728 852130002 264029208 476169763 346953150 865585557 87326745 916312529 444265474 751911854 117817658 658181578 437542339 585667827 4918991 843553996 420293463 941745428 216446595 266187714 228783392 897612693 3034409 739009185 5991421 515540088 56664697 760200731 456595306 981016919 266527044 599711120 248445677 574380503 512257211 969359987 230849536 579021412 270404264 808247664 422901985 978416597 713840316 985995922 280374718 802160165 145352058 289954233 110181073 137250753 109181169 420173711 169839274 944720759 823440326 955625802 3922099 103801463 96912863 495863943 18262186 28659918 17485310 922318972 798655206 879805417 155962032 754631519 703159884 997990869 201008172 368780471 360538318 807223266 589982046 628894898 153266367 261748817 108224038 682303264 236567435 899136982 147503870 822477621 188041508 957011263 318325992 634134831 580693475 870794581 847545348 940278448 913857914 915533419 409747368 651313819 16751721 116334815 72823605 757336409 645934061 764755231 748345248 822332808 175284535 991774843 18776416 976016918 193707307 524099958 222797057 583721615 370834382 397591761 206733066 496849116 177416285 355545191 91471955 525651759 187180351 856088609 202422680 456078148 248044315 504780233 323213039 460220460 357437743 682377306 25342155 213045696 156510676 580374206 160210689 645814256 562965054 608352849 22993034 625802826 601825831 985455722 194044054 433557366 134422511 832119736 553331219 759238551 428206764 829745244 237625289 360328669 297572274 837624650 471857952 631757544 130421244 357064745 28609408 979100793 252988450 549480801 402811931 632427100 13266198 821016861 749065481 834802842 261407641 769525547 524373626 533624192 419371138 924370059 823844197 860455761 520469836 849765572 806128111 927191665 362981392 917037398 182031647 825949810 688288900 830785818 176522347 426283072 397424595 708458191 266410149 813721603 230336902 721899510 539129640 982940417 694124872 794424794 112585489 521103502 357483117 850397144 426397652 555230806 330943197 745805942 405786811 779188493 381668586 574699409 207745447 610686008 50217751 708316016 99980267 498837575 129969511 584790024 43852914 896428608 744333472 798253856 492631332 791730925 459957533 668813970 559806029 947139835 305386156 765184567 608951695 947919965 85658012 215682427 36754620 38302614 12686070 994487162 396728593 436083178 256655262 700764927 454681732 589418890 61892641 845959277 612785530 723819868 501228629 895892233 74475800 754706392 112587524 775667717 335024339 831991809 162932363 925988376 465979985 870344805 58822116 110523400 98570388 440810797 279210343 329688615 305245618 578560480 158019050 269808089 182414022 466962631 102232541 505388393 451899771 551058077 141844391 830191618 439832093 804240604 397002767 491516905 436311209 808440026 426375334 982919123 340073252 351563844 253025726 558273117 247128800 596227335 47344802 456002179 132970998 661108173 507625543 523730044 116457292 687104561 373050511 504108487 187123630 811374869 754908729 940108940 107364513 217571344 79397773 929690355 799019693 836519323 395649049 690150099 468713052 803184453 359004912 422754893 421406587 720353101 265093181 758120746 214687854 357663973 52325345 376024816 218642320 394581664 320433485 766676005 65879037 680847041 111878475 899637967 408212881 917156170 141427847 830412802 400848138 671008827 501724078 736720807 161442611 867873503 316114234 658783621 33812966 515591250 357245681 873343336 426855050 479797978 274890320 297702203 264217008 794323630 288991960 921655564 192569006 352581791 178597546 538403369 38286160 751705486 506480025 613972076 329219882 701757339 389772010 830064789 632167613 737073903 464747351 972700344 768376067 829133459 674474609 803139070 43624909 237409746 61002799 376884704 292287722 954425924 189422029 570994457 204763253 944487721 259417574 760302329 608742316 616389637 210666755 335515767 85320951 712121797 345445789 626950742 430154210 494134686 66544889 504653490 173668007 192011953 94550347 318789285 160755944 648404954 639213694 697595199 198766375 359697009 183515173 837807091 269181725 783539475 472950407 955816088 454700211 732565322 519967047 716337716 93939576 606743439 177623418 259383172 68567271 658729940 200872885 849906579 845231273 850762054 353352411 682810587 47189757 639924315 348781872 708077794 181557289 894950054 557201608 643176653 14006928 150115979 18643933 770677160 548945955 960824136 399648842 406079953 160758812 926713777 318113964 387696847 305347255 924873523 417305714 530075486 250207704 541261194 150700333 416285678 182170687 494783204 277810117 992811318 650377534 955532552 373758864 607383167 84848979 889882181 93419169 398243522 164770387 492535718 433300946 633399955 155146983 411245399 110946678 665111433 419648689 486317791 374600935 977665551 910723339 918558026 445901163 805027033 529012242 579690430 304412870 999044178 477411248 992906993 381224582 699627887 50553457 855616618 51437834 91458596 46446390 276184376 143549828 887915453 22787666 96548976 39674942 81488912 6514873 661362044 126704457 227830170 35287653 463990225 53787828 346430140 295173836 499146295 64237467 387510975 80048656 645537299 269018936 970793945 498377790 930122944 613417739 779191031 652032603 880345595 814452359 869608806 78456086 245011264 223909107 894404282 845086086 934824994 401724765 615029365 363890928 596719283 380702165 461247192 367498316 468096125 249711871 306946606 128777292 157002417 31726708 890478553 634936188 908346453 540795977 974149972 538092242 884278175 467583107 662838928 323033817 990552220 182913415 411698192 71136923 179487140 66484186 263114772 152597191 679978901 374839839 746535844 460045836 590228982 63034716 300992676 80096760 606534362 285432076 988011330 135594044 313812592 179296335 200686219 165462860 312495229 24160466 248324404 224761190 851761374 86210892 822645545 749322850 790953349 91478851 318078567 159412450 669669479 540097481 842007659 41975366 263718778 191540280 444826761 110046763 654604917 470456737 531584952 233823276 544695650 537200880 567713033 231476660 750727050 656889265 663976891 652922556 668387455 633156671 741117375 119990547 862550346 569028211 869096800 469744670 942346349 811693966 862385605 491744457 660348725 197763925 626601702 163775803 550311923 179961053 928536704 770348700 822783902 537239926 669435166 257294922 805679516 313142663 441661530 301894394 534973212 14920036 870336062 226468390 731136463 176461118 582095535 4302518 280281257 180247007 863786319 774799354 809513196 771770428 902653225 198297054 840842387 342873147 655730654 97349660 257346852 150816511 288770887 282502421 450511189 114899938 850407743 219560692 374092529 247641538 759542007 441458252 887292622 282559941 301402891 187594184 488547912 20397858 351903352 220498310 777818821 190062821 632207222 462315223 487086949 414416776 814933712 736005305 757514542 159088197 354536497 269467621 958576750 858528251 930330031 282886159 454614877 367012520 584945897 173518913 889666182 177961070 312749859 6922860 804901858 534055603 592524719 369578766 685472825 309321840 912359844 911703220 944029236 290404372 393841481 5975963 903028502 535550528 967488330 845020062 962788689 598792665 765818018 369732214 506531047 206875395 917232212 652095048 928550508 845591870 882623320 558733311 916761904 623107520 894177949 104502121 762672127 468108711 543654302 378573717 840797566 839793237 884750913 240027804 723101083 131315797 858813139 111517114 794174502 105352715 965758613 772052774 862115309 569818434 759016234 558257842 578170009 58331607 151732400 146359740 835501283 11629930 668267521 470144120 943252506 899824289 911743098 705915340 987416998 588966556 603704896 551293248 707904238 221231228 385991277 32769784 904895017 406088596 852195998 27640997 816410726 359504213 407041867 144095247 763150985 336765746 392136528 294028474 390624018 236850196 996199979 587589177 923346832 645001967 653672348 155394552 754914920 388656763 506093921 195494980 740607534 478291134 960796472 419796192 611532840 477170503 847122254 308300239 986702471 623610141 942466636 567275659 754414407 25640026 751993715 364137681 898371402 81598302 483196826 351664579 389581763 213813562 782506356 319011044 959860628 878960458 910003037 342368409 485210378 61363556 493677352 83605473 349321525 8373186 61280659 32015550 845538799 719329343 976128488 764535 189282185 32192805 980956468 646463628 631283701 716179431 677158384 829568624 552934544 826284098 574574469 723505274 602309997 990894421 11539827 537378467 142896892 929916401 428135084 963141929 813412727 992588877 99523176 501676661 218959714 750324635 384066181 874231798 43970467 263692577 170359582 399466471 127625933 214164235 205407354 517940493 279633607 457353302 160184463 743086009 355801183 839275396 828745038 961815306 253058103 478341637 278557644 507712720 137082071 554769807 93283231 546404477 36666958 584022619 357640786 667117644 237255976 876384547 237479704 997076562 90235334 259824780 148945962 883560657 772467238 912934890 145517057 571138411 38162362 979114947 913958967 919003504 620312380 633472046 491188448 502970779 165551505 654624773 545851652 551074154 529473651 802881442 44971445 572985836 173184668 365662681 320749800 794211604 118668210 541719752 293898899 698983073 301798513 598083112 415316347 885106663 416615570 865031458 635899637 764112058 479101782 766888670 442258018 963052152 930473079 950096656 245034216 626899501 554940488 737578016 597867868 800681376 297888780 905716865 761948427 911219102 645709849 963855577 353555681 528245399 426491623 813168924 647608194 745897001 192338799 356245546 8450587 390361104 363593792 977307679 953285073 983218373 390865161 537929718 340989387 834126709 780966673 861281374 494077161 656058117 352816494 464943264 160297262 522496192 247170103 603992552 514505478 678752101 534460080 768979381 285830261 707290251 416781817 870599369 724262280 951220876 76344404 217910604 106738962 140812828 25114040 888537144 324591199 409712689 357457581 911298307 341362789 443842959 232670247 517821620 473593316 835544408 320305444 518294918 149419711 823833860 731113774 969875833 907000135 940557493 256381846 354028603 116233060 899881929 899036975 961813059 909266145 910501078 177290699 488536279 29236496 218388875 164266008 645362143 121752986 624905793 513384103 698636774 419667609 627631500 389475951 467342487 265427775 391173972 205373368 399190979 193036249 731202024 341344625 724624270 215081580 377710133 373883073 555164393 158881325 381402774 79006721 400578437 83201118 106441099 54594744 405921767 125369588 928256460 893845950 942937486 639841473 680193894 617148328 975242489 300772834 775232542 490059661 828556411 509030798 829895854 294270279 501294371 327499886 862061861 720024144 911642129 253355053 920035525 900903060 984679355 380954762 843770643 765182655 853169779 675541766 921564078 95296766 225324334 51968519 732434992 89031092 724821655 555007917 643088892 559981469 757374311 229986679 680220734 605535299 734234736 124102106 688377825 242223826 418246159 196695582 600733938 596948968 830148366 551843362 666009868 599949076 985339033 351924764 621920798 145515152 446372923 221195840 530200155 447475306 465854797 8174799 802128770 125854143 626526714 264359635 549598398 464603164 721607680 135027356 227228332 96124915 744147776 258223797 967677023 568681688 636526141 617445130 978911583 486193370 844263686 424417864 432090351 225055776 401665204 339570052 727643129 427321711 686853725 451317808 956039138 49271782 945954411 237652030 589006605 416817713 494501437 215813118 602252739 467309120 480091295 80613041 460183701 423950776 657682572 131370676 807511904 540248646 891339469 461125490 797934029 358360399 656868800 493673439 986421328 574125591 688482286 73770319 735891939 486059557 859943733 446474475 706118405 787979 937228808 416049237 686053625 408387318 485752612 431381419 763541291 467439659 786266572 784889348 872602555 608232711 974495732 29066369 511550438 95852594 571771210 553143741 829834901 647977912 925755371 856986285 880269996 762861065 846160188 296809894 525159470 195739799 387233500 89665457 796952801 89773746 637859239 127784916 980622334 923644602 933511744 46302507 678942885 636147697 872961423 703743675 950223284 752445581 920618375 635282925 926889613 819810298 905276701 125358545 570983423 492413562 988739186 670883010 676105793 648227440 975442860 676913192 756205361 144613029 459008924 435205266 648985490 183818260 574850780 468713717 601518615 233011468 643803406 508332003 920966395 714568238 998391287 398248850 666416867 231790293 244906161 23625812 354284995 183640718 458226308 142924038 584898313 514246194 722797260 126478558 319883375 11176510 971925757 101236286 641485378 104952205 335883126 204299367 745605112 329463142 983440140 715809970 841346556 81415680 704278501 177661722 686999143 90570641 810968880 581565786 866863776 191299269 429288613 31874427 157932193 155964731 683720792 477646180 825418984 273915845 663683499 629179530 844067385 761300504 865157641 482398297 695483622 239335645 834867362 817462903 896933682 195469309 919661628 317573662 852455740 400636250 704961464 376719250 669791675 194325771 762761620 313863864 908953746 341070718 369393191 161598073 736652277 163388287 678102560 331875356 387459900 34823738 671987863 415290889 937285098 920438103 960087051 17133278 134830646 12369272 659621522 112321461 500647957 389253576 632836335 627184960 800417290 448934944 891245229 125112356 835572504 449645093 644900005 498198571 872996760 402238843 467580768 165922472 725394710 49154015 893838516 636594465 711703503 92170518 343575278 283980436 772753434 596376107 743535992 166900328 920844286 630128157 886302185 325513308 811650987 483097515 981162912 111328147 268755286 248461568 566464806 556984598 576963362 310714388 883361010 558972945 970168528 625061777 644234265 112675443 208761015 88935095 329865776 299072994 603643177 376608278 899748247 186408864 909257645 797462650 935085920 731020756 760776309 161639818 502727802 114748908 294094624 290196372 918516019 118986639 529459634 323152150 446058387 406783979 555171423 268692056 933776674 620239591 891809858 120690218 206085227 40166417 222362484 148919300 244262721 121768821 914064996 441596374 716399776 337002957 929968278 474014143 938335742 698535343 934633479 26732995 482481944 334501598 820135737 604144689 900216731 752000613 817585928 690954599 979614619 806222680 990611880 276247684 633333780 468842234 482175956 309482610 444618251 349532498 959776405 357234017 693849037 116692021 150004425 67191474 155468532 103645660 673951664 556782044 800909724 620513611 738139902 579921419 723609235 406946419 896273574 70687718 226819422 169641482 703166911 95580880 191383082 113240930 592373218 418697875 960878235 112927333 547035022 59519749 778043007 507405502 996439398 318803394 996086335 262968447 530773713 307845585 927547027 52093063 733210136 300581396 603228855 82826368 921317719 592968152 865616696 427041665 611309019 608543637 932222592 785892931 941399829 431822586 800777655 4050487 700433718 15808587 149747146 22234578 257289736 81247775 544060140 340907469 342011056 311308544 770568807 645650362 844285220 94610471 628746677 527340579 924462689 890270905 976788472 145417148 342026047 304712716 853198514 328946542 459085486 196904756 809235836 464716940 517041738 154178397 629217899 574636403 625269741 486442632 864005912 288050726 821191547 698353819 911536629 529548658 989307155 590636851 718035846 646248118 737632240 342495088 443681261 175524886 955953404 780195609 951199994 201815500 221790433 163520791 263732299 255054558 292445252 53745019 859521076 94310888 597921058 195887788 209262357 38487813 940646629 881026727 966762784 555059454 765802635 515284993 775129577 401370127 468360920 73734972 365929016 51738573 338267674 114216436 839300951 463697857 898478073 540934828 744314507 239975680 419502099 74965198 764994460 611399728 690122333 174520409 951605334 133003571 388331489 81479708 510688800 47162136 923284227 489628936 642091020 465604231 823577081 261562215 345024336 259048924 615001731 456162375 590208183 6164742 787917765 158177021 489265756 77928056 479425592 313447224 689437929 590058656 803656134 85797882 432642213 281976276 729347262 179509083 803280299 726001421 887079539 494023544 641557324 612815110 725775608 225526337 824576567 233692623 557226139 423440508 707388487 87133148 322455290 285725075 649932922 158865567 167638494 2824822 352611050 331706591 908050166 263929 367531907 283302061 950712782 133280192 384951251 294892727 579478152 8970306 867293284 29033567 122145596 49964112 158983587 19059146 780409765 141724922 236545733 99822464 963877802 30744147 125739328 113729280 798231251 696130828 789972911 645630610 788122372 750061179 878938838 509394478 629941568 617089823 773270436 752616966 797499664 566988761 857305484 837746196 880572354 368161869 507415309 425065549 429268592 301697740 988671146 290948531 932482074 560886998 746097914 414730276 658492198 396534538 609544648 475609552 583190531 546687269 728699676 7117349 560106104 254465725 447295820 252102830 269982415 18891688 343988699 70147264 352556911 31321463 58583943 5717139 166244243 64835128 359054454 65825330 838495952 119261411 968182496 378989705 874279193 352721044 459076058 132904502 169389803 58590639 648200166 319649667 921922032 825839171 982929938 99291149 841849627 204250733 755261977 388491294 953750674 859961949 863062130 18109930 127074956 68398648 253312623 182397000 483153183 237130075 517864155 408893834 608443944 393434391 636396785 117257415 551965202 517462551 822335982 694566589 935675044 716273550 900867997 354362662 737987976 47048139 764081100 29782144 503542027 305328132 568149708 491317522 781089457 4731355 15850947 14710651 30940800 22318580 211058260 204558950 282409490 9817261 303049272 292640643 463146699 249457593 822767762 356829717 725480682 519757149 891483427 28552847 348734975 218964679 272334167 247670307 808994773 407566868 447695104 140153261 749297463 474732847 977808247 568301395 938466520 788708784 850180397 132195968 774919244 635139963 636944579 528272314 796083388 203814497 602554052 474400614 524991466 521503558 568957885 392085266 487727726 198096436 439904161 303475916 639361919 601489768 853935679 311742055 358930666 108320181 642942535 447642899 774555405 151201774 417807626 368194947 590960278 292406071 717140854 697403556 761636134 59824877 262221586 190885766 282678186 213907968 854263103 382313585 803060727 566413018 872816028 674571092 935674243 417164076 678394297 607704325 750200837 159040855 281931113 145090559 278881279 125361136 819451781 525064696 633308347 427017918 994392576 47917741 141445988 70435286 360299412 236165318 386741735 314603763 886149732 661611830 746741575 139248737 775601409 101358310 896201666 46480491 664192029 439109480 552788320 16740186 931707548 785455069 836401210 829076140 906092704 672869233 685299407 339112705 622890077 602274677 896363291 446392175 788956025 149592426 221838085 28395948 383618644 60855575 203507326 34094820 338556096 129094477 952608006 226460094 529798107 487002624 711213531 90902086 299404435 83151791 156821692 118221705 391603235 61042669 178216147 1916459 258872739 232833229 891588186 211651621 894686158 627983664 891534801 666812540 727478410 580546035 884240127 254155958 833790613 313369387 400202198 365309441 848788085 794412946 849032614 403424651 587838997 171539824 394288341 360266263 857226149 426311668 867453496 278588703 456907989 19187277 712371932 378850826 916410123 511261261 971102644 704975956 796651718 605452097 800074387 614696785 752456720 404148503 429368196 13610638 224141470 185637619 464426063 360579705 698902516 469774523 833393768 214073915 891534621 45975798 518668452 252636032 630295087 293241628 996500931 499438376 544515741 370224359 439739238 67939877 521114074 326936629 432500550 289763305 309098056 55124589 203573486 113187744 780453316 685499598 748930658 517800908 948041644 18159688 714257224 148110313 743220472 588739565 797794071 118897063 998321732 317897836 661163367 647047691 845190061 830871041 984862232 90303597 491717017 175071764 733534511 402621200 853540945 218196995 922687694 453108358 760475384 582750310 822653159 433104269 913491838 673165741 965863085 18346391 849093532 137553233 497688361 462361125 538673132 114322386 262531945 63400892 205369088 139159140 597400923 433361152 969078088 366732156 644636131 311173958 793463891 785839193 859208111 558773566 638636585 139264460 655321518 162980240 343629609 305281755 349277509 40489517 752319356 582877110 938933133 119193294 866961364 843420554 892990286 753838914 801967163 524792037 904265499 495443415 962135905 178136333 972882987 700154167 940198422 268804262 597065807 386002645 559091691 77218942 780242180 282815162 620108469 615435431 766664391 743185806 893304509 724570880 869867803 749022186 818271468 766303677 778317894 473550652 760867983 644206585 744556269 734632749 868472265 480732880 893538379 420472867 803438177 653356268 834714891 374679771 472796639 138598766 643877556 176109476 559481615 442328454 497718314 198738757 971615418 971172472 971907975 349404356 517465181 20980420 123133222 16901928 992772863 557785448 831937815 569777679 851891003 415010019 505345883 273321931 577493560 345004247 461644482 235427503 878582911 828250778 971187304 679155434 788048327 699508812 730842965 568519227 671308706 38613805 608198138 326661614 408860634 12818372 200667901 187495899 372814226 276614825 343222639 5187738 225327711 14925828 323324148 144907213 563426287 350344829 609593669 601126757 829341352 165321932 256261022 215104415 494166743 330537644 586884322 366221287 834585950 85953730 725496958 78462999 557986302 90301692 728634459 538011349 871622358 600239123 750225367 556245522 830104356 159202855 544336186 404882802 533290567 243322627 275468691 271116088 411050956 258051900 558621051 99539113 138468233 50099961 652038827 21136306 634251459 234592087 295889772 30774025 699684120 305655461 581744155 145361431 842113015 812035573 911020041 755770217 786064963 348230264 409017255 242941835 605479543 26065133 739859987 403378041 754397404 499896984 909011369 792026056 819189050 631037455 764981256 291366901 949816171 293456873 891521003 357526089 553434532 482228664 542224403 393156370 920120811 475856327 786311778 524434745 776067801 455614533 529215051 6720113 905139500 395229972 568438865 364408616 435348828 86987270 953235735 414933362 912396657 195800710 912879532 63263372 259939929 65947065 468870084 58918193 460436406 417257629 889094443 695667998 762108929 582470071 618807531 253793382 749129437 305131669 667206017 10577401 412998280 121330450 215384049 40874351 359578483 314223093 496341167 380092855 695685776 94904392 823647578 686238476 791564496 586000109 912777374 734233459 964904996 581809336 708248852 542256530 648596346 423473024 929463222 473438441 654006056 138649745 899680475 420351937 625869590 28422967 755803939 318257491 342599159 245178798 847499375 456300086 729772666 646187177 770144701 200519442 248132292 15903185 18940964 10111353 765076025 291273825 443500808 352585159 771892463 583203780 642976325 441330478 738832570 574195769 730421413 297799632 434392122 310083905 672848532 67740114 72866406 3371298 809594576 90574725 292146571 121768480 197453490 163988786 954506140 77479326 342328784 244556231 561285159 367048324 862417065 686562043 878606924 77326852 349216907 299276913 503775052 161641044 666622503 159054055 509317237 367848282 435203774 349508432 941436056 377953681 950899816 514379283 780218754 169046230 500756441 5195301 741782261 161192036 376631764 154483788 631644722 315799503 893008012 859216234 955602203 774737409 874774682 546143330 655725735 243960753 844436175 137945071 591921036 36306526 933864192 809779540 901243257 809046844 973571560 430200945 950925364 165249712 486631706 270340596 754136490 672845903 764574749 268051591 851793825 259621826 896801807 855694662 878184342 423532584 500602838 451721147 685443348 604618659 970527019 747964343 868782771 477507852 578339257 90766245 667113276 75726237 448450043 287375771 831622184 469916522 679929234 600065824 783055105 455135028 543194695 33148772 520157276 293199430 670499478 612760584 916469950 306911285 323853524 54745446 324299316 186779395 319954749 50163333 927926477 811933338 931442052 669905399 942803890 402995487 677295857 435144840 574627608 75741114 914945159 698109358 791585954 136080845 912401822 350233327 669162540 301922713 799428415 46079006 198088475 56005190 952465380 269799872 730673718 319066953 892702375 739908609 969391071 15420516 554223929 205069175 800334179 331085751 789325556 431392763 801518581 11151723 15231601 9527557 214306762 146970580 369833168 262062979 300625293 176461743 462085272 227190286 928503097 225573598 910472898 129797310 648034722 181982449 336853849 324785549 833590239 807423324 948238211 219883023 360999321 200102520 519762478 394403484 651388403 404229300 921321020 369421139 812488020 460515104 886344484 167821521 465325960 180573523 916946783 183016831 502430079 86605602 831201448 711098162 846510851 832661225 914408114 747465354 812522632 37499959 401445294 370707896 973322767 797089934 991489049 150369954 969791676 72046262 982462473 370157675 397336736 16904193 415782421 329758924 578418676 549412412 704238632 495423855 729002657 640350763 738782817 540352092 910100057 763344361 775948397 330363593 861662692 402849889 885153958 667670896 909951584 353231011 363562038 359233047 387495353 160332886 392859049 211314398 658328802 449572129 807611292 344351418 658031576 447872100 448126129 269335044 397224651 248488865 355870055 82967506 292366676 128255800 305662023 224266013 307946433 114294160 994418943 348307626 993706287 627601846 845894649 158028522 763965940 325751850 737841916 524947081 890199954 59418633 117171312 85663119 888204008 461774958 643575236 635223402 791715701 4767622 84560221 22942467 452019455 256570430 586287767 36187353 801566814 693895753 978098277 670820303 952604409 460908153 870699836 865156586 989602907 546646039 970166412 400607976 944153600 863145738 881111195 472592696 880361780 682146651 796001808 494975851 892759342 752891134 839571868 554754706 734127268 480911774 857157020 835814679 964641858 581181766 710391847 575181567 706195112 639489967 971170970 569578131 795880716 406284742 859947471 314383061 760702588 415908671 772864834 70957173 633083806 373070729 790274215 86625165 801162382 552496189 578363875 15656619 395363442 377198030 801926955 429034200 922682163 442475307 596939787 518305639 645764579 77680244 350775565 10269494 233870281 21447476 990908615 155550577 435225460 97509275 308868566 12061464 829889133 583296300 681080892 646563586 704164372 152238385 993199366 240158821 647411872 349990493 932354504 806083314 958407403 598908319 918632755 452895182 596898543 164312295 944510188 687971854 769747751 333105603 344263871 42332296 695286828 165295095 620407990 88099040 915584763 521107239 527107042 295509984 530865975 415076443 800341059 643088000 723085731 559263798 904899057 591369225 709055983 594072980 689366994 323358650 572252926 455656085 613643342 388110453 982176428 252328008 328723325 46739295 648714529 178342359 944077800 504276979 815968528 573501933 983178458 813336126 970041129 302100049 832211564 204924745 347170222 121590484 352538885 320646511 365655554 206530369 339900290 308339501 913740071 67155559 551633315 169212479 430617522 269005121 934483359 395995907 863115787 784043913 862071902 6566776 847553050 164634892 994062800 316431155 503749521 112479654 361092333 287314390 943317673 586248014 686543235 598957572 829717335 131722774 205574289 170210414 223881192 213124386 674687885 636828637 821795170 688192666 974142913 619677624 768105637 627859833 927788766 749836101 757379535 498646495 658417277 32585910 125445401 93776389 374994057 218719593 599980636 352863459 882190148 583353158 610378369 505191397 547456630 188860661 579254364 407935900 909183818 725639796 860170286 437007197 787528637 597118834 999796070 771773304 878912052 621301880 697090277 55358831 57074385 46229478 749046804 351239510 702886001 60647136 548932966 421039610 790531275 108088711 255896565 41100755 406134091 61237315 228575169 171969169 387097312 72161377 261707668 1316583 993972984 811769822 981365869 377063953 579665810 44463199 662122247 263045641 924897223 297592724 354708738 349954359 511298301 313619421 749451938 574490144 868121991 612290494 653236141 13336924 15345598 2709391 779541566 349995449 964643747 455021048 508503759 401091424 991957028 458626732 642780578 59446108 755771377 71950893 83214257 83178096 259112707 59808112 307585985 22213688 80437086 68525254 307718787 304633581 760060443 114936823 708031831 486378585 527197879 431117231 771257557 178739214 772334451 268060457 605708518 149771869 877342922 845346751 982311372 527008559 813222050 439774080 518771130 488717733 828160948 511849559 995770067 807110933 967544638 248544723 750563069 92976748 696341442 189339955 665144315 60746968 464279666 15546839 76827124 61686233 495466177 93188409 285189261 26656320 147127840 133350887 649468829 374567043 539259247 479958230 603655636 582165141 727888253 208726594 304994852 209579982 641629059 95055165 878789983 609643930 672649821 227099352 921559769 218039694 328995585 317337285 695422631 260883770 802670195 83848825 732787813 546518404 945579399 434391341 937893691 344147132 421905621 142876978 599678458 363008286 669919486 229030060 496130312 477318941 730604012 68409963 745346439 545644104 642585779 167085913 827301424 130040229 144514027 74014440 100177695 31162747 988756584 100705223 164917105 121275418 278045928 168922504 767369764 626651487 991177464 775949482 992468748 790890842 940322438 357625234 442668373 313956337 634949638 324996270 766681794 403076204 741906388 582022336 636929299 105368321 515133790 192244666 475170147 344290056 481392716 277837151 699545122 203985407 623483876 387973539 610725539 216343913 614340417 126487791 486547114 31061914 856283569 689270854 973722156 885831362 918292548 210235967 619433701 258488738 910208324 771865184 808790614 203253946 701711991 230001101 687310534 529063409 678344778 157667867 184774697 176002593 525356543 316757681 741701524 128422830 405626020 117966123 818299446 770033585 968873462 761115586 979144812 654453348 796825825 634772860 901816871 389362410 404398143 332122108 757662421 687579682 912943774 790448616 883500119 242471024 929921092 294860958 449150048 38934216 355531192 212767868 751368060 349609872 673061185 56837703 961319709 611940496 745658316 213380812 297693505 33194878 573067665 44793775 805207655 290075395 727553984 89263803 679792022 386680048 888674016 852359459 980307241 463201926 719722254 472677696 956298774 329706697 720142892 378935702 563248752 489434579 985098759 211701821 319949942 133337271 829059100 297058574 790631331 571171952 638449618 603406091 754243783 457254015 852679587 606776105 939084502 153243879 836106988 791481223 803174335 327041290 822207402 404585545 844762902 273577958 780736733 244135678 366473602 148284943 367148596 29803530 886023721 327513556 406034384 318939268 840483264 38403804 227461515 22816067 64957848 8309431 282250020 270556123 951667039 736942055 833192172 153065654 790269829 388671719 706023659 12353518 892800606 51412779 244379419 125537447 315169947 260598685 951511774 847867094 868238048 526150648 558170187 202313972 226609969 162122223 765236747 131558719 287844004 118263641 850832640 599320870 975034065 717429396 718062218 147384133 239779920 21856446 326687263 157645006 786678593 489382353 610760731 555822194 820838016 790548973 793868104 675082944 788813290 526353167 664067259 70192676 314332259 52859813 334560267 212294475 714900255 28781653 368944452 304994910 470199680 339333348 943827252 520216131 604330018 214864251 268661831 235163697 517288082 516494711 634223968 258291061 788294202 141284578 332477242 18680004 614765687 110334944 713557324 617717405 857755168 561070576 857466963 54740611 786179450 724568838 874155739 429103602 460735664 454679619 526141721 86125781 529175414 174628797 584899684 274800004 815830298 609593444 906576452 552196366 951023855 83737520 691194891 295248387 382732489 9666366 359688937 351569079 424996386 105594694 408857143 2257888 328986254 69317585 116917853 102277788 658779075 424328538 469163590 442917641 949660208 819126154 907453383 588287069 596413349 120564423 403111575 29572378 961664326 254657950 339079134 124638776 302533757 227382956 850179641 546723649 772592671 110228293 926821297 259263226 463711474 379613661 623632217 205777697 225574192 16441227 224333722 79191142 804129234 482511250 718651467 600530360 727649840 271719216 423014188 243251492 909053069 608132029 686969654 270137061 666551468 288847604 482291335 471594680 773241050 69419420 842303184 603010307 643242228 68803446 956227278 927528448 996833464 136012787 451907073 351232542 897988664 839375858 884490339 629719607 635013489 361849862 662210174 370951921 401510388 275797104 977681580 918684481 962244383 464352564 920989717 626657281 645540441 50316000 546907983 156840634 880037136 799453597 846959170 132757070 597698246 449511885 782472270 366610590 584260687 88776342 786150250 736845886 976317872 659814035 724699820 191779529 404614779 113361104 376769677 15976615 490221014 418877813 472452956 33603727 216486549 206683418 429588046 252730838 421306961 233851958 951848795 538436081 712419312 551229166 731027774 484658875 927372543 889577965 991458198 836749453 965172614 468667230 969939095 519396051 962105617 50829820 594182151 301206783 581409693 408704662 817015123 135869103 379717619 65943069 795871333 277397039 279348644 52991342 823769857 455579816 898565712 494630120 833249533 486429410 516247634 420309351 774639795 272276797 710000963 262475090 663676115 591345556 755234463 736265802 760569939 55782491 913191059 762011244 810299440 591589265 938560922 597959544 696733861 648504830 798808985 727075904 957628937 105413364 219457142 90245377 908650015 617375792 868803592 605758 34769725 7827627 655450834 150730626 157187541 135594362 589690619 90186361 404275658 240132751 861522916 764136151 776738734 742620955 834949832 535543104 813399223 762677295 844525686 354157625 368561266 307450568 614836617 608629892 814794863 28398667 838009862 533087473 692289566 509824556 569822957 229100542 960493767 527699193 568881079 334420118 345809327 234222338 656316103 330343809 659922807 45537503 601295142 520249748 741474856 556319529 592051557 495100099 768959740 78876692 614565496 34933049 999304391 627381597 983471222 421436929 792290497 185995606 795766238 278241639 730877707 342835302 976136583 277681763 399806900 82852466 729646589 694335338 906084401 33547414 945342786 68765645 308858188 136805867 873202460 828254499 917489453 865702629 956545243 109310574 198964131 192485673 938553452 893761513 901788020 20910906 180136220 145489946 591298248 356395099 915229786 151241348 157666701 146573141 231865969 207754592 761667407 543487259 704475935 315257771 974342364 340769547 450723953 176753092 447788209 293916665 860088930 493280997 553077296 533473603 561174506 414070451 459730045 425845587 771863207 659621527 781258202 558227630 605433295 184235418 654355301 151944168 800465350 393067577 753830642 352189843 948235367 311636406 681920853 601665523 878110939 76301622 198896771 157415322 303703342 232471907 713756617 679965931 798149320 389077742 392291427 349425756 805840698 505122321 946106806 782115547 923336713 25814722 744704272 109060895 964911021 589666825 855658343 760000304 858085410 684406513 794150532 683404465 806219248 240981580 939330929 569415709 621871736 164370355 562261463 547103256 851781019 152153226 718353666 305224802 646129053 461360467 888349295 317114507 980732660 795984010 806500036 611971700 707582628 233508953 603977129 498972103 872088530 290263078 725855725 590675728 737972681 425727492 835851245 118880543 510761937 253128631 959296776 849503830 971294313 866406954 985102098 330813189 472173405 347470088 360894427 60016278 776584190 405798022 618312023 361097791 606140841 80766278 592813934 315170312 847443071 60398882 427119845 262009511 596232933 84377604 486275539 145865535 942402545 371727681 767818003 82739571 573874630 568088377 958865569 933272245 992716053 804108593 880135820 285159852 351896502 103440041 362703412 19331246 360327052 131909692 304401150 113158238 409293796 48772964 583367139 37342416 475976532 26975602 153021226 131863836 452921741 65484393 341464852 226859993 648451894 111904913 863566174 100773231 393685895 160190099 872148680 803347342 824171699 100300194 110212312 91923379 768744703 687344977 746380223 386258886 619207365 70166011 466772005 167578549 236957086 189973862 870964644 119789982 177292974 43090023 82930649 50368446 228855428 109718627 362500705 36317674 229877362 183086901 221441815 118834298 572818760 469231583 820769197 466138977 726502251 15472837 434116271 384734179 827303431 429927442 975941063 920662448 995667181 560154893 609727996 463589400 864781324 640224200 919361464 453639772 799822094 173076292 370582425 338609915 799066055 521508482 973064206 864641709 927715139 545331458 565886289 524887475 901673771 325257350 991269711 443784490 886602152 846136487 972432577 663103946 780209247 410341392 635771918 257983674 924681276 745185657 879781473 550124998 745525038 635837104 746334986 347927820 432790110 84647404 220595489 2645165 73487020 45162448 176793244 78881175 925410497 438787584 626872767 405766437 454607914 147206121 473259593 276878078 491901310 264828608 437972653 35972711 394441942 309832870 989696420 878041088 967781074 17062803 866254844 392608077 489479549 267519235 288943002 28547302 577765509 530699449 576179924 168296067 650129962 238017207 816612782 344834682 980878671 697118792 883401904 515537806 984498619 299187048 921886316 578938551 921732967 619484378 834275092 415487862 803924727 325319045 433915725 192121933 592957791 175517116 235744262 80767315 909021783 467173892 940494203 892715304 950488693 523978037 628891990 611786969 828066886 235749000 635357960 404519107 551525403 67964065 613866868 577776638 666565974 349017188 772481742 687104036 972992115 941298765 984596758 620949238 850995554 254631712 546301894 175824425 566685279 237432505 463957308 333445447 468036750 21292536 130083769 32955359 552478991 527558566 940254669 608143327 627503650 122881534 565861147 441403621 690209212 238630539 806714601 232273811 280077358 71842079 698083951 81304216 472330203 131652552 707314584 115087584 232233238 176818791 924786544 397287626 830652533 215319980 435577389 282047060 610906152 120091497 351519080 350478508 669017492 22495277 912340020 339024721 767054466 108439012 266453713 21827436 775204856 536684547 680083772 502007895 687657307 535268006 810400453 475307394 714497713 449354740 481391846 151640279 940831612 468018252 876884400 718526217 922806770 875996804 995835652 479880037 972614034 945949482 970047691 690567103 836613479 719791442 885917003 718663985 776789572 684671383 990163831 915635050 971954175 860362624 947124558 350895754 569618484 298890537 301302176 39775939 110955523 27136359 591233206 516454616 889810427 331600246 474798717 238935976 993865086 387028387 696806770 45405207 369398509 33262146 417680733 244357365 442218683 213924509 974192944 576492216 682671240 16895379 491900467 189503417 563125462 303868561 372393899 162014891 351682270 243136130 483055823 359575829 580518925 492835440 865632637 494734591 809591041 84139909 549234675 529078152 577389379 147415545 949657194 569103544 794648192 782875663 867861526 664409154 861541846 588501315 813078635 100606764 239417721 136532092 673446015 532964219 617614099 233069020 969565312 324826294 886896651 14484629 839226175 212911129 582375888 60012591 538056809 322044479 385124217 91255357 676973123 5081529 499706689 466832000 639386442 549145181 960093876 693775720 718667200 711583257 931811750 646815114 994539822 206839253 477053307 75528769 387207525 71131492 612958772 503245169 660520236 162392016 946216532 552042751 734052408 630757041 641996073 496309472 907982325 78802193 929818529 918911277 946887272 413858944 979112205 623823235 712816348 300269469 905423483 397294977 698267010 159366933 473308570 493035 488111229 293351005 803638146 435346477 862619041 368085517 614672544 42289540 540001797 206764443 433931718 425335980 699978731 292009045 509809925 194947582 520777549 214098676 612298832 410444430 666178033 484197155 997074082 524365351 621632232 596017902 739397514 596303571 661995923 227705138 849929385 244750034 695269471 503127854 519015909 304889875 414653308 376260195 892191754 614110187 856742212 823056808 928480848 364028588 447039846 177777344 745166205 591802122 749609717 25368294 120455392 56836858 114820055 99594312 100079936 9970902 434594502 137919975 630412391 240529351 776000415 301889957 642272369 440848783 534931559 156349873 741716602 367394741 450200527 405804845 454687428 76986018 132335011 125412565 380114988 199401794 356876331 142548420 974549706 862302279 969816375 672112205 909192119 429808614 879647782 630823884 869097390 305918821 752897393 617960004 928260528 356496394 407398238 332013753 557564834 532457226 875393641 425498151 850631067 242433366 560148699 150502224 555160404 513723050 671280059 617310596 619634417 589659749 915655384 551691292 656631007 182806621 670819125 580099578 656336254 313654443 338491993 176752624 992199502 224800128 496875901 400259249 926148596 200870129 847221938 144904675 850686831 741498278 998203859 458610309 887858311 383591024 902863725 12060697 16074223 3425454 135321488 16595486 631142339 592875330 794465351 305538359 830355430 90969410 903430570 323990568 987078806 50406292 395407215 121165518 792396294 21738002 209814845 51699151 956775075 154361360 383443628 168815678 710359214 119175626 618626862 345900561 866823787 349956416 572263403 172400 146378351 28127979 844828186 825766144 907229863 735363725 925946915 264352536 752399383 497374082 558842748 63747597 76540637 8913064 848023987 431430003 893141820 534665747 637688627 83554570 427004247 65356050 140907972 37869702 282474380 253331947 433309840 243726394 445100950 218739542 790553572 612060972 752426598 399083308 831999334 387170381 600823630 217672782 937948115 453133684 968671670 512409321 757216131 43028691 796320743 485253380 966848056 37476056 135347806 62754032 473178747 15827848 173823558 77043880 691394670 191222714 592118056 261033754 867129683 709310740 946543475 96174009 378637082 156390243 162567584 38229873 559924521 288767570 557509988 386107044 777295670 244344807 377283880 121883947 728527158 678877560 680072727 84124167 618939604 220096328 248386444 173393698 320590109 220554161 919930564 794826783 890125539 13177703 924611414 624059808 975815506 211691523 941953887 758156224 885214607 387134876 737965022 371874135 488531327 9620001 14918027 9692296 124336603 67830733 247775504 234735581 445133374 373319712 565746631 241795647 775938118 594831485 597793806 423563395 868994941 12751852 547388951 279060776 904297349 14218094 922301575 397583270 488874763 449342670 502786440 376851087 566768795 196004958 487314141 445811853 806367527 177233875 341806925 243246127 250716835 135518353 929938898 892405584 922663962 726088597 994036246 369116431 641878037 19589082 27060636 25141679 297631596 278890607 522657413 161521306 205737541 192078571 445793163 171855144 602890339 586121314 688608065 60910 409026230 156347005 268414482 156097631 211660771 106534242 247175302 197332246 500455919 496149154 699674943 474803674 921471785 436908188 717803262 104898808 724842341 211724510 514076528 391974609 915432726 423802140 532002484 71873166 969284401 914670117 942386646 514439822 850816152 488702639 730205629 215060203 921236240 646295089 651022930 516214777 633958014 128428629 291412584 72102949 963537327 594076885 677013493 318755731 361890792 34333552 349178235 49140623 75277973 55430545 514023753 181052160 887576739 233864425 414415617 169729861 682255891 383259569 518455489 297402139 505533172 176744979 713258734 306932347 740195924 594427911 715694832 105349585 597670187 567552119 984777012 886145506 935372871 47638613 781826543 700763444 916028705 174471663 407322747 239772459 631289939 607600284 615582494 203217593 397567661 89828621 361583882 18835085 439542136 160605850 506159838 90115211 111402563 90133967 933531190 503334812 860465723 415993583 517437733 132762761 708879024 105929996 739378452 575066226 812387628 361660307 806361608 617410122 711121300 545398985 552006815 123413395 928279892 23279134 417336964 253869622 902171464 880274634 940773193 841590246 864643200 90849658 765731989 297400598 600055953 168198596 744507575 576986245 888881359 722539576 974828196 58970295 705631914 11540005 490434510 143326623 389406811 308586571 720423239 436003340 932437371 281628752 442961377 403299800 786988189 677594569 855479601 721751579 913359665 176415115 231775425 35335421 849496480 454953706 848724941 343189261 804205125 149349039 185411448 37558801 294803453 226879112 300000465 272450911 334611478 192466202 930347927 470206543 836752860 609386664 694806052 192606523 398279436 27409482 137234067 26575232 984164466 152614751 788329438 715223458 875500052 725822704 869512852 76387805 857577341 578028188 973244574 323468129 597415495 482163379 703805346 146713439 772711414 47173537 928773964 865800944 960153617 188917090 598206824 18773147 196542600 17061336 209288757 14782358 757130082 548346330 791738820 14799620 636699860 571191277 785998353 304724198 777534749 266252987 397460536 44595208 414642494 119192672 967751089 758089559 976558414 82589118 569844703 171255929 270671433 231434192 864973056 428801065 651641806 389995090 572666991 437357299 809197069 395134521 518699035 159780101 686825728 477065050 789747634 567015151 987610174 468361228 584359092 553511412 840166778 269006476 385727930 121778781 301882872 233839649 727989479 524582734 631859937 1240018 905777397 641299789 965854626 698842315 866285366 475239909 679075910 256624458 742640751 426043698 741811210 716126692 946256147 608704681 715079017 92654921 595783088 64101852 477784941 154812946 358924883 6557846 413989740 98383795 809485504 242073651 819756001 64126578 184883852 61709126 252708621 221927982 674513322 582499567 739508307 556933654 565192777 446374140 761441075 445019218 696987367 544844894 810073527 31720945 230531740 155447783 957025917 478328682 884583997 525105711 725994889 178404980 831144639 684865278 924245643 774287317 940286017 595856234 878968746 678867422 718267940 697908071 708177317 627516480 685952216 307139500 448278162 282837098 357525810 342126152 380949728 58039029 86118960 29291186 447587573 8596978 219904479 110504045 471570773 396681932 540117296 173685647 653203811 382328776 390975067 300568339 661154146 459450718 799295311 269451737 333330009 131060052 414618120 165744884 531537526 93236051 631127624 69116718 258708570 201953354 339442465 152821830 898158833 208374600 616154408 307640931 737735824 45261633 870994736 683378310 946402156 277303487 486758625 319289383 435416378 375182628 713305188 449589641 560871423 310446614 533645787 340797837 872456588 140429570 240067548 122347346 747533041 495775584 922718532 21364918 902266810 380342421 999742823 265006764 642711537 254655194 835698456 925813755 888565836 915192068 168527252 409213689 73214264 661194419 544187427 676576201 58659251 927268608 893951871 903076610 459921322 493048326 242833789 556825582 294690879 683326893 355258211 486820979 371746143 986462355 276553572 370550081 273323593 547575255 52036124 141426799 25718211 675694016 75528415 512954916 356438459 428035149 389383549 872676915 581106752 875567787 423234151 699715346 556590616 860780072 40804071 297475412 227212886 301956604 9214808 719233363 331866019 833583404 120202342 852063022 343343700 346734254 207082971 315362747 146445841 771362641 43030174 901394453 497694577 876539529 610073654 688440359 661394256 984639180 579616190 661851851 32659155 332857494 736137 328880078 249674881 969911189 616024967 866234254 404907552 920040359 282636585 607433493 31473770 318981392 77062664 556241820 235189773 450851036 220038586 492907002 311518951 648517975 510437021 781056282 503700448 582177733 295246666 345760958 97226488 956317442 322257855 407852472 125642066 599635121 583935888 804158022 435735298 996930801 200494785 527363369 447191028 669692115 137111334 641811416 271454179 943323046 251416736 947144397 876350466 885665674 31670180 412399670 330267396 868794387 137074455 154694599 4615049 984578292 533940653 909322893 870545049 989819142 724209260 904954736 582280426 762671260 751084095 782559107 94787603 409623552 313455590 670042159 228566456 620779985 409810453 489371138 13746572 100098073 14150727 670640599 68307928 141539297 12956362 285814919 223778747 298174701 234435892 624635898 481170506 714351689 529641756 769366913 750120458 876604643 776226287 839018348 465036916 690088180 258810671 640693089 321100786 376573584 176094329 725300060 235737366 804878951 175257144 787876924 218296315 449847770 371603331 727937028 142608006 224067006 20483428 617789955 213350115 258851977 64278774 119924747 6101054 657547230 240343759 280570972 142609343 639963503 545048967 577969567 41477455 680446312 632624269 751781504 698352971 783419995 678674346 821942578 667622206 983466123 643531682 663668583 323395642 559265535 109855924 339822639 134581976 187199930 24128391 312827471 10542013 850355366 259962823 380856075 33662726 993148347 620434191 654357316 264448648 553433010 189015693 827012989 323100774 880075832 878197955 983929329 377947088 837711743 149980722 983841337 182454085 913712534 393465397 571305799 116786067 443311759 249661450 645326987 572298551 798965489 109692902 801926965 635104196 753742822 742957015 852902836 425412943 970784234 18586866 640745315 354417529 934540580 173095187 918662359 553323718 858198365 425683094 980586753 258602785 331969618 84473601 779247021 165786742 721361497 348838308 356063971 17804976 146171902 37480206 554017692 200243873 516230740 63995889 421950336 248117187 396600920 190583178 788867746 657075857 785755016 667949558 753109785 21224232 757041721 704310436 970089690 246432107 271025396 178327617 221613698 30766792 850451427 140746315 397144298 221003895 883888854 302747957 839480839 29420539 489145240 383386538 628571288 512184933 857620465 533756899 558295073 531884391 888748503 68861158 215372802 105021332 287391279 254783482 845903090 3395023 590320198 332349149 358477627 32538427 49900826 15086209 609695288 436498254 545754953 415212396 629510616 536485526 671582785 39100159 716721557 72233264 623292100 584050599 977911527 374425493 959115390 748382710 837390630 293866972 574224380 266427728 986756731 540686895 885312643 314236018 795677125 154440137 708336743 211042634 455649153 26855314 568067547 38572314 694334980 684986391 785106772 250316761 723023022 603987936 888649311 204869544 351743160 316255021 326020319 276435397 299940223 203103424 406275824 297402845 667169887 35284085 374329219 207956964 988299366 483524362 491290211 339970363 666506873 56376366 170596745 37241253 866657492 849692862 988098549 482782946 931880261 593866456 756708503 206826913 586590866 33435521 724112263 411842760 950771532 85552596 520799843 431018808 962099739 310729361 890571239 670336434 927854350 344035263 456691200 149075355 817293404 505786471 684044465 330180852 654006606 572872718 903226599 619754146 889839863 953260879 861775841 989627541 314222025 356824367 336676392 866582936 10357035 495115683 50791229 453818922 320723983 596382044 238436843 557708699 516510816 679389875 142457195 449685855 219392004 982878989 811522009 860547151 691598917 819493654 631081755 958391084 844499106 877806106 730994691 865219279 120561246 579941477 310263659 421148611 98039728 855607468 178894309 719043995 372864609 585086221 353940948 936215456 797707886 887025195 712544062 747688140 547153295 664657724 529899117 739778780 312250623 388914264 375405355 797646522 603931207 650029211 637099836 675855946 363802870 775018553 219894535 280009044 78154585 144813732 80538290 213490834 54182617 481245892 221411409 555704870 324421416 387873934 41706915 309098600 22745780 601401387 382020363 567161710 364908855 679579891 582998523 655942094 69382170 686702066 256608525 488408486 404106775 426235402 117923067 585400837 507991620 986050144 954538465 990183565 158899395 369600317 301380298 768466553 509697405 720754307 707989285 767906041 586607075 868267909 630106961 832432231 762056930 859063924 67406507 305237361 270759675 628158765 142355387 939527798 273209747 976212427 574016020 896428374 46719739 458056701 33380855 250277089 177306472 347410453 260425851 580445648 36645056 202383596 142472009 925764630 194136081 376633625 122431035 807301544 379045485 514822976 255840861 965348640 903569070 922694039 88119525 471905052 59921384 803131787 784211028 826048616 15876148 183647274 59923076 150039742 106018036 830748990 719731908 765850434 667187308 850966467 621554132 867174054 570715197 587430852 288570046 486379299 467059919 644076740 263667029 457325068 264873808 393228170 349234659 852202149 325757112 970945884 397791627 551560102 453378909 906680623 179065531 834225021 184632422 403382276 119392089 415243577 175737888 802535676 649631048 770994007 77517141 569795765 369497716 985236773 428690462 810140941 626367164 765966667 476594849 686352071 516752583 893078017 488684469 673532260 175929772 392967772 298548223 811399598 792647471 928773582 228179505 977014792 541163897 771813402 132234617 902320451 401959851 589364312 216823587 468933679 264332889 703618533 40886864 936204294 714992284 731679956 386465141 885037374 133955315 750300233 702350318 755548769 48551652 515704240 280391456 285493981 238492946 730286855 704408494 913079083 172811022 426710965 228598156 236509238 67110672 917658257 316898838 965517044 134092118 415148684 383373595 410883673 134197286 367546091 36602105 77479389 73148474 425633989 19065541 55771986 53633909 136659901 57229783 388749443 330498990 799827130 238940900 399954236 62318061 395375884 82221848 775815006 220994819 926623746 579267497 994137715 373226146 866513702 768937645 940324732 219053926 261256221 182071355 820585828 296593578 399976548 250292968 478780643 344603739 633512847 195417194 699305189 46892999 793061853 616008987 815849262 412752498 694346000 681796623 710015685 396969194 681725879 433349531 740103491 423253867 859487621 451806085 551657666 264526753 762020337 50989022 667137800 590092533 817712186 230292089 936480830 467985737 720230994 698320116 796939213 243948780 443479314 230388995 402185923 23694645 717641864 454935956 892068252 268152330 494791108 250301944 395174751 88540177 209331737 20130913 510644664 260108302 638701445 631259730 738907283 235182104 481288530 343447462 641865657 641523241 705869735 187039669 648412476 226694965 258881554 234732172 774729448 612083260 885877670 473102026 559845474 246454079 609844121 9776027 208974943 34873374 59108339 7287627 772350029 635046120 699511965 562398264 865918441 862446607 993900773 627671668 707462997 151131908 834446747 363584015 633555953 628698609 742451098 684933901 926421519 38885754 544099079 409645314 607587726 451561160 745997648 147762875 515416149 439371165 629934063 91502647 854358775 710003866 783000610 360261879 913672222 154834143 557121779 210670296 802302019 299323600 495280331 324222456 536832862 340512931 485583438 431421833 580632666 109872326 796204403 221354587 297995501 42293406 950961416 216904215 452051346 194867316 704901470 624345827 742531486 13484115 321319650 187318468 522492633 15277936 437725125 65107038 898685587 129248245 327734554 241273917 582869013 579103932 806838006 268042844 400935730 378165793 984898377 634939107 737122030 57490486 929241600 441532302 907436159 314478113 394552994 235636218 763056116 678932465 712241650 680224386 948701736 128567074 587473729 343196123 847905305 387934930 912392820 216033660 715257246 124279398 371606256 129596634 172907317 50372808 429112560 276732796 942669506 762448694 788752570 690645908 930968516 546645655 981340361 519645966 638830399 402835066 644825975 452760799 895202976 624186471 656335684 402123959 518143942 186222769 471580218 148755500 616874691 595246829 992562490 185356675 389070497 260333941 507745509 390323395 588716070 93311341 765196963 52669665 259330800 164433778 288123866 44492804 962130182 676926159 857211298 392188667 694036115 249975883 545623483 302951728 787649888 223445128 784919763 171306616 749970373 266968663 759063764 176986796 780013262 747156917 949979110 816223123 818637370 523316285 989666864 608594904 918462041 94388856 839443430 540798219 679961303 638179508 900535056 846952211 884072647 818556858 826237848 7645781 202139155 189578470 257546532 37249737 863759691 305715236 933196506 492894538 973649358 911702605 993808853 131753347 668111453 201925765 617678764 359187990 464810910 15718936 182169319 157399352 602408055 140886084 703850090 98444560 732010867 430320628 745707793 463643115 959735097 411840701 672234214 344932791 844211062 94530263 881325935 781871227 859556666 281007469 396375447 238470928 457943025 287234368 327483125 220988396 519910723 19732637 834394004 416326071 579369140 263320086 696672776 504663099 890580032 88359569 995072558 769420326 999918247 304769590 780896954 239338499 653698327 466053186 570097458 17276052 281292494 55454089 733922913 85413648 803219639 384513118 838789520 522614590 776231631 27081732 595599079 128650495 644556671 516442273 779386287 133366678 585249813 259302543 356131199 297793445 506309715 352665498 852644959 160525166 818312033 305181822 814185468 688124852 887411172 280909015 324571235 240282278 458499941 112467438 409690539 3174682 988143969 265662620 950729731 362184271 388044350 205998888 276724472 163471118 851108746 725218708 994805733 354604710 805489781 523345255 634484340 131236304 679717842 569420299 902862027 837440613 911597291 127776145 137551046 27080396 897869226 118086396 985630229 693698514 786484220 159058472 387331952 193233010 370809205 357219141 714621747 47187896 797083027 336207675 958511036 635051282 645037012 292979525 405747716 26061903 379599470 88934246 296643696 292880110 465786015 45103753 419893373 168739361 942730362 677929796 816034257 807744005 909413145 102211743 535205030 523210382 974300501 32030157 342712255 7661716 888812345 109019754 931534489 675020185 898711302 893507362 944863382 654555793 897713891 204894417 849590295 381458515 879462646 314021453 558021712 276647001 923496380 849533878 966609676 198463595 283356189 194424924 753124664 717201111 885004910 73434073 767319396 733269590 792757430 152697085 724812214 495330124 621836973 564658410 784107174 195387927 968557483 374158 535437484 393835165 548548873 200615355 420109968 50682293 128468214 104625481 728892439 35579355 357495076 128824247 581268259 51181869 721627590 411365965 559932133 222003445 232733718 81035555 602730275 158190770 739116506 277377699 906035310 695869233 766756008 691613585 772418701 581924974 939989406 692118895 964608914 707826084 896024900 768750281 905514882 771222398 809714120 609709821 614199754 521214392 944870537 596626275 873412548 293751845 541854980 259270840 401346008 127645806 476959779 407536152 636608346 527643921 813904423 559187825 813218099 67983947 856474842 815942427 956134007 515957424 591120909 72019370 842059920 429161317 533428947 440270311 557378697 436313144 856275289 531297697 866896752 333303823 682318027 453407294 809161199 160589537 470636259 78310587 203728891 144657969 466209982 465961332 694101711 57430192 286070638 96970730 727277007 29231126 120563103 41998958 61227907 5796463 26118927 3755774 443124346 250877737 887230277 453871818 820743454 343957604 738219447 200216361 742399802 427180244 889399991 120254382 681587105 404336104 836444174 465422460 898635656 663966994 903227813 191951386 465487674 389562425 507895906 159252568 208500862 186242428 537798780 238335731 791380818 687327493 917455544 89702655 856199059 154590913 516297835 70177616 276678427 178387453 641194059 247333977 652721530 3164686 413934928 330559855 760014405 395114051 467410366 416970390 429438912 355723697 581839129 456423331 563471034 54584419 246602946 120595799 207891071 25403951 186568406 121716317 989352645 824391932 933961941 5973589 668109553 455515956 852022529 347714125 969387003 367896541 624435937 419932713 746792325 710881532 851526565 226991546 491941240 263078411 290230389 152902719 589724794 507596447 844885196 57426506 216094249 170932230 601202504 233272897 366075063 170877334 561611717 218852755 573118926 306358175 558318798 340317873 874819866 550679279 886772493 381032608 680350722 435244529 542265051 102385113 231372692 58868797 440094042 415339584 830325869 311096862 442642070 411288906 495947841 9521238 946674730 809704650 905888271 130311155 512658461 398166086 573187133 373665068 938259745 472871800 571224142 321681125 565620267 353572462 918850912 214352677 410927078 303175655 867417865 51264477 693164022 612773317 820529222 636816571 733068009 197238010 405076558 58404010 673250230 339340077 674532026 350432881 909413477 866603496 902280011 557211318 590200502 352961199 568694083 148517216 620748262 349754862 390294197 266902217 625577292 364295149 888359813 61322608 702223628 534818772 826403368 424909201 870466689 36361123 39935619 11870261 154067005 153333265 308879889 1765367 85225606 83111643 883460041 666327772 737881810 244552872 916103734 787712227 795832151 788262619 814645177 96862867 855247508 784228079 989564959 955772090 959483499 128904456 399327319 318186488 586075770 16981161 970430431 799273382 805672532 379354838 902845688 546005088 602570501 601697218 630228618 441669767 557816522 509424695 754123162 708977620 824699727 366970330 392098420 133476835 257403089 114101291 615442412 567681488 972218976 259315519 308769980 202459616 988190434 811462644 965459599 207743185 265030520 69821363 170239072 25780911 401044991 306156740 422824435 139314503 556806285 179144817 629259937 575723001 625420445 462798952 476086806 79257620 934367589 781078399 917155707 744007744 964306723 130138752 471601689 44402499 451150769 161475363 358448068 81625699 313874682 105094714 283191795 493182 659862728 479230405 640847146 249184825 268865454 25253093 362391131 227115097 759027079 492429156 880727773 576487133 818397209 512273521 650711068 84489 481885028 196608779 283761246 74002954 307110974 187549064 613863246 495902161 999774029 550069037 585181020 19724669 493153867 481731697 601165805 53574604 740808076 430020945 475966652 2426625 262165217 160088413 883485002 647084861 847137419 218664415 792660681 558248846 646203789 479567251 665494136 374804005 908353684 606682925 761122375 491342495 639469797 608226974 667192772 485197070 645925164 48351493 926440747 348264230 805168568 79664238 363227497 84128860 494401374 116133698 542857582 316410608 840094724 758827420 947737814 828203350 998780392 307872071 643793649 118088093 418332364 273574460 806682445 130200639 525234697 327262648 742342706 738924136 878756563 513548532 587627914 491360010 530651035 257842330 283025092 229601809 807301694 778502783 834207946 163300620 508165352 297154912 678323085 619535082 738419304 131419031 185661227 44677356 281168358 166390087 820335678 209711620 745487332 315789539 416894584 94707476 217757959 155790293 564682721 534611551 832793935 545121898 711063605 439934861 741522144 164589992 441495567 108032084 162939900 54415860 670861364 452086795 740318323 329983209 776878211 99353635 552436344 230795339 280910401 22053633 33332775 11620838 910688452 536166686 871453760 290453687 548877961 505395166 529560451 526962507 991576511 535327370 618314118 18825625 697404241 369667609 532049899 105378830 669656508 324165119 517404784 412442982 875369189 387695622 861057310 732693151 915293271 271372410 523355043 963102 512180434 335667816 518207803 351782981 659446916 266611390 369230050 248680862 877633027 791666046 805178679 45369611 748262030 476720179 933593321 795763531 879043482 843050482 873671683 643815584 751910281 610377646 639429413 380339885 594467760 228981914 684233126 238118780 861763779 791882612 834980820 781583187 802305737 791556672 870125216 111103936 535226339 174289207 800991027 425827779 464140911 172681091 836258032 680768936 944423250 533049804 760464004 538241311 690987325 337324145 614948735 464342419 855387469 832543596 843936428 92612561 506463553 267316000 706083693 97309477 705832955 102138881 896427100 372855720 963400554 913641398 915114423 110633448 496603261 252117795 641058323 110489419 647252911 171433234 534930915 95404959 227004625 65809930 698765477 695043864 934977244 494595557 531809126 309986624 797295035 257557235 660684041 27014964 562739442 103395406 878169669 240936678 361385883 100939236 181353010 109722369 983210399 699024107 709170561 345167822 578785700 173486032 549171138 308091770 446448196 245328261 774915833 693636467 759038937 92883928 527346874 150983562 433084172 81358430 421401409 81763924 760191995 334935487 503519603 85440405 973499512 434236151 903941678 300134357 982712856 443721665 831127571 641377987 820060069 437071122 573108918 487614857 954388148 145308796 979928803 719820827 826206446 87563388 372825562 205501945 234086153 149376527 718537741 487281075 704973851 105657499 123315865 103229383 852914802 393746952 394372351 225121461 484541645 32588478 39085574 23305771 326826086 206421808 860638373 506038915 921697451 326129689 421888672 76602291 981788534 36107764 858365063 38095880 849904027 277309001 325008126 132968427 744252785 521710448 584595838 460839792 780213049 506430351 524227603 76538421 652331202 315824922 901786268 713565658 975623821 104172421 828839745 818432346 868138338 353257904 374886999 184781460 924371539 741096786 929678114 542118795 737140738 459043273 839029911 816264829 976699706 367682595 873212970 807248528 920928747 547726672 612294170 22181281 426830665 74116731 324544110 142444401 373155992 150757572 632496728 128083067 527559283 21907270 417259817 87249823 563276814 70680994 742178787 177359996 288326625 200777286 797289227 50742153 321225958 21536632 847252184 326619266 767224897 443576909 775841876 519389480 643727238 254127726 452263156 283628454 897572078 228867111 493696604 351744254 391511625 14373711 252383440 207164397 532262361 75852271 189588670 140259370 828879599 369025167 829991393 375070873 505409834 346988417 934101147 871996476 936188377 845620712 888564869 343259556 684580512 349823203 843485519 309226166 839109721 570061845 904587668 128669569 951616048 147929787 197459415 87390284 559316998 342390374 850146433 366725572 889175064 196866493 620040133 79538454 798757127 572750892 861490347 664423014 769170629 75769979 504819476 183970261 288132300 81763456 497499025 382225020 994160673 304961132 769259477 81594161 307610588 60936551 543495032 381724772 746130238 540424828 906635406 678635587 911598684 403831231 964808082 465061749 924309891 394831368 440053691 45046212 949825352 814577975 900308270 77561137 632927368 24204645 752804045 512773940 621632894 314449082 419742309 184077003 305894924 253018640 918256839 438222407 502203150 87402640 787793047 212016113 574979124 349242731 903106347 870088526 921056294 792308437 986787565 622010328 826282934 817249183 956537704 236750652 475919013 343875318 730198264 397005216 610594863 12855173 407272791 328338122 595259106 193854612 732094384 285748293 878252703 503688629 566599499 10034896 141365675 120507561 219164882 87032954 308197472 157163547 858777656 469823632 862297988 486395555 492360662 71957368 144650879 60056181 803895287 409132191 569412701 243586550 304985325 21557591 625947079 356703698 912703124 330356940 781742108 247841005 455215384 151178706 409814768 366058648 673302751 30787118 909419796 566894815 592511413 201524210 632825939 386145803 656345819 117926958 691988537 507859234 635601574 515019777 838759980 413087782 664737934 211030543 888106694 368324379 738219749 309077696 545024580 401218718 797805370 547505578 968424089 380147288 475570212 446447939 687476430 136204637 590746441 519767304 685907382 316643651 447973937 91659899 994356888 678297528 758434270 187364370 384994704 186173062 857031929 778546578 921461266 475618089 717723720 487753035 831266112 213897677 405117031 123045487 331152018 194933970 378173177 180076454 769581782 405559068 792017985 101149839 449325698 445128526 570273270 9778091 36354391 9981805 929638555 835932050 929592763 263377621 730785228 70685988 425783033 143518135 421415914 374128126 602203557 468100776 473441755 447850691 812663359 141796675 311328398 29007051 186922224 219642 427857521 154781698 736132220 235974224 576827095 507537584 898645912 679753034 941079694 886924817 973756381 416168177 574524216 400857899 428855577 109059133 511960386 42658493 195094512 39540415 77639707 6446440 453806802 3353893 785324907 603984767 825102694 247690276 843846842 547649173 911115396 747762758 775489107 415726539 794269380 403859508 671360660 430192260 759456917 296244791 639995707 103792368 781188636 260364810 790247114 267218691 544792046 158122122 250587065 229787870 378846767 374012286 784876692 287138958 644221984 49931920 733827628 75702971 519390161 51709316 621159103 294344058 789081949 717977792 811750839 490328156 877002203 62111518 729760059 346586098 548477620 95274509 618072948 53921440 270496083 182816045 432878544 29345571 123612416 50920048 237834496 232578516 285918290 245844137 675476771 529110111 580906868 332052071 550689140 219387700 990089960 320079960 705081201 156355597 454828699 111543161 149573446 48115435 927605168 510901917 982509707 65893316 941694612 556309760 745240058 675655180 945236441 187202749 910614962 658588623 957691036 849708123 912569425 856993048 890206582 516070317 701524275 662702331 850206401 325301102 404386852 145808150 272025360 41030869 799055134 96322565 418042319 350279043 749662146 738606221 795923326 758975161 860713697 445336321 798716768 380712584 497827594 478979037 697228209 513336587 656780995 310958237 765254704 431017080 793699315 575347792 995524138 721424197 782686515 24863071 593439022 89106888 131835979 49763081 238424522 225570202 794963485 63873075 855403904 738198093 837174626 658387188 975622948 360849232 750723874 69962093 803226451 332888190 984161778 125032896 692563771 676890667 977401257 124133679 535144390 195352519 409369618 330790424 842672705 596440864 652832159 139790654 608643795 569969935 595387339 223501416 434466498 245105926 975867120 298834101 888049284 72547843 483697556 302638802 654426452 47885163 353131416 266230698 295956575 71030737 929954362 712311019 952212267 256169854 368370046 360416833 585335926 308092453 461838026 306771673 513715636 161165564 983075455 706783608 961331351 798214568 876404973 850609981 869479829 192230624 774943469 515885378 684245754 437622354 707027578 189286356 213615657 167374411 941424919 810171086 958110060 856429894 874928045 506798435 979566881 571608460 797827485 374709755 409434270 216926481 799491421 246203464 903992298 280483733 472251022 418805507 806133195 787994559 927670007 43997700 341183376 101325718 850439926 366562445 990736021 124500369 407413289 132999163 204238803 74596902 549446743 387207250 573675446 421577150 842038442 228056327 736429249 439711853 892261002 320936268 870463718 405785394 931985425 559204422 969976760 862464153 970032871 399296434 746695780 387077982 913353934 70817639 174238319 69274518 481532973 130842501 357753870 54168216 587117159 37431317 440042735 176539701 692724851 7367929 210962610 91289760 243383696 74364090 953845788 182628026 743519573 507534719 845205896 355431865 730739636 482852286 835511398 577290805 884169240 857734295 974869381 752945012 972499447 233447950 668147136 251743865 487610623 182691462 310243813 107625518 497408578 86665043 568324496 451456031 640092854 225940326 341758246 329222557 628875263 166532892 864271883 761720849 909873805 737102310 867786020 824332331 967300292 963169138 994578018 373858971 924392126 300746712 652366251 437379797 817769102 700826163 921561920 573091554 874477522 71375819 240051563 50642007 274673587 18888678 90240287 17946551 233269921 23656893 952609461 519834543 590418839 99206098 248671769 167130716 721613889 483854761 691214667 229006299 531060144 494852746 822132924 501355624 668510056 139472260 162128384 55897966 730073623 317851303 396963016 249187793 961100063 345023642 483367608 389407067 788411115 690355068 912859108 770144764 797851392 146488497 669015752 237967091 826684771 583313572 825354903 499711020 558157045 184926503 287015364 88585191 374103972 180366149 563766634 281464768 455846773 143905501 167616275 32443617 871675495 864210058 890042177 552398886 599947302 458688098 803079289 510885705 857524716 814557455 858547614 607855935 623969935 21835170 442449229 117072555 415632731 334371318 926502868 252845129 345922587 344584937 592173449 77887320 942948539 342062444 498297990 82888963 356186824 196165718 419432305 380140768 631275661 411105808 617858685 570580805 682534729 503953447 772433212 67457866 720085940 205210129 527493216 26670580 548519223 252874380 563142536 85826746 635948475 249215880 532550181 520281397 563197954 443538995 867796734 363285574 854374971 104403503 378006235 141620269 437208395 366134590 547658254 265444029 799918620 532682310 885198297 207679251 467877847 76857585 392200448 245985843 480571095 233660594 955572381 50262816 212859629 188667465 600742453 191400358 784568571 199096866 584279275 11165700 482570356 109080701 965297195 425769493 471851732 166934297 717043582 283653986 415561820 140684445 796887592 211980487 852925265 305289709 930694641 583381509 983994521 855842858 934381477 899384099 930085578 544534236 630932097 401410752 464534989 183094966 589807166 518624534 569741364 344635773 686127323 376454888 948143126 892509142 904776836 476938678 670168933 191658973 622397600 98948842 808307963 632221110 749443909 450625820 788514186 692567061 845130673 818339310 821809484 685482878 957614399 31321773 102800062 69447811 907401048 182256626 288079841 1081219 900456139 153845561 750138333 17989357 169539593 92077939 144033491 118727898 545849290 182104903 480692552 164376038 613798610 315592572 508265386 165226643 654910852 92939656 332486407 44403388 161330938 93480281 249071878 16108956 671063421 368199973 985840130 802315798 809390007 38437995 449111878 31832758 522167627 311800780 605170573 90819071 786930132 111036840 815609791 622781797 663014989 622043930 622266052 524784394 676723163 36785793 759754382 614313062 717854557 380690290 922202331 555253111 856719561 388042338 734901662 671339823 703008705 288525500 550947376 101338575 487887065 267409646 978615424 882520642 911992504 87505384 293790179 8290997 151185174 149358305 472268200 355691316 727708053 82671934 900489827 356349666 988100090 919902125 931838393 302570665 544742673 460445542 662237318 423780976 710572691 690953878 734915464 578113660 909177355 444908696 964326119 538031715 688310659 595406967 835482082 385756701 905904594 653518687 835403346 681796177 774093299 279344632 366348710 93867760 787093800 207751821 909351678 147826453 724340554 268452377 914937927 658654723 673498723 373147979 853692865 298659108 547342103 489989294 644928409 332874433 855830766 779438895 899622011 348468035 548238809 186245590 971055503 962843584 995171674 691197961 694066747 74445740 561255310 183879004 196678761 43576302 67764649 52544540 569190356 72392222 844026828 252553963 673012553 525505385 753013392 591259768 623017605 596276121 677613435 456980522 566832005 77099581 197529780 58017480 101509005 96379833 155262943 117023943 600641220 466032822 744354539 206925840 906557204 485243118 630295392 335270325 634545297 402597263 450141473 118145912 584908596 358487905 631476869 126354514 254782733 176828489 836000700 681878015 965288339 570244203 983696250 823919317 957013914 284829743 392410375 132717507 622289967 600303365 718565755 302542971 489104466 319369034 389096581 211009293 644998660 247196729 967077022 387981858 961118305 247328809 312872295 171233829 984088691 507294950 521985977 472530889 555437088 465449386 510827856 9335596 130813898 19237855 621653811 356443962 729139534 22141505 478152492 395888290 549256297 229229862 741170520 347811501 425440321 404738594 534593772 55073164 984193797 380211260 891521453 714024706 915812277 313129410 940099105 5731710 498810425 21997629 474800456 413064859 527164548 119955337 413394974 342720858 795244874 558610958 724414092 322405407 490103515 312954294 687139782 97075879 930716030 832443850 869070134 221955135 981693491 456808468 952671444 135000690 627842480 541680168 733150804 622472297 810987940 783759012 854284349 367334674 666012361 34540552 783199506 437455026 936601340 521858815 913247887 82426193 466744303 445256399 708740193 623540081 704076176 171932351 816406558 101617965 459827867 368101412 742713348 352326478 395811032 186066628 236030987 76548117 405652875 276044130 960293808 595579965 901077617 109390869 264472824 120969423 380546444 223939942 857664029 69682054 907827584 54092361 420132350 366870359 374521450 181869144 291958937 289331207 466608861 187024213 203934307 98885688 575232208 330484383 461741262 345018489 417128954 79401603 857634402 70595401 682802398 520051043 557039470 274936006 712597327 465593896 685959500 278196774 619427432 271151460 382478061 374302927 969652810 926650084 969753195 652386303 963764681 867388024 987673730 569349910 768830037 203843403 536356537 67644042 255272679 174100640 628396487 272098660 518015197 279902478 583346691 142561285 338901482 318460080 954907583 279411070 422775875 249642728 610422132 267683200 311865468 236355741 327435993 292396676 961122540 638660591 694213068 161060215 945430106 194667825 874912013 56748379 514607874 257238837 978493290 974169845 998181721 204077829 486229670 322236225 352209915 335538220 847041455 574916066 967439784 829485582 979588617 430359935 798058000 152754958 233610042 71309471 258024126 173749774 966725226 168752648 845670551 378488870 517676539 452081696 852539541 484225623 791828969 533583181 602485596 600827638 939013524 65250567 960134406 467273882 653138239 403266981 438634269 308878529 602785400 352368033 887518405 357373759 753670920 473837227 940356490 350908257 926291082 719897442 768983827 148474917 471446669 17732415 785283160 57862506 740089939 27133876 838313764 758142914 878620127 700548692 779621958 65001523 378646537 255950096 364157586 137977746 863968529 37611399 246178365 82055301 777925938 161348862 401847500 122856941 824073497 762121719 982183060 871583828 876437752 192589759 484762639 113370245 608496634 285711699 882223210 814498315 876005430 4459128 695759745 70396751 765493120 111507546 634155804 336847410 635475893 439774299 810588636 676851667 759619776 736276735 857671284 727189179 946906288 222208977 659659779 482251732 881262382 849821942 940081841 639619049 815945895 198982869 879563868 530765976 560927256 297473412 987054980 343395456 648983352 572454895 901808186 813756 551735350 96954526 233278702 127733731 176596057 45511359 741967834 674546015 829965396 189374122 528261886 388090917 808279806 539449910 918533852 750497591 946783361 736100602 901515826 115327259 942602925 16884425 692805858 245598256 322595847 119386539 860094401 480188396 809561202 82482772 250420731 203977504 344612228 331271646 731246068 396400332 841146344 592799880 678997277 148405494 395608436 324256338 643037540 618217287 695477232 345975871 812308224 288385637 688790925 208321387 511503694 205428557 475697297 252976421 475586481 103478253 568295934 82165216 884710911 255751458 813287021 555446112 737752748 323702106 492354930 162782853 539546121 486761296 924948138 694138663 894820750 302380622 790741398 564409415 811397400 347398204 861244988 689827015 887322934 811394385 868905899 205001108 988613906 839181642 954400095 806040594 894131816 239671503 890926939 693953481 955978271 324884582 866090115 766304542 766687121 381488865 536303331 528789606 679763338 83186408 602330644 26813056 809876654 345122093 547669264 3329928 926201451 180711939 655019045 544420476 913557357 902757105 980846754 24798485 289235914 130054499 804854192 634331209 758755421 43991483 325422206 220216170 714733869 674054141 949391414 681929540 936172678 461843153 657197405 591794171 842711339 673865347 685996501 677982302 707362494 285506434 905316454 355721655 622680918 483807373 545480944 115546750 119384960 10986872 296773619 26513689 175283250 11191709 224063007 85451046 245365648 169803493 895476963 224101220 602921338 235207490 430763275 234216453 783257483 184060937 228203193 125701859 724586240 300108080 934267109 743189398 750176315 494810358 758402663 663948744 737102483 6329445 286820738 155614234 401051708 116260862 810508394 151760539 803709608 98210973 136480162 88798655 797850054 459707185 825631275 386745169 680570050 651002611 662366829 266478681 527482787 462725272 834144358 401359627 407685559 245140928 645956020 615106796 909883374 879110307 996195191 649707814 936219182 748919922 911799321 128067888 515190828 233062253 420482453 37332490 971960176 448229212 496234325 78564699 711678438 257543754 426190642 412800302 504528256 246884033 254541262 111830581 317594430 120981053 132716954 50868107 274302216 163868310 188468138 161356983 665798573 193553009 936264730 234605979 669922578 619000468 876478577 301221443 663251098 348317923 358814314 172300209 224230908 94280736 666890282 444235547 976752515 539150762 835405246 312944525 744864598 369896243 971047794 678829744 823418928 292434355 691556680 403221554 833170548 769985819 966128342 267627118 272314396 10817290 298172399 62973018 925032629 518766908 677099736 232749482 927814292 49902104 188538884 110534646 424489681 420818265 797996597 261244741 337951095 117528744 351878011 67164283 461372379 101631623 217943551 210585103 983917036 733706984 898818953 85723425 588382502 564569502 681760225 297981347 559956982 512410760 566895179 299826396 415406192 253949623 365670737 234185260 833526146 81953375 93032767 78531335 370760062 337243590 594786494 97800600 177122937 39753876 906656198 598065115 728864961 390929091 608230196 533904519 966545301 197734462 382750773 254970485 397429103 244776336 661510112 526519298 942509645 101764569 162752459 47454897 668608750 515686126 954190112 622736540 878788212 173731828 613840334 114796950 157987353 13164374 668160923 4908249 983810482 270071180 816802917 150759296 966341046 751519810 807161733 25925813 70741433 46062482 917037418 899395060 981010595 756972044 987833323 355516945 970138861 926118808 941438256 378046488 488520239 456741340 514660384 17679991 731955802 157152084 192528179 47711261 402085351 363840344 923619525 120089352 243400201 108558150 283745876 133795538 196361440 179667987 644442964 45389742 684441996 80774654 170491789 65485017 230199507 1502291 871584585 30841415 453467794 67452050 670105473 58574396 956059872 728608822 763038210 415623937 541868734 478202953 701561695 307097256 416868456 376788161 982362071 413184862 416012108 379977780 945917581 104407041 928499259 284315232 287267596 24229220 725045847 622848594 699440317 530850208 795615321 369568464 734125493 644715014 828531425 725800867 730663535 260481025 387027325 9514215 326150397 205122537 349448507 25273783 817225271 696426383 863949690 221848596 998094557 991491704 997177545 463879738 540642465 22540046 222043417 196557710 986062321 740749721 819496942 198923783 241539680 85787674 689356310 238790518 960039210 858544758 908523510 71681069 765468485 41964172 783165953 76896272 194422835 72225862 124269643 31135334 151881336 16201686 337358377 21049869 134664488 121550332 448207931 252256699 287978745 270689945 813090970 725545237 785379777 253330910 825505563 155745333 561085277 132748086 519672379 71947945 867228039 87852635 830022674 140338182 632211533 498033227 609755814 599045126 888759325 382668505 554159818 394427538 939909692 873951913 893155317 604263986 826086830 808809294 887195042 46503361 865485908 663975720 707626942 432968158 815192950 617385102 798853498 754999916 828033525 695076191 805069170 709967543 819571119 31806484 971666609 954801372 999887825 474248618 562228550 439315213 995064200 79833941 766925929 257900827 273946768 93767015 954969610 432137657 454506171 314230634 638430434 115468731 441423882 269983318 332920442 241654983 547975717 248946418 306920611 34168825 519640490 461326600 740124347 251998984 499246291 262301677 318555869 290372072 602053817 114753865 990221578 590990379 614206851 494705710 899077231 251393601 258309320 232346237 272175621 134352013 404987120 353662654 822603670 676306831 794456889 295255415 349017414 163271400 367362551 346871116 478789381 344564050 815211908 553123623 562830077 364985497 751737663 365657785 569391704 305490068 346478074 22373646 44771940 31500277 433723436 134510259 172363134 35633683 75159988 48584623 240275363 52267365 622514039 563088929 738334730 466979780 881022155 344516331 662932848 77557397 785597339 629107242 749166708 216048642 715083361 349984888 934573894 211940016 271304003 249155525 493022138 86120700 223404422 200840247 270992614 15866759 748254022 199622155 366720811 280206996 394204791 204027776 366252816 298319629 397699169 246164611 516448920 342154357 604954808 322455248 912490270 556772377 991510780 294869115 405479709 145511678 394780727 324431497 328782631 158871804 766128260 660632061 867575559 111484824 190323123 133066833 785160830 661947321 852415304 186212557 942704442 604399023 646021244 591964845 805796860 323289795 893322037 698648239 910841155 534800070 771002539 7005933 770318651 709161831 927438511 867231069 935279347 387898843 467507698 229992174 513823840 47036737 122772426 77606339 416296671 271241776 782527147 540449304 551596561 425790725 593687308 309547750 822201486 468145845 833251065 469860348 973335409 880467494 973481645 403952820 632776550 349208256 635849808 3755951 89919395 15267577 992293025 310614018 468229319 48126442 161981070 117858477 172382619 6040771 422420728 19500185 541086939 309350227 405972592 196154216 782603208 360704617 384622924 274958053 591443539 351930289 680389406 165602946 931595888 879136234 935494134 193791272 878472468 431490098 518281053 343756781 855309321 191714454 649934171 203062147 600269300 479472023 866040994 693251698 800788240 783923465 860403363 220204561 821045499 255514832 775372680 715807492 870667143 405257258 472533911 86415970 402540047 355216137 971007847 830198606 888842573 437449578 675553411 372960960 933911934 376392955 573505772 565644320 749575520 298795957 574987685 435090103 462379287 435349327 968133442 455334724 948249980 579837179 708293223 62294574 659610800 142910941 459582997 207324327 334765242 233015770 380684746 217734212 364275429 330116842 874822394 834595540 909884150 574500839 788124015 299617377 483915080 10025070 746021518 122531455 883967252 526401859 626061189 605701882 731069404 262602555 736205012 817494386 428873214 555843765 345627088 667597245 171265877 473427852 212213114 744415083 302804660 403934250 325719613 882130671 442866644 697444403 35605073 289478830 137807124 560001368 9326111 380448005 24589117 494103929 426803698 610484713 184782391 470394050 148462016 653107335 515378193 937916119 443820882 450349512 442479706 500558264 126195637 854572207 815644471 964037198 21491827 537452413 33389878 946559454 736573492 874217213 657739637 753283888 456913622 633058298 187999329 612587383 341972039 509401848 22576266 519221540 349739513 537114519 253641418 652077030 566919092 972751256 631431077 825119618 572676714 925898919 824902254 862623944 41431096 624203310 500934720 606418837 168831085 842295824 589998817 989587165 594269641 946971860 618063654 694808618 111449430 737368132 466255585 835693863 686108811 736379098 130655040 644733254 615683814 739264958 329633230 445655034 212262875 768685707 40192049 443453289 65285480 735543033 105407480 983517988 820338064 826985418 366419770 980090986 386832705 959666893 488723593 872953139 728424282 975180711 29224463 29896321 21076797 66296691 38487155 595373442 336966558 813989489 497941222 522324691 414855800 456738810 454304463 889181855 464512267 651078227 336181197 624895903 374608657 524035276 21580772 45889201 44564006 755421026 485667532 561216402 288527227 581068747 442206729 476019407 411041206 569307635 529699066 533131464 473157419 813959990 632756637 781961192 296520663 874674370 180110041 541471489 51434113 782044426 532608980 658000259 94888430 225148328 16422232 972450383 260165155 690548714 100295572 836088407 554446231 973648545 709610791 718083700 406552313 813999758 24952413 539116462 268745706 840273358 387232592 443693280 134562201 977893904 230090066 985904199 843627168 905796177 884577365 940845511 582242627 775334372 495542682 919568295 769792205 895521419 145811352 912216655 307411636 670955959 89384698 207609942 50748062 168654180 77111235 86164155 16942202 119221718 2862073 46018129 25372017 630543877 481738004 581276923 103634296 585675329 403775194 943317465 931409686 978266736 846514728 995287541 3187414 824850781 801014056 891065103 598251423 664092017 69079826 918141500 616569377 926126827 68628189 104303581 48035451 336680808 312972110 517894704 216923242 509916871 409822042 974370693 768773746 931970458 746605044 834398882 562831288 938298785 306047668 600775323 286648378 600556198 38064188 45160812 1656241 411221386 399287633 408341382 379851382 476364294 328200422 939613193 863471586 986703714 607441294 748879082 727112325 828718983 416453481 572597540 197378162 329019444 291659893 736135957 304595015 842281161 785467288 792316487 314604124 683679938 365291074 715075726 501935189 906848638 685235920 919235730 225270815 680462943 668520513 723130542 50709988 632116392 584061972 912259520 619167071 631191372 3224708 861761228 139562174 203661264 151035110 322105934 251208844 407911033 54649107 131714202 122651705 824954078 333915330 450129888 213128578 885108877 839765228 919776122 725805520 888617787 386007696 613408379 325001760 565240995 456905369 930481054 553753687 895695482 239864715 358847773 156976859 911634673 458493657 734410743 607262947 776216724 710704934 972099922 730734541 844505613 830208468 989327057 542028549 694168746 330947945 476821339 9112808 614851434 547892647 713435569 322614930 844039653 351972179 509594783 384734904 518998409 79015071 451188926 38953813 716686945 263954893 754318535 735798453 877194004 445731517 770527250 444389211 763810870 248876566 805482801 48665375 368716702 163556623 490059875 191019557 276516731 31864633 489144187 147857458 522950012 91974063 957713155 105746233 970480162 19495432 852803198 10675245 913006415 291907501 784371126 69895756 793087669 429401895 993273230 405745374 855043418 529996289 605614059 104597142 147167596 11633106 238648382 112593066 955023083 413561089 770331994 415495636 547861044 380486104 687592974 643973737 891485332 256204313 780910396 779037452 992992825 244829331 307334366 2290476 629662311 531122930 927824676 650960469 858793102 655383731 957625771 523466466 993219079 136493204 365131928 300381479 591328101 322435145 439084010 179814189 733865101 373916842 503173251 315692115 481387685 92962312 466158753 448833474 850629534 189102866 407628484 21447684 708047451 529009003 802497973 14643329 786085008 558846444 740864345 37234334 316222197 257350231 922877228 192455674 605857072 192402499 832265183 189780628 819980586 119386440 756251483 207280673 307553710 229395669 347784105 34167142 537772041 216762698 898473421 704080162 937076591 448569739 657545585 252193745 603407527 328329919 840876249 693843265 977878851 854605124 957101520 810228633 913482222 411426323 748768345 668793629 954868605 256852719 521555310 385407391 582541932 426545018 781625611 193032724 635848923 23790520 127576192 15767823 702579921 500135874 968844056 654179222 926358046 40261092 281679558 40800834 281949794 211834132 525590751 3393953 408227260 69558993 249961613 163589119 933260616 641383423 670473966 660803582 751129676 741294515 999140692 61609242 529007941 357117061 936247074 57271752 599668235 541184594 743255482 570721487 967385237 640214908 992807817 830041035 987177468 89621069 218056512 15484969 798950705 601614783 956126120 735998082 743085052 587867784 877294984 415270009 838910859 766309275 800783809 712337435 718907776 218775921 774118706 998712281 629730768 735479420 146107159 236546585 15577937 577763006 88348097 92610741 13489944 776472174 71712560 569251467 369011782 939624727 928600281 947849752 693450428 747892999 686182028 781983748 501950507 502745054 353101515 953759050 934751448 973901950 254535824 545411988 22441576 251856286 5645177 137962036 91608536 389511109 262438004 496011098 33632892 249309120 79969142 876946528 811703342 927680232 17923373 946828673 286494049 430697916 220142845 996493437 668855099 978463421 683617111 686475796 267432062 652505609 21849166 753382631 258321109 617574179 509321462 524074219 76142406 448280984 386248818 731670340 264480609 595915085 451187216 747020183 521885368 531888590 429236445 754965719 310973502 850910015 192138484 508215596 226589618 682871363 657175016 914514662 864617206 914473595 526120667 661334693 45382141 855500093 759029172 968616382 753469328 905200551 619859973 972917966 58872830 296371488 231224707 749899474 121779686 692753006 240175366 851570416 48457401 357483204 126880980 194133149 120167080 461083362 269776013 715399657 185445853 374659794 160110286 574675270 155186075 715574741 396142950 680995015 2575909 673323412 343652432 520130087 238107411 873546931 70945272 584185948 316730280 769387167 463460210 668161363 500069555 505030935 167725326 321457956 256535739 961859351 541179757 985746672 203373118 878297302 20360292 614525231 251290964 266190393 53699274 364432873 287803510 584110663 47941302 871658107 181030045 977332783 986941359 856387965 848217101 862378266 781107000 888696222 532127583 706607127 429202298 798464338 360668277 636752869 614513766 640421173 255470732 970918215 691644256 784305271 613848579 962996459 213244081 684642307 369308598 509797612 294019822 942430244 746690250 848728228 160429084 203764096 93806782 880919138 421013752 687355063 304130542 580421802 87203182 422737075 21350105 970178761 133078672 549644796 311573687 943901906 225428454 791630644 442232527 604379254 590606069 711877444 536343891 899219491 826110316 915381300 799775430 868725750 174635041 938315698 969039247 580425982 959705549 785624835 905358002 813423653 994108732 677694448 923249662 221686852 707682349 959339583 329454158 778341873 358932121 369195658 140858680 511099441 284119080 487144610 268889363 316262734 154456811 841925763 946667660 548167712 637882387 574068726 949500261
