1 100000 157285470 474162109 440472842 422674271 82463222 465074041 200634958 416666205 773230443 442244177 855250652 449300939 312377808 575382295 929281664 58526779 577417808 27441661 613520822 616771100 782412139 404423109 805726954 243460999 302599837 20643940 867187051 523040543 313106704 892369697 572519956 965513672 21221715 974688071 60022992 761354722 272494288 464030192 839292459 333524019 797651240 780403091 640005530 368003551 279462353 788299598 287552100 207445587 949227262 312448169 342932745 787803209 318766866 937315562 566694817 152336527 239783039 107412115 191789655 948155999 291037262 106130442 265136233 60930952 834289167 771019369 188016263 165771786 153089102 435566492 36028642 466716631 711331672 258265507 689075364 343415890 163367621 156342350 495850589 475124061 332900092 430872303 420191240 405256229 8039397 640157467 237147051 907707556 808214824 920652918 354581494 885628812 673725498 946533686 21064747 805915166 454717824 778589511 785536474 343953481 797138979 87880169 473738275 4356552 921488011 331989322 773116690 431320002 48194705 91188582 330937312 244369542 399586000 234382655 97970147 247549643 209129002 994127861 940890508 517786184 498242962 446201983 29235559 624625760 536334739 482502470 917628820 965094601 120082091 71593466 679601440 784968912 278820918 995390274 121978450 424799649 469945358 27621627 405540265 896614969 287446492 206543479 641175222 265484075 586916814 889654373 740879039 920764038 860143766 120970431 160118140 943469299 84613068 298575256 658613836 852529238 873288413 733987809 822399760 110026285 164398504 276835770 532853136 492914799 754528227 482952491 977236329 516862670 586198886 900881239 197105831 815015208 505229881 330753940 97034120 915442020 339076394 208116444 483812352 185119891 607473746 173048749 595009192 742452481 545643827 120803162 843161469 699001440 347061473 409814601 33066295 232983070 652422100 934143863 749645055 142748483 564407486 962676 548620887 492712768 772738819 531054529 942854352 183991979 239665597 798741337 197754379 523182864 741534904 202677679 865712163 963475957 791520447 604849227 981773307 670928874 892665899 805399349 347065604 683371314 594673700 122706241 196743522 605125663 656368654 774259327 289775903 311473066 934906403 839128300 743261157 209790661 879928216 867499011 594799497 128562124 374161007 65948319 383376844 777855186 313471720 849403035 777183466 115977882 221250753 612470036 698453184 801292889 167948306 400877345 445823577 801004416 231792169 29932097 626548444 498806691 352591922 76844962 225832418 844440564 74370422 405003129 537312345 580977528 312256217 380034237 882823720 742518168 240638708 415723569 672131509 616150779 96382858 132004441 517744762 994605555 194051838 540578374 974891637 107742491 149644129 973826669 258733307 409798179 577481052 803968518 876215561 595922728 507053402 360929392 34630797 747934132 77103804 862182884 430399529 154815731 25932185 272256961 781303021 88841775 769996833 717679252 373097944 504538344 537261387 473884044 965249334 896337360 237955092 272274591 83339020 890058941 476020665 352621431 186724032 411096019 30828813 156283118 735486644 862954420 14757525 38245203 458754725 296409099 240044109 14275017 699833673 844590177 80602467 745719813 780034999 444638240 918328666 708563386 343354233 729979257 558457113 742489895 642164034 747025227 459264137 130068244 383000017 786237944 483645579 381547743 9686948 241429611 171234628 70698431 33102873 58480516 774297344 650389001 841705200 713740178 370530187 550051709 610896888 528359598 613995974 444980291 340580379 963477923 476713412 83001501 987985033 334277460 539247056 517549910 312851878 662195245 337651072 905129136 629468064 526768869 323972822 901540557 542082870 277729121 795502307 275683818 461963738 474506595 405368922 681935266 547974914 949467746 681437033 657024031 41702415 191007171 515998198 208034275 509912878 584085369 313399433 828281328 286574456 901448238 414407228 425310055 452249337 78287872 573943442 647417328 464278599 825981069 383202208 693099927 996563014 721863095 720476580 984518111 760380350 250827795 610166929 135813269 812057055 109467460 726022556 652511335 961238595 140803058 632060185 499774369 321965052 716487433 141391367 327362230 753774903 5286397 409153917 691586522 198631441 525042063 888391013 943988140 766544160 132144898 339546955 421397153 204144444 438287191 124064912 728121077 763430935 503739618 669777007 523780934 82083000 85006808 635304198 133364618 655247449 903275473 481430338 61637039 489955417 258134912 796028528 621860182 766327766 96201924 643159826 93038178 563114108 768512417 666000293 87577772 485953989 641374251 470124040 194100584 530621195 686027049 61904896 387549552 543834722 674882542 352016155 969968094 485832782 499793103 339203589 942588630 893296710 160980090 495187564 932889394 766942489 774121934 648591614 858267919 345038359 802864235 797413492 132229902 66669909 343811076 593360109 352313216 450522948 554595302 677471112 938024974 333901899 380103036 162883368 268309401 51307376 895840134 462935677 533063975 729063236 896763962 721241841 506310414 717826017 785592540 108876300 146470007 50309309 591762355 242097554 138218170 60755877 893978711 456105050 897284763 706440961 832302127 407385267 160319061 102743068 587203557 641834009 357712697 758103235 30143420 491909015 47768957 888850638 466877299 422656645 566479509 247090160 339968875 680474153 800749099 702042409 186436538 691642171 705824509 295593242 144039579 618879649 217191277 246579286 817510130 845267383 918528559 332662745 349235512 681225159 838001616 216688764 160390102 411364458 380586635 156253592 942985687 375272924 496665306 131066382 381221598 919080043 366323440 534090770 535791686 433900503 704357743 903385648 299293362 291054826 528839784 308822786 222637369 94216440 466866182 668086300 179268148 652826230 749277114 701863913 310965897 26876693 911272290 312559366 620691047 850290354 355166034 99890293 347940438 760923954 771875862 186851371 918664689 219654792 993015036 442148805 826278596 854685442 578763602 19014166 487397525 749807442 925741852 768002964 80609333 882717256 729102839 580144995 723886986 412142581 471195992 77082988 575721199 835585274 660869875 957857950 799265775 204832733 941306825 433007002 732065156 892638281 220413201 426957038 809888430 72617420 580318200 155161235 451394582 294485437 847259005 527511353 774560501 198374121 627697632 490483448 216464479 673448143 209166849 577005157 903113359 990958514 571163947 717133887 553157416 191877342 140006097 2604402 723914493 166279135 431627119 138014520 380031498 911836376 464002081 769544926 841376345 978268970 392354028 915723642 183403396 789038366 660155266 384081273 202970655 765229926 325816239 902539876 22621460 581386732 47073673 49472285 83438937 99409145 821192376 767650942 585779893 812644774 558058162 235313094 509613302 971598941 280021656 260501295 180741466 39837278 623780579 110846090 418778003 624396591 832839303 746528066 181939222 248031036 555367679 156189508 657263399 808236936 927634295 989375014 308838518 193324555 145269978 459021790 303930862 572453139 172809866 98643424 146869132 506677775 152510575 25378683 389154757 448961445 485477722 17837276 475296919 706129614 935767816 432837933 427931187 460919318 525637840 124434470 881605125 488983234 92029834 156209273 138852620 509511473 101877835 518289493 52590016 224892723 233169340 528468902 79210541 126089332 709069687 438462647 35407877 203757685 414620866 343467875 713100561 936222850 322994450 407634556 988219529 587839478 332133630 909289319 823995255 116909425 167073071 96810513 695020333 566619220 695366812 104243794 589547006 882495752 422250607 633986342 270747975 621399006 302380332 332971842 181603594 450938621 919860606 239327974 591664429 905811818 416567493 689222264 22342180 803311475 529830015 471765837 858039721 80652933 555756484 700173617 224228163 155962278 785865582 268232516 931702811 479773911 716450080 744124956 562694207 191871704 584613816 635230806 550456080 45124371 241333970 556663759 321072548 124730337 404902248 374792079 38780073 197902139 765740938 265887374 508881233 509042884 513578652 393721542 74762859 439807139 180292702 945541082 836913307 610215026 260454267 375174403 705809390 165845846 983270105 204508819 242667664 360742205 768882504 941509176 882076817 228965230 467820211 935518053 302063422 902177386 288069530 527862614 804523963 236886571 607717297 650754480 53870017 993283469 50482104 416642431 636913942 175021331 708802009 860590408 560429005 147226844 213219794 739622456 978288306 183973807 304562347 101054443 433504093 905804077 711299294 459618683 357132940 700083858 688300515 439411566 827531650 242949004 843437635 179390050 76167953 818432200 291658700 315638939 491921131 510982408 871710670 504310616 606482287 868829107 201340996 586019360 937059407 452484935 961141024 593875776 5615229 528674426 869626579 12246583 323997960 831357923 790566613 929502989 501021086 434814980 890917336 71484252 407275982 461355918 482627978 346106013 535088454 636022806 315250560 529864934 373513485 704332241 449316049 419078796 256103161 200513054 68346543 864291369 906495261 598146173 652869507 264576716 809654887 180316688 99898360 257259283 652829258 770966020 135342989 803483054 657925767 380700481 503423275 301704005 628208268 505810851 588316975 877373998 668166958 315646799 210513649 671876446 341611319 922588911 105678446 551668838 714309220 977533470 57357231 465342543 32666102 393172440 598087043 255985092 945997592 968450905 930375866 589259399 561332428 338662088 308753315 218065138 129669124 597585284 201803660 972023686 309987327 529220015 961049926 466081475 888287045 222555708 959958907 96108757 110787346 684824780 313103573 324026597 834628825 817066585 60223981 629034491 883113555 152044871 364880226 540437835 303788404 611741495 611584918 472556608 371844752 24211424 554248053 339411253 666934726 368457915 618327088 304343280 483523710 530886756 608524362 449635134 519197830 842656502 265436138 521628198 643151127 554545592 972739689 944648722 948538228 832125754 696063655 494507882 304294847 686794940 972064458 329474770 86069039 598117690 543516868 311164789 155544982 836856055 972885275 948687152 252663016 212278820 106682684 603660154 944179776 469142124 605600828 64831212 289374386 516566534 832471765 704257685 196724969 939731937 123287129 431328714 461496169 557323395 63540579 952697812 121515914 448880753 43124222 399286153 841289213 530098916 310480438 86750553 738068238 833979616 733695429 851103755 156683347 384415220 498845821 977494738 520965441 729385819 103780837 988276648 681412445 631723298 100818405 674527229 381027927 984155087 673323279 513168515 519939092 29135533 834926229 122873076 42905864 334803884 424062083 794751769 420383617 90801505 85256115 855611037 963676475 86302257 811912086 446542031 544298202 949812922 245398828 346063494 815773851 301039094 110269770 986087833 953351140 717602675 551200436 408985754 201578062 666843265 634335131 425906646 816320907 842769446 467765256 791099617 987018606 713318698 857822988 311040514 500487336 740144375 954268487 590875643 916437036 143343258 402856963 306927004 425617482 348369896 163860833 346301321 946271253 712192620 382259309 369402489 718476122 468589634 315199946 679954245 902204875 832251471 89943732 442941806 635170557 731179814 170548754 265931252 568969328 708028632 202362827 836130267 488226575 145456652 714605894 755737139 257909874 369577972 387000636 750737629 233338014 11851948 176312605 822895791 167390409 126957619 880184907 218813684 487062383 966569692 484675883 195007634 635206053 795573518 456996991 439639348 785316230 145669823 432841309 793527999 83119621 413964204 227888531 562654868 837744225 380047049 311210892 676769228 128351032 769578433 648572970 612331776 931409058 97571987 86428250 940539636 824954155 884438792 76263289 543755562 865061652 299348085 997493336 387365816 874793243 585351332 140862018 337222738 525605694 349829682 377538429 238451684 754779343 958580646 688819725 750288340 149119091 79128851 837009941 905736276 848070935 680645882 737157029 476529178 808184022 442228588 515431286 935730723 816238190 739115379 249351572 27280530 918275454 348359613 318756414 558622799 192095417 262932875 770210972 453133997 271899353 926569645 968168302 514301334 681281644 82719613 162020340 729540091 834627977 330504629 262289847 256064953 934201617 686378458 399139914 700833725 60023272 837569704 444062546 744439032 51394531 162306919 690179492 993628546 172316498 805840336 351622907 338459388 225893659 533091010 518873633 122986575 686948691 35576941 131830748 578100463 121946180 487741383 291193775 479855804 328520132 236228549 82496599 705203682 142763490 38179584 973412584 929746775 622019953 259191724 96762838 492586859 421625607 656023861 243852388 241988352 777027975 459878769 261166799 573691547 529179161 48489703 488155783 407687208 797353947 560545164 185237129 55192013 785307559 887463779 367038682 787501001 949632397 890518851 500363831 838088252 998945095 318260753 666100103 733184818 14973753 89397652 23205949 946741142 696955988 129029890 145375548 761388937 479225281 455677261 846822730 562242327 712367098 380315011 493273812 713136755 879296995 102717456 159976726 788275042 448518151 915509875 186573214 275497123 953384215 213284721 617339392 27099545 2391383 142015324 109838837 937134581 767809868 634083734 105127211 630832920 925720706 501105437 940725747 189096235 201197801 907227818 486075683 797888308 327582090 717578182 697876523 418997180 992844349 284399600 135888844 603722446 29506003 100917396 698424688 926591950 253288257 88186766 357187611 283718499 252192291 577546533 213546646 655711342 4903715 187169592 176052044 615172870 818084498 642752583 457734733 562157629 197776 271687367 247678332 636853661 292826214 12501013 417987271 459237006 490457426 57623536 359653740 714932598 889065101 116601220 863079548 630545895 350744107 56155403 682763353 283925487 513806895 132663540 811359935 52933813 413342720 889754737 966024920 826981640 387460853 785019659 529897217 543817559 139578164 159721148 800363576 409450420 472086510 226982653 831810284 573952726 881825223 100663519 428449486 242074652 491897303 483066371 165735838 13078174 636112116 85314201 726728968 725346567 28884382 345577433 701338190 218367193 420612037 512625463 938263002 376894237 309718609 394778232 80789590 507347207 721730969 362869102 961513915 485888900 95797214 843123689 82137412 820182254 736025292 938850690 988283493 849652416 858043016 84341649 442470291 821574843 726597941 320063278 948758763 422276788 145532215 653413511 849785441 576235303 733137289 42065418 383973300 893178507 746674635 434271737 864779552 936955745 679590760 12818578 70362024 908853356 920728811 876165814 774196758 46644600 881123856 182434255 128773687 901879417 681210798 829523139 612774195 570442670 706741876 47899792 915794386 723521179 651915316 244353915 10902405 885385407 279088618 100748983 239452601 480030128 989171206 684342004 491984379 320125749 352120988 129340487 512923059 699453472 670437955 573552770 160532265 172910618 174279988 269001178 78363285 56733802 294133696 19150112 516020003 782933835 608819129 673286531 21142821 603049852 158450648 809910038 37768259 440953404 777997642 177783507 991009423 409493884 90397015 225925942 458908841 285503236 827063613 502388181 959610398 781529581 689639148 66522122 840764572 661892623 612176461 461711215 404069384 564621621 596881208 131397701 99528233 416880814 63064318 991946542 849651841 328608712 638795749 6645174 901430073 398023134 770726705 704627762 142263016 389818400 261292922 456875599 695137648 579993829 528284648 391610960 904419780 306010944 546500371 389056385 858218218 977801450 242814260 119277588 436032025 141425857 58717032 648684000 952306463 176293714 403689513 382635168 970952638 281216712 815928862 107277561 914717744 685924619 792004102 725058170 304471016 540620802 645098547 700907586 386372663 91855472 42470886 148158166 184828207 665452600 580593280 976766595 624941779 898729211 115384666 241218749 973682120 582091964 75545368 888834590 655083565 835325185 360745381 127564892 801120684 835069040 844420278 535626212 158169430 254759236 609467176 964268949 645551701 38357719 331042175 239941369 163203057 761679961 438673358 648092506 597917892 769049492 306883300 301681598 663196894 442940993 214351582 137990547 368036276 249440929 614160456 304751826 63528991 677331444 264157776 310670802 26982027 967363064 741615708 696552884 562819633 518458981 296321479 608306417 534391286 170098982 960591158 896390893 463132598 831347174 629707126 171772874 327741941 865086830 778570297 476290050 897940666 793785803 396088690 619808837 517123338 458320044 809369455 508112736 419427124 772177950 478905177 564171015 9464244 920281946 341626484 716795173 754896165 361216875 978382261 236993676 321876443 703023501 975759049 178761701 251145503 825912741 743270868 198499495 516766867 305178085 833099595 864617549 385834056 364071057 696099055 893224450 360258046 732004910 489622536 615780454 78428626 41935304 162875375 766788892 601632237 498079083 327830584 366319308 668478169 783605607 107168003 100114988 50266770 509012279 234831071 172071257 991724644 934467057 873699314 23430267 170443202 704828144 262351840 423018248 325850900 727517668 152688270 728186030 545458167 980644741 546683480 707424789 609556581 841475767 811706046 667145788 463107586 432682864 631100468 383799247 369422907 926917541 620135638 295679186 175652193 784595114 448847288 675487849 59570268 940348859 314829677 43771313 35439159 537791653 614809738 907250381 664826622 743864424 749974282 940135928 118128766 831791835 356879504 746911168 859051435 572867975 418699223 278705916 942253147 721796118 43245869 168729369 237704964 335009602 121372853 31747206 390140391 356292491 157297603 554341479 280443842 25426682 478297562 494682593 789829793 300758212 401391627 455392348 707067776 872051623 107051083 174202566 283696188 750742690 255520502 756508579 431298180 826961890 121621944 519305353 604834672 343992252 387558894 312840663 464662231 262218957 345020388 520098477 19483724 973274835 18046095 245740689 68147164 959320715 28955951 432443089 475133218 60975706 678397186 69335515 590690435 734177455 135379639 426685817 294829610 510556143 166311865 192023304 951702983 147207369 444062657 207980127 43664676 328899660 990097209 619030548 772379953 679923663 895914582 40152933 579044872 163519376 82305890 271782955 834407295 347262436 112353401 516080553 574496759 739984580 862910295 959261011 417636212 266595396 381457858 189067564 858524324 193633291 49136532 288755367 647376916 506255774 466648325 937430584 84235135 771617721 218867135 199342897 111235541 587386906 30683134 201666399 964747319 679179716 717262781 878379756 177982152 964099023 868547002 566034754 471943371 192513545 358349721 189281529 833418753 477175744 337344176 680389220 168952709 735069691 809017867 731573225 657003851 852028706 241588246 978302988 730403741 726008194 617575578 784205767 502279220 366425794 778610967 890904179 222511187 311814222 295706030 628467961 971746587 577767603 323890896 466539602 109700407 737061597 51405818 659715826 395613704 984277488 818002877 73244240 642933701 750171332 912178489 64225028 341087512 68662080 635334345 846273051 749449877 436643562 241748641 265864805 800673642 869235076 111452656 497510559 166497496 72484201 26085520 51328157 24623400 561621183 14339042 421996576 200236344 558733782 313663702 739293685 376418228 67403899 751057340 464096968 976285094 717777244 717589531 600993588 955268397 975815622 288451315 300762538 514863969 388577394 160079307 158324985 82692041 277797446 293253427 325574622 621757546 308810560 953654690 11221071 195095139 252093355 865822684 158501415 292994669 801483151 703844157 97804168 392215690 221845044 692422416 461189973 322058249 966982873 67796180 964840825 980643656 829131875 677628761 530409283 461679854 801488212 51801565 308452580 85982158 483960851 800054753 863038381 763510087 648778272 949021900 179115562 197650103 252204564 914121553 14450278 578311074 596502776 643661440 132060604 565147497 827520319 346637237 558596160 449320878 154785570 890807554 632102317 290594267 241376557 288127542 32942878 775904195 108782387 140273382 405898487 171516888 202294051 536253834 359366288 855988112 920090472 434212130 508875979 187773887 879577736 223729409 693454954 826371277 821372513 320994160 489553875 206920162 97622040 18396381 27932880 574650052 284474245 504747917 981764466 216194671 27182588 687637270 443715962 86719513 582270640 711287020 483111893 963630541 357165051 444618589 588893591 273795405 442342829 660721144 839893241 345670197 643219200 434572290 498480863 470526812 839037442 381507331 471262826 131833843 661465193 755650270 992535267 333650426 691731261 995774178 494304463 354803552 85846933 172390069 643469477 40438787 763271347 544470147 183193557 576322378 984780005 622250123 218626945 12705965 252474742 377599306 605023758 175688939 360793001 542544180 226586936 128347985 9220366 389518620 169689380 768372038 615168935 692312079 51704225 226877335 926205166 25560158 58422476 57252821 509440220 978971695 958165709 886983133 981555324 357328999 970829724 200664077 554902367 504785913 223828220 734468901 114328941 328604037 194558659 320023230 210065713 984476198 713372794 450213530 220449043 567921718 812507575 334799022 82981632 844095544 775744078 753775107 158688384 276668493 791927912 61343499 671505394 888646791 225482993 198601726 711185846 678252721 529971142 434820536 146393672 603648261 212265822 390130427 792203456 981616091 855789251 198618914 936814176 658125258 65538096 531381093 175360794 97762735 522847889 940518830 742155284 803974825 618958237 38771226 153562802 777604792 272499269 920702957 392980898 40637877 886499882 455034126 536449571 874087049 441494984 119603197 310644799 419007001 480113363 152899306 585645222 274090872 100035994 735167392 726565176 196783375 527873605 647517000 159824853 691975765 10816442 678964581 629467847 279840620 294266588 276234150 332332358 675221479 508038494 881860187 556814674 482694297 854317028 110973579 543753373 167104089 236072102 541012631 435683375 910167005 789712362 570782600 422786472 292591202 543831880 473817377 897869048 677287787 248076178 622601104 616869894 882164825 908819186 552498915 839861886 497191826 806296039 343757640 566147131 536544965 236328617 705206890 898731583 972087011 451151748 681369550 783213730 529065795 212159806 34717611 432744875 98220667 547391397 628798462 118357753 997812014 683824033 454133792 956463442 697482267 266414619 249140746 371912525 227149651 803198065 2104795 172616339 703692922 519953120 166243306 381892960 410316215 84041739 611727305 546863467 566237376 912156530 260047666 89891138 9941973 268106689 481363843 364117787 196655619 452461305 109670653 572743121 386278631 375004421 876313459 17582554 277563703 771070830 763950153 715708349 729174051 194909379 86470255 58695200 633390785 386209017 26689837 471617420 896324368 304158859 103145444 163079177 226552623 274461678 283832911 735853839 784683443 574127852 855288652 346662671 165510148 449368346 741289874 628154146 262131185 849871089 130065752 429276839 371131644 436509405 793633686 156371603 481491536 687722346 205952193 197169511 794204712 424320068 891251291 395069638 805846809 292195668 554883745 301112410 529800910 262390733 847863865 304157403 819700438 936064830 355349663 262543094 301753704 472170457 993033411 387127308 660400743 882218661 125389977 793471027 110459495 653746341 828074628 470518116 160909515 195402330 972430067 41926570 795289680 658546250 108552727 862370697 660118818 761113116 305743576 244332983 880576356 352967780 880358795 369775897 987839379 563154375 361573005 788894515 261108042 999880434 459869989 634700680 816598379 267463392 319198522 51718064 54187438 560358494 12117010 556964076 435682689 183101496 681771179 909420748 955466146 620674723 546245691 718875169 655991705 65679591 524621633 392621037 706940467 24640547 552858204 649149854 567609351 479274901 69055211 779645269 73654015 25582057 948630622 443675415 446746921 440217510 40406753 182943512 662526251 670355889 485006385 794464704 732855967 924975061 606102262 82084173 31544405 244924221 542140195 267273905 599122329 57823500 736779772 827288648 448521337 773831806 710246441 455845791 166787275 838756379 556730291 568578819 335066721 69848838 90198747 351047531 25111853 509368386 971692930 321815732 32285775 868801897 520803214 878921325 335290778 947653238 683005288 407106317 816314723 214568900 19387334 148271426 736047052 309614505 945370958 298304224 589307689 2972558 706637490 214881601 239734232 304616251 837662637 400462253 407618350 583269857 96025796 899803297 616260041 290303841 23732506 659795396 600346049 862254821 858637621 278273201 162108209 21351484 169354726 182209400 817363581 420605640 805353145 959935504 460567764 216064090 5274148 20327679 463015902 371257856 442347230 769490550 930605326 594942181 298581882 396572527 957877048 581024968 371715206 644784137 491070349 445754804 31044226 211854183 954849034 969084625 742234294 451343029 403364936 656165577 604555999 265560315 773714842 597394538 842610680 661113146 357865323 742981512 18749326 288750487 347394051 627255537 635687737 785423892 348152209 567444513 140834611 840193711 989911509 213369369 672220047 657810764 801126481 722898414 184049710 189965644 386875826 597261669 33534218 196939568 541013518 669054060 632607823 463643725 825595345 80268802 622765476 72909082 801848729 355755236 108764897 787811291 337444217 321358049 899957391 886243773 967699873 114560958 614699255 738868617 113617323 70137074 161984833 674867679 124698778 763995586 183506888 687713238 342559957 40635190 838024991 409082949 532693854 528601640 977907731 251177999 201185176 609262303 66439011 255223536 646712307 788045607 539201471 543745783 313535654 217068667 687916844 781950177 563641069 833605694 973083433 461617497 995763698 615099704 562876791 399326047 903709804 363724130 675401258 647249182 230648053 295297022 29506523 154941889 92337699 494646382 702481983 135542029 636906520 371790454 291811059 61870609 686396028 487441096 766956077 157948712 858635452 420370403 337594962 955775415 411158931 458840078 457641739 200888408 21160502 877812852 580087150 387360217 500797052 77939883 207727224 433654443 593712260 992059173 596970084 199554814 666634730 914459162 182900125 118095392 539121665 940216683 978573062 676010726 914463703 856259718 372655342 571420383 707128947 267814089 473562101 378260893 92456594 155406835 387004204 274428730 719727420 500951897 980334933 767673920 189336914 937370945 478890191 213170678 868845263 772438681 70524848 464905564 794766816 829720323 639320064 865105405 170031444 51126397 278267397 933858794 982304416 707372171 527575073 969993910 435866186 353652811 847150079 950260536 495635791 446109084 99298266 378557564 456993068 209924774 768823205 91686232 379988601 2462818 147379818 600041148 523286930 529245604 217267359 703736447 122102847 94797962 162980195 987189681 460483118 339481161 358624404 202294895 826588204 335568553 297046930 914327783 738806158 430164215 136195347 707000977 964414302 253748326 73685371 958774450 503902178 901871292 888157659 384628298 17826245 384139955 402153902 812131772 360273464 823894224 295690099 446757238 809741769 797729040 125582594 432450777 813671145 664420593 101219049 212358182 564058720 662124691 981613218 761677011 347782453 872126254 872833017 254757471 995796242 699182613 174174117 788303443 409126216 837403641 561799074 191661905 593655250 439628454 588564188 763652472 72386787 395272070 310696752 111028693 62917336 771774655 747570906 941034786 662547782 747988830 351774619 651964568 861793627 816023457 660833144 477030089 562536561 512376430 89369812 714537430 271554893 567648575 457814964 397434298 825411447 849068742 816524804 818594953 35705125 593729963 350083302 523689114 877580338 960897536 799702068 684645481 807931084 657559541 119513623 108122160 873306709 508669638 846472751 48228535 438565028 491845372 932895483 849741794 686792999 160015410 610355081 309776823 564233709 957667176 58973597 567553741 881983097 515737618 23558708 407546198 737297345 576825412 533223153 784018753 830174141 495622601 808675413 813632482 458866919 43817310 630819100 399308748 389019369 144913016 258385368 261370929 79381469 274886086 252394839 238035593 91461818 913301433 549525249 832210446 763035008 611683787 776014811 642599777 1893357 423281557 382826543 520571614 440559239 724724492 12128502 820920906 13694407 707480324 502822620 876741751 690377071 65485895 786921687 325189401 208086847 459906942 868521504 960622537 211527772 841885651 86598996 672867878 670340955 605832979 404457671 503313134 742966369 953781187 942565348 562894107 135876880 652095062 769404595 756402914 438723441 707723989 414436330 577051341 329489486 413818888 356045147 396243966 281048362 138009181 563008414 366739792 256658160 465379069 429648785 650512823 306313831 165383811 919869817 197787765 429798130 251546447 473824580 64444258 463906325 85584308 219606212 182069427 717314403 206364854 156777483 144600919 871168071 722326616 927245004 686628164 158499971 469318045 52868844 929397239 637465344 467754683 768565322 783030882 3053644 164181767 745182799 996831880 374797379 870094835 731142945 624265177 297604460 403070 184759197 698321822 925840667 327715611 492948138 433880580 808526496 206784733 208692092 317149209 220649180 77583349 210440198 908888859 999028996 79928876 678871428 531581226 785245352 293915295 302371871 58769076 803228542 895932444 785778306 896924784 152249034 167954168 960762385 489243301 256073282 854494493 10293361 948882401 892243456 307224651 656060301 103197719 992098362 304510437 154058495 681280835 371894783 841426891 820503485 380911382 673275541 276153946 533264508 89750940 779243570 602773672 226316088 240808950 275546488 271571115 433702916 614015567 641352561 251274300 348893487 311443277 747045428 976757876 607392898 768508956 954948375 7164299 604585166 238790258 103151476 698215713 659991900 175019656 691933083 444564825 246775219 886418049 68770736 44205603 906716359 921263262 428186921 342366306 58130749 114093974 785433791 402739285 732180286 134234481 342915494 582720271 702397150 284839927 686778718 713645663 163117637 33909074 126450780 66347418 650286583 21899407 989961655 401863851 134011420 975024824 510872095 810126756 926571380 112986350 883460819 240200889 508094238 185074120 259136064 420929697 400921316 55757578 340060071 137999433 317731329 62185941 246275118 317259561 280335141 630262133 744318010 993844546 239178952 857243413 877079328 665952745 620311431 449034997 552939412 214105987 6779352 473544215 546278612 59277176 489692465 476342056 608096932 623380697 701496327 20377685 625915201 313866544 364549743 352467490 939483820 504458432 533973988 898637599 268439448 209587288 131822972 535596318 613745594 283595259 39215394 856617669 369128272 924900756 29915965 672144763 742305751 300722504 17591812 444185562 466737935 155271570 182009760 742081922 874344994 934161952 401741691 26022542 298714569 928741627 645583835 798189637 312180970 960646527 106751736 844063496 863363234 863734049 730691358 274000683 780061458 679223256 115725977 101817770 451633596 723834030 944723632 713088092 687267968 339589917 788586346 761771316 308945693 108125803 311495584 709243097 940637442 106595606 435758288 847589504 631666022 70804015 234565102 497515637 86568707 502796929 756727348 67050820 225917031 404987408 121692744 243716234 121829431 549386604 646185281 182237924 318366235 784468435 675448261 39066744 360171934 833688317 721580365 643745336 132890953 878119444 34792230 619405975 863823123 308422775 770057687 57524317 249512252 749674086 547919262 401843188 592442689 565145767 626549585 444653653 969967230 336944488 119587009 612434114 867179005 260570550 717602247 17299292 171512959 679702475 200772250 665149391 252356024 252276819 745347912 479647778 615971743 931164493 837685054 8842548 513163311 822999474 822882406 656546179 97764723 952219285 901534469 580113703 540251064 998184991 585671546 440858343 143691256 995559907 347659413 321280991 744740538 564686310 801988291 444925692 780845737 70630142 640730822 430958550 195703982 279765094 998692378 41784175 390214446 609209844 699461236 653002606 146450688 87814388 987989482 697314114 88225925 744301615 98705392 520025292 143342279 664741001 413594875 295304702 869674481 233504562 458143022 283151645 481502167 436755192 557997648 877382146 273078457 100913806 91660950 343528474 998035930 286486258 405767502 764658404 919194579 791831435 134345380 815369298 660356614 179239859 278927959 421254213 520814366 811448611 121256981 120414255 70649495 385723513 69743521 560288263 471557654 516132711 495497697 506693576 252419126 553605516 540416742 964287991 703073798 105588718 150895914 425306547 398555246 522271836 768193642 104309177 460925209 919940757 468235993 5853841 213153061 280378267 242783823 222994790 199196782 427895289 629522222 651542268 379138827 6089345 19198657 278698324 603399312 739764006 57535446 573685002 813695398 655886357 181207978 159119084 546378324 815065391 306007177 860039655 569616301 979306030 207495936 773859715 744502864 886955777 302732812 804577180 482363091 913298448 745193958 487313682 829353595 249161723 497665159 868481430 124969295 299393876 574038883 879256616 836201002 94866337 246967798 680685667 403437895 368846796 245755106 468154598 524725424 453707179 834859722 449684047 369118688 910852776 898825585 584129845 147282187 246516781 261449531 411484964 768446951 978381340 470451305 302776833 922181915 5426772 887774047 375075773 164541887 847892870 958785933 502667924 39438434 461322907 839541402 280384363 956317944 737352006 120711369 853017749 269354463 969295840 655298380 422527487 687132332 940865697 761428164 747516355 415955916 407741628 74652406 174692308 299561212 691180517 945104429 427361936 343285670 596276424 745350213 935720667 45946180 507244735 234586898 907023039 480440513 819073522 124250288 153041211 366247808 62004194 778953909 387710168 286955960 899693374 490196734 974184698 608549309 663005159 328539315 523160987 134324064 37996756 305219001 125862369 754070064 863971880 136939677 546051714 754565929 962037636 235611554 646660980 699713215 799263869 238019773 394109894 729678788 23947323 823667704 526398781 834851366 801965543 87336150 214998846 285978075 184486353 721246286 214332831 119886398 360736284 96024303 800008165 256341130 507777416 307357476 245995782 36857718 221542194 36482522 359514190 30704883 812885671 687158786 320730309 247839031 627629345 360207375 648584370 433485250 217210972 824784504 241246492 370512583 791477586 219417009 620506266 444275895 161467658 720229961 52440221 14146977 870257073 729264831 795058621 460153461 148146698 408832759 673851335 881966874 146352541 397864447 48318451 552228234 262557559 902833619 190152614 432225666 606960101 627485738 595998990 981372067 736305608 33254064 161407839 214156670 289936216 81547419 535855892 809260869 698849427 308765833 751761044 957117769 574114849 788434546 498826813 881025568 127800328 185163150 672166637 864962559 891655780 617875886 336125112 254427331 522677439 470285599 567390565 161954544 490764799 864289121 924792328 565737898 538171943 798160694 388443195 859717108 472024328 436287378 103082042 831040933 10620930 520699963 835158776 78532444 826954756 630108869 888445333 520220315 280413692 301936414 324407823 503945027 272883140 419547909 783419018 414204477 244454186 197284594 589270333 293792448 748789093 186856189 716164598 27244141 611277955 283525496 350061795 96907193 892400091 57730116 657476763 139536235 415249310 776806215 11219379 490300351 212314751 203301846 797906431 357885202 852314033 293666207 424339628 192089075 218492520 846295459 209679022 621012281 531584009 317833538 776265913 964440037 43638224 400260708 163477205 998641643 511005451 643960274 602636601 427784034 24549372 472944895 894518261 766950360 627623743 529586263 184585053 908362684 399250595 507766167 886269872 439260202 953692247 238073640 48912382 74331300 78879527 72324952 242252599 73066559 124152304 689052149 474884732 788342680 149492653 895179541 396679253 121939080 691953975 453560490 425152204 613079545 320945679 673449774 60911018 847075484 934355481 989125845 759954390 702303557 29649406 756410997 381334093 120594846 990093361 388375162 428343538 507584040 250229425 206338749 849627609 579564035 218803208 153104945 416664983 536677304 47853618 573536424 523519091 710987275 983838897 768656705 775088154 780600650 921393855 150710019 66219637 472106600 39937664 461162462 294404737 291600238 901125317 761668453 208308680 876513713 778833944 774455268 179565298 341502487 319566711 198918425 704329141 919459183 460953871 535486141 279164074 202230084 709289034 821781771 499321152 339525055 529738882 335208331 800217930 366417331 61644276 363981049 586408828 297763845 573547767 535123877 184456124 952721596 319701043 28056977 383620200 577172883 869217316 181875825 767168219 885356824 841090163 485059954 299750256 689127492 815887047 528626907 925009116 873730753 312463015 180303556 186387889 244951382 416566220 186223306 155369722 172091332 788972331 277440121 219464005 705530747 505317911 739781394 868841668 92236504 905070322 472170889 991676158 809732057 425381736 686283923 260437445 388305324 960929530 278980711 770647726 771309507 633907950 554737682 172115578 623800891 162262425 704788320 288423151 266865446 538220735 4747924 111722962 580555273 970308803 605016454 24709723 955188306 255814646 849573479 558632715 472890062 923781348 43735664 346981938 448886036 295894246 629053424 704104038 74371584 404485919 973810181 55492347 276643019 860226176 86186956 312954399 432100785 78001066 743625131 64810801 13157269 780966364 344478040 855479716 244036099 8923532 527067645 878971287 501472093 925881171 556171238 843975736 92576204 294690458 954293437 970079067 99844399 587644665 963764324 89948465 521551208 996352531 726246301 947529260 378270694 567499694 88371861 976926884 846549188 695513103 548776426 266150266 537017839 879710209 176591685 808339751 191291588 58685290 735175174 656863793 282343333 486057341 285714161 979204526 234612893 147722492 560814437 965405994 488716851 776229168 210078769 982337876 378583184 749402497 985326181 957079091 247307676 294021946 232323188 741682445 518827657 853182101 620036246 272742353 526452405 295970040 534912042 580024034 935488741 242598362 963713992 913439338 408340655 81352165 448819301 570669565 735567754 548833559 508431794 556087712 321315647 934719695 554242257 964665570 734910260 904348240 1646601 611970550 815554778 18930195 878717944 991573893 761090852 835576030 692150783 53052301 818180525 39366293 287905188 751424574 328916544 614731374 237889596 576162799 620799589 642374126 717082754 289862784 168654188 973426064 656725903 693994932 939799116 87017012 939887255 841993074 927179417 842412256 983642163 567678839 279944272 345905321 82792761 65447591 834530601 335147105 346748490 275872935 496414449 797441335 667339870 611509521 432272368 317886280 261111460 634786283 863151290 689546623 435013354 93182652 14514796 482242824 131415406 733742989 581142935 675547273 892488468 22013852 597541857 792925609 532763638 851473487 927931337 935235027 541918435 714423577 908047818 740556584 936666198 750601215 850114256 64417012 951870723 747727833 72959126 386909617 75602969 906965631 386545359 621617405 243311115 212881184 295016414 684181740 85596688 44599255 225304371 827836911 226281341 229924180 229506347 69294494 981489022 911949783 700755241 552073768 961843834 911833060 305318593 624020921 190268242 354684789 527558211 266219027 530040576 764446396 394533992 845490488 994539988 661031428 871685490 944981328 604742307 226132444 875740188 237498821 334885623 434183729 692184143 567614913 889304735 656963520 168985524 517179313 43812906 291313230 583751263 3144911 138573627 397177738 129197322 169051982 989714691 571202150 477323250 925670160 623301339 347795095 384239714 710057970 526566452 883803052 895683694 445076107 957279640 982825519 600322642 208059853 501559849 503543360 665989956 266750755 911631610 815250851 121581754 978049755 932838507 657688667 438290281 586119032 313105333 696229755 581345855 103192399 457260099 52739913 256905043 984832736 496784427 446797129 814318985 874617142 742378325 635708718 33000691 444694726 850895535 940980659 832288510 557988434 900993231 453263077 843743668 539507536 715572788 760427223 212207113 347432964 67647619 738766435 253814328 878710380 460227407 750485137 309293216 583056266 107369206 928872060 870179473 386411679 364068250 504931907 840365558 121584890 99175967 213945076 88004542 634496012 328633592 991210749 899574838 829655861 287040635 163443193 480414859 263781809 76957621 313619033 490402105 892699253 669991209 3035394 328857505 681181897 230011380 470628596 516569786 175579946 388383853 108304018 791177876 81247537 363836585 913553434 9558688 758770451 261548327 154059608 856790762 435941488 796846370 725516973 998131939 652535118 614719412 794380670 491785224 964922939 308319823 652963494 763212051 930368994 601958781 162879770 637686331 232052474 603151871 28600404 844744749 750846632 181651355 161308601 991866021 36925681 676181416 946376171 645255282 631982656 591705062 854539857 350352978 45869353 356240726 589203447 440855512 834616786 862284960 194712933 388895903 90559957 687890215 551183273 469351139 988620737 430001676 770524030 679159898 650846127 755413459 284408150 446588957 158895993 13661044 40342760 846509244 805880534 902883777 522230853 563913527 444327641 10638460 386542296 355063756 988160114 554315636 646255447 685907628 46207837 366635576 620640536 723253646 171205793 255186578 396933845 254804733 323601744 13126900 242970127 65016327 870260513 655495208 146787530 217271000 820531004 897720537 802873998 84171269 957278983 283003243 261139477 553349431 824678260 354314754 981307906 680968335 87091692 755902057 265626542 47631597 189736650 985615788 829199822 15528930 318918735 551460446 132451958 205607135 388613083 859146189 803302486 776153074 266761173 560724015 589369806 281480039 996677429 447747274 777052016 315650132 684306197 737350297 838015163 712893054 274482326 935932038 922095557 91910185 394325674 426483375 820911222 643150234 69842111 292670220 879661258 137524809 602199639 117388356 542253636 582083892 106384827 633670496 263355506 425680744 498377145 823896022 678579789 238213288 886280918 474986423 841148541 290773493 119286504 14823523 694036890 634921733 319068365 87633059 524798882 348557311 808397781 68458840 398496308 914740382 794754761 355714968 166800266 294923710 803184929 370018883 508667280 987428934 174804792 345131637 633509722 972063236 504990377 164928244 183252938 589377446 383553521 247417671 636947097 933444995 748323328 894278116 386086066 786569552 829931600 251834274 339613061 946328141 108958937 211511270 711834578 341629687 603892625 154272240 616504787 827785388 246451384 243544623 279900639 397985288 162681636 257898350 274371234 625093706 166192640 755297139 194354474 868375408 335806322 71703097 522928178 148102532 94772417 268097432 678562941 659034594 624933749 914362524 856727394 660689708 797450590 283088629 549188022 875008338 602203998 980627081 22470980 816800473 906309111 423019224 217939506 815531213 83333894 342041358 881797299 156390250 298565877 184023470 257127842 275607758 817015392 779975458 679386818 407069375 698940850 789214101 207269961 103122410 921218047 310430327 381015517 181214364 317276620 706743959 184444121 549434225 798018284 460420920 682625947 116602927 967017651 250874542 67541673 768043782 504319606 479900199 552562754 252079485 498812481 534610545 124596834 969042770 621506564 23785118 262937754 75000997 693936399 490855658 791349200 488224718 848320232 861382157 997098962 250249838 661694435 23896155 691003102 550754535 756442497 994662749 712528003 459226138 141295735 216069230 624392199 106691158 803319996 589013661 443618382 463598418 866447132 573826944 928556378 581486427 849265220 312706980 792646596 137426233 196356805 297419575 371859218 653882323 566231156 558486095 875683946 775363511 489081740 184587748 883429236 680180593 749312626 104799242 770598689 119936279 451053350 940959314 580281244 985720183 970032313 659346571 790346221 287988789 344133116 425201580 366626217 366400980 619681615 707322447 958684498 66716231 541474826 696597419 508245550 185469875 682955523 965652357 971199130 963559928 662721189 560494624 956603808 570680987 567684363 774562334 841819944 86000379 836691503 371219816 523460027 565050906 608306355 22766762 685568045 902983158 772619196 506929638 433650068 464426824 540933737 830295612 153418657 614344846 223954132 642776841 668077146 321000971 311382888 91442295 757831237 538378723 700027798 445319805 961584077 185513862 351737340 806496092 376237069 103440785 509327058 67580877 23403043 617440519 197186328 718883663 600297369 257044604 313964666 696982173 87659906 468035634 903176481 296666380 892044610 711422984 1751203 338942056 85343141 741513345 59089294 447079219 803064026 214787097 97355608 306193150 962454970 463831940 448911834 121602523 907210796 733749116 267251359 256093129 717677525 768119508 575700618 729555631 16678728 97123000 596357204 745818492 653464339 572944260 183534005 705016798 82303872 962505040 803474710 878237901 483652491 781185069 972140783 910535469 636551499 18943587 621886029 244759259 215395326 115985939 846806320 703854367 113211654 103680990 365989237 194776892 239012850 675688862 579925258 403225758 778787136 232037693 952179507 905405899 859944388 886761794 179085527 9168397 422523978 150086149 93551632 178508406 982508965 553006093 807061861 84462654 778563553 66127619 60132271 135109373 986506705 185176745 144510048 411408536 305745465 851102268 367752606 69328471 788319255 976382275 931914369 663810946 115852514 992070013 793248793 361451018 314275855 652270962 378990843 675065186 685711667 578739460 521048535 705419997 502606339 163895729 28227822 642585173 861180541 946121219 851919780 682414034 495034105 441898888 261943218 971520462 653172627 106524465 47908755 45236479 679315532 985020008 652828021 743866788 634731577 30844976 281279770 437735582 985317147 594027176 116126569 675217664 929615552 438925623 574956483 794100828 104895402 59615783 302533284 822544783 872290323 373745514 784423962 183787806 377256382 897650867 529406856 288972321 151707630 233459061 368165378 496320403 794769678 235959914 759041395 782355617 264845334 977706384 998660288 179426179 380449107 775969402 240791693 651818869 851138344 423481426 873340302 492495985 759322338 107313972 938372750 458220484 410512924 419183246 88509560 79491186 27997846 861566442 882461444 638459961 321537589 195552985 812669547 759933571 640800310 936537019 656827651 739828564 803671350 621153890 217744449 681954050 918194922 329627648 82673737 863594602 115324210 610175845 29795674 374407277 826881712 542154123 427376765 72171466 770099542 10637705 368198636 683333953 887428440 931949333 716614779 386250575 66505225 339719583 22615913 129969038 719222315 305526754 433499706 811429199 638229238 428625478 270281597 589074127 715117947 904883174 792444744 697586019 866171434 188201013 476059104 237232804 366701081 692876450 435978599 649909255 436663884 331136470 482583968 414920578 345898285 44479434 862200134 579876525 332219415 581298007 255486644 313738102 911707769 844368367 875061265 38106092 342788386 430488509 432768219 452285868 167194137 37325388 943829711 448207645 310739538 477026101 98097428 910678753 149181623 27177952 470523220 422351748 219196673 434775776 951685765 806781545 380562103 124261382 890002757 325741086 826881868 224718486 583306037 322910948 689275504 733413822 177463192 164820259 978433930 136959970 211409853 62726472 915394119 935020862 943455974 855049716 516571750 724788358 343059175 102483103 478003368 379654137 388316852 415849328 977420757 806542972 119616020 28686205 951974556 557734444 105782673 209252276 323192075 453298533 551647911 886981008 679241577 669539527 213349793 629584881 508256311 828847525 987921844 126774722 246571455 827430178 688056469 78975340 769913964 39850745 494446572 566520912 264000762 236022967 767973812 739068452 246364472 838662868 149107187 494537453 565696725 939368984 455959029 902368326 780340690 949133583 231182825 563428186 928177199 762153811 238874289 898987216 233564564 73791180 553056708 784749137 79371495 304850385 655297802 960426042 516068892 36438583 328631596 138426730 817650431 708795545 102463683 311514838 490119303 654294091 770921917 813544250 341463637 130618942 419277924 2893727 657027241 89466085 788920495 339925507 245092770 587305389 970923064 28335414 652247158 533810335 994241001 873130055 102028842 539622932 861056134 556689334 270581219 552938277 383576195 874197217 913848264 17418837 407220430 219356502 77002145 665252421 922578877 537284860 385635423 437895914 105715589 865307385 872830269 619371485 490202507 847493566 932558047 476397415 636787847 254496342 121374777 199124496 509301713 443195264 408406452 444627785 280748755 882614555 228368192 772380051 218972651 394929828 277679937 506167085 701353580 574265210 640297797 211076815 405187343 134071740 162815960 41150738 674952591 181912580 289086346 177885976 80173 427900374 159642880 935867296 740404457 749868929 90182765 833015615 724572690 821469119 887537346 780247161 494376610 40598190 975014359 226104198 711564110 269461972 226365365 64664526 392239829 816045764 928345493 315581194 986846659 182342424 245401100 511666126 984161984 414493824 708584376 952897667 692209294 414706997 892771985 9689264 489286645 864039177 460520167 200216975 452339379 3186585 210687064 352257836 563918092 741687218 807750328 386851036 141036561 962811853 7992085 452207938 497820264 100592020 521430983 505304335 24523617 86992760 828358404 163080162 355109932 583165989 409703183 280329604 46889871 164380649 960674448 45932814 931518822 609816448 54705745 631575889 598401960 603565905 840510780 400667199 18452098 71565896 487485872 965679018 854744542 571632598 419590319 193694056 353499007 414563983 99008104 292876131 32032983 746609627 289550152 375498317 310249905 665111019 75260572 268342364 633767810 249706016 832985485 639777073 40206542 300545114 738329657 484821844 175407732 509782363 60702442 971654826 718700113 41834490 177391901 874549756 384289846 279616926 920540681 823638187 319715003 650782267 786629860 464242293 130740426 195487413 946118985 160502761 920551214 596111334 766474728 71559445 13136840 350079019 498843164 550227028 113266481 921523270 910543849 436851783 321447212 446466087 901009699 139340663 747648246 72034011 248580349 322351882 329533703 104677756 966880361 838034868 265684960 276492967 78270022 823290225 696335968 600607469 271680094 916128041 841860202 962276917 584852256 237999843 831256947 986995417 486261985 148657359 598424382 889160718 61258154 258820368 229159379 359291891 505611329 419504532 357593341 269802179 954905446 29110692 882103154 901447857 71767470 624333733 493957423 465866494 710877415 324946380 561314415 146341267 851549835 673184200 830041700 334596216 474903260 620504993 224789480 557481246 50150661 354289891 769361987 845087967 939926652 234781845 891146071 19030318 903340872 676452387 786351443 458723323 928484610 237046481 13662542 398406906 472402009 20481867 144725929 533293560 603107092 327860065 694610079 4264777 912022561 788871353 817422285 201537856 233801824 876313008 995783836 926114638 639548075 601207730 148049544 182652129 326802839 563726242 21774172 106256745 632069429 503529007 911318667 829982306 298439623 180202240 457710451 712798966 835555639 701792400 670782310 663381084 832913595 111057650 523904791 848668498 814307126 868531965 401696662 767945930 14659239 931078291 199148465 195568626 829100127 717763723 337203203 350344871 368294214 118824934 935605851 608022986 594813214 893483760 570533569 417260231 33786556 842044444 301143548 143383320 113966176 538927157 36870494 470636424 418102235 112071192 716069332 530526931 971184308 728191141 281406285 457917618 60405759 623247077 864483987 738899428 160280627 596747772 737346451 875616072 149048963 836510037 460268789 166885655 448486500 801031331 583712415 523344487 601242987 836685642 981561886 752136925 424268599 565742316 308490014 346114194 847252440 672244381 413044464 162295772 560913544 481235935 50565740 425021092 58741817 830900904 535246242 194999733 830388595 742403867 267946256 597740408 653027962 152252189 661751050 982850354 429417057 295521553 979459671 261897856 112454373 435241871 915564341 45048188 765191736 564157240 946560593 294956265 798292154 960962573 786554139 584057096 493692577 748889121 540702472 252295469 880733863 395763878 880833450 340182000 103646845 632866617 407374468 856122380 3337422 619874637 843555981 725412255 802045625 277250814 832834711 964550829 993306319 235996570 155560555 163889478 629706254 627569196 540360568 381074813 565102428 249068251 576612600 516488295 873361866 73786237 862019426 30016055 900776396 316004244 867749890 241739743 821197697 12135425 439883778 484648852 716359274 130388463 46921145 154466697 114850029 912472423 404664158 463078691 126768016 783815363 95983940 718282696 565349175 463588771 508937112 411567654 739381158 46232275 626534765 34019513 972381854 298249533 951707745 133374664 367303555 686467311 626826591 800062200 115959272 344696151 690841724 323981475 28400077 862636744 157331215 152340582 708668088 287495681 288617043 669231442 81411441 843568907 947285807 456861865 628708557 345668124 358417318 807820220 659014183 674984668 632918196 397076234 353514038 616478586 428144003 898627802 880209735 134502846 908680556 366334889 719857985 577329870 301944381 661532456 510790061 840732953 917067902 979538877 471234761 455790467 283081660 3941158 87355713 839184923 810619323 916816627 43822225 259607047 298193273 824040469 561039741 601604817 894651925 646599827 74768064 98616865 72704889 126355626 134587036 901291605 26133278 148883548 853033304 845960850 570539534 546810139 732505297 140135262 86496278 368076045 899265638 772243406 70349874 161182288 264246868 948915256 270986387 321350781 401423312 462836697 815459115 58187996 791339809 994307414 321603897 967980082 907117046 95534959 876280539 702237336 208467611 811398907 991887817 200773510 37925396 322515385 131046850 686405050 910233744 282123160 467096923 964467699 355521768 943484434 765885937 740355617 341149438 529218215 162151213 57494242 571216047 952848192 72540180 283397371 260042388 49770025 668373965 517336140 21120418 762101690 79111426 199228977 204174070 28415590 6844465 263645529 582624182 703520535 68074564 21697408 232328657 826912002 277266832 537895549 359340397 729297318 313607473 929509053 285702980 869604963 445867659 652041747 718987832 885260470 745819911 342659592 279378372 187276579 199012946 53998359 946942273 556946953 460631735 730663175 546870225 183873707 542710480 425065370 161323012 653437722 649523541 740866722 642568996 663006500 109528815 456149508 420525780 556221945 696346033 272182586 597809279 335615194 324343092 823826944 844714182 28505982 300236017 540205547 989459071 570432737 494377784 421022646 95186842 257668989 464549547 912218719 988600033 951311209 902654111 423057034 934937070 2083807 728116733 128518801 264870550 978363578 57679014 103186107 220211284 816964773 752378587 463138093 95245541 589842213 581410846 604906569 940614918 472193864 37684387 78103332 525563421 768361723 500227088 113671266 250010876 762009573 927072520 271085548 969838358 293647596 870970181 990659842 221020677 544223848 228828756 540846379 973557237 761462605 368497552 942298284 457665227 627089324 301052574 144807497 878858881 146024895 45150132 865995988 535302185 611010863 153291310 125184977 854024522 699847755 857626984 344764633 268905942 872448884 467628773 730829881 924453375 835855269 849312583 585343912 18951291 358642467 599803635 202576562 813045866 261581404 348045629 854334390 335614158 965299858 857427186 202275434 330571299 976925127 51920340 881401005 342730823 488171170 330241515 806074107 396178461 792364970 415678513 619658079 539018075 686957427 971500459 468731024 492249817 367274611 808193562 450714518 510970974 32849926 795287988 224681025 339956838 662493952 229221259 220281673 819938334 28887346 959906410 684697981 810760496 61119970 43870488 477787203 791187442 85886214 978429786 722248138 36001770 70777746 756729257 348538788 106423153 94556227 629057004 187878279 78620715 830659185 877176599 882056148 728026175 993742898 576086211 699291068 336664864 739912863 97351083 280342469 851793648 974945691 734270809 588835172 95572539 666074776 489958685 87083182 139439698 130178856 512644748 847997983 538131113 199148482 526485283 365548801 913268022 603586538 466174579 88241968 808181112 244512850 419856716 716171111 724088142 675075692 906954864 2529567 324062490 46001959 69918904 94089987 957635045 641067889 319806701 147538096 493761380 887713545 797598962 774621471 223682551 636852743 533412837 781932525 491456617 201266650 265959045 104820029 856984969 539236678 82262671 448101357 924300885 423485771 322807458 199853647 464882407 196854035 197174756 288488925 575779612 131359264 64947822 186528460 358109954 441722028 824322289 416444748 669503057 231964055 383030623 602725520 536525584 648513397 818362928 592124248 338829888 731943834 137615465 601469637 877385338 514017252 879119024 327593808 184499733 482794595 989526284 341066169 177156433 443925316 482465504 417373291 608799699 786051422 178650932 761206188 846540444 615883750 238122116 137513425 292666598 813488630 642103955 689982199 627236617 930910229 542586495 880610862 23260440 763151265 453894294 735005472 315401443 320786498 261312679 766826550 637430935 22332706 813724634 107613858 344594418 838775141 441388859 377055152 704820556 200788806 721553629 330702228 637405275 532391432 828426117 226852204 792490440 755794377 476503882 918187275 592232245 415078736 3445965 985454345 912264708 695011577 533560845 735366488 341691419 483502270 204286556 340588406 529953722 984462852 448497685 982625776 403236193 167677972 96081626 272126420 398896997 856402355 320708147 242250297 24000073 41771035 889109640 664414674 331962745 73135762 961742669 284421185 621000026 86427526 745719827 545307631 527550671 165079472 34780562 863488154 672819914 116347986 686544005 26565383 360115128 914230063 690287165 539505132 934655741 277606397 62716595 659925178 870577266 778189733 572907234 280023959 836859455 900202491 846933063 856869593 508875986 123199441 530989409 170090425 260952510 363201149 316978179 877016122 75207017 554243722 296297082 677892300 833973006 57003469 139865361 816430539 516019832 282361601 497158761 55115086 61864603 449626823 616145155 601823658 10291367 177809936 404021015 142414222 204331029 980559159 114708805 736615711 168084168 649383515 65220976 135419389 23523544 328254797 383407400 879857511 3301728 905631992 433794580 152777377 971911118 548142937 424540181 294811664 778422660 513716886 261867052 899023231 871322768 51601108 272621921 925196364 437046724 400272100 997960415 575112752 783806306 514805579 574892894 349841167 675788110 749656701 458761640 64276448 876987069 821363749 3342280 981708197 297057113 478150920 360730121 293842117 508283943 311870416 393465468 89092998 556819272 941910865 600463299 246962714 256926308 858223426 162777459 64415342 105391753 948872379 869981996 831319245 895166918 831318553 7884228 317687724 458647993 688937458 901405965 507570581 712806837 234426017 703016531 485722484 262447207 604580341 746406624 380867820 79445276 475101295 628254179 993726195 948703260 34363895 806968559 54329351 146512963 965450823 380143456 408909 255133414 105292435 117867702 418270875 819955693 378695656 704283411 761009950 70022979 702579225 6269326 453728718 699267255 181030655 96707890 755193204 393281793 181945654 873099653 694853683 106204574 656265399 129225177 829973964 734940110 274495570 446145500 658948551 947553486 443800730 828550695 351830922 956033659 5072407 55321527 67532764 861761856 418910540 983965010 85893242 237769720 949699424 525776885 374042519 32285772 949389858 591742245 987665065 850957241 881844164 392010825 460942675 428495180 931930146 4547976 974786707 286426968 293217341 200459634 823710245 137221598 659262884 917546700 865795460 803209590 994976214 744141926 116038760 58982648 713595184 508050300 442822004 187631613 919345736 505171430 47036314 734596223 870862905 960085016 895303013 336502532 607228205 257770292 218268741 758018828 702127329 649927551 511396188 393345719 597938088 414357694 730444293 683560608 373728674 439549357 917194531 161702506 4696270 410491907 16198627 164292760 932468015 458268600 90365473 799922511 641338281 814495235 124758861 408082178 161045464 767856620 479125812 336039916 168735871 883504679 92868329 291805817 153038263 861267108 646383360 787108271 211344695 71638838 977414222 964934191 925212768 469527964 882956573 8353169 739331618 848105229 101780812 66706378 988955980 421157308 202230745 96123540 992038248 667504397 637294378 946786324 355412887 970443390 97174478 786690080 511780983 220591250 811484543 616306844 293855511 508723653 681689193 836935390 438325995 719222353 201843780 721557374 547241837 142135173 181574843 127510240 583390370 476783798 234548224 721362475 337250623 26071604 806032639 851581970 524683341 562695812 438103684 980040487 538492730 32639560 328348762 17517580 425423019 382496163 238645213 874719175 335498292 128336721 599248935 777984254 876927256 260376104 201805497 487995932 666855461 992156958 764264983 477979664 269830883 647393318 518588528 598481883 782371631 994170729 562140009 103239222 582618209 401078483 982028241 730106027 199525776 261995971 433462153 584845061 700043488 728087245 374031357 902003377 459206714 718669830 838517769 696971536 837692121 509723528 496150431 490911470 281807169 459644632 785529308 494192933 770476897 463143047 932263994 894592137 59355055 325182131 971804818 60563719 661401122 968869144 550152985 19374281 537243664 650356075 662941141 643257544 189364827 563772650 28334062 598719008 379830891 606979308 705105761 815550033 139637739 838022726 701490091 174998694 387521919 324757314 854300499 189440356 754033239 545383744 257598718 350749474 34954442 111559520 584379761 140739609 628769581 127457718 238270723 339165236 871303026 204631268 164191752 164712700 659144596 458804182 596070568 854881423 936988618 688257231 896169393 985790573 242497474 204810686 180524351 803018118 465854837 670362871 195376463 130271932 662693589 942806200 815984487 46284694 426212553 221315018 820927957 812514543 292114364 114071299 713671047 518426069 833312740 536541804 190836443 997801931 305611486 374165581 592357416 926308852 378123396 506994938 123927465 828150587 109507551 655453694 315094003 587180849 909595614 518126695 487721164 63232234 690944890 390942388 965073510 72225651 127925145 474571517 721286777 347173301 808578958 425466291 446395636 153716093 464632572 432035316 248869933 969075628 579022965 603692016 550825499 207276436 220052351 550943264 816797336 595926391 744393497 663788824 185247310 152939385 206041006 578703414 981475130 616412543 938505937 571421783 445850220 963185147 733252602 235220527 269662235 921796586 575236120 756819797 522836189 237844464 81188089 376008571 396236401 499751504 939264519 799665019 888447604 55176406 354810269 751377006 88967858 352690447 488728218 951068023 428127035 877005224 749759217 736254148 468421345 943794008 715708531 639188959 227741620 754820997 919808224 101682399 831180282 238220542 672961069 872473552 961147942 360337974 979994245 691780229 567855410 907502504 708888593 726831396 695588253 660645226 933342794 728534611 915257187 724047373 536952432 668305881 924886646 81137509 163371078 379316572 263982523 180424396 352269382 746739431 524526484 505308061 444663609 541839704 287835061 698981882 24880817 160295811 639116280 273516359 813279212 640827561 508852157 515793212 521017787 597655724 649590017 678229418 68807880 694931943 896050865 489721657 858363243 20861426 282702852 391661692 157374745 213490557 51041824 76255859 223439839 332289649 543474056 249830847 395582198 148359271 911585758 161793314 609179844 658042102 22071974 604087629 470338629 874860014 677612859 949099 936108001 148769147 464017093 856130720 98582306 781198098 869813152 643965163 86573559 842780874 366045448 956530751 830070410 336677132 486355994 882494945 378013912 153334376 409051223 708190860 557701856 228077959 264474583 20370162 396980476 235935751 542035706 84884338 114739454 948170946 62156831 895842752 679679959 863439855 985858783 440841122 117387252 24064622 915934254 160479662 877853707 43005088 896239273 35963409 433063082 64309848 486713832 498396165 668280838 882251840 880293066 124055594 530391304 234289148 427526678 755024931 119129094 663441137 87421605 408678102 71402826 42230394 971802785 838994853 952014559 360679061 426158991 494781067 962171197 138571722 143288195 72570935 699431089 993243912 518288850 796477539 442273203 701102849 190678308 317179701 323018114 993753952 481062003 323245674 558953898 872870048 782249001 366800027 457274255 311491468 75951028 220124874 409281153 471913208 36532728 37535112 657228509 952792785 76740486 248747300 452620784 976138976 255001839 10688706 498323847 640444234 519142107 435986074 468097490 422360928 23096345 393169586 970459412 541608924 662771182 765633615 514506114 262830474 25380796 760218065 95093567 928769773 325764435 825897706 779451011 254345580 846715651 539136041 233793218 302507568 210599327 135605936 270711186 812841510 629075433 293484953 626053435 403344315 688068008 479207760 487128948 866746447 866642783 191558483 34240456 47867011 537743768 717978057 685687464 941475844 786510390 955598128 102090058 646226113 274679230 64051016 2201265 255372031 218999360 531825186 775179048 898637653 782217867 620073542 427483973 106540699 888146645 5072144 398317694 880973775 995226668 582511049 317032892 525852544 81519563 483936809 709329123 635808059 199777213 819411799 715002333 700784239 702207096 480129203 844244846 125716346 433408742 335085211 850326183 370338664 844799029 954910462 625994341 135955707 236143420 450461129 778673475 636857636 44194353 159496981 382399178 449813620 286874678 864351677 476122831 576498316 650082895 137841699 868306074 371605075 231611263 786233300 46515924 250027009 698854339 809546461 390262683 949707904 653038060 793582633 911814579 340491338 779227672 828305389 729558102 304543001 806691224 735279500 470394748 829392342 763871662 723840253 845221477 514601564 439538109 25399414 767370849 403195894 271965208 614375460 977639050 961980859 709648673 730213585 528761103 288871359 168660554 313899587 648603899 886312642 144139108 988088505 542459813 197813429 805528218 791882988 67590468 714703595 73483217 411357093 208249327 204541708 965136371 391729568 802602384 46234496 814401058 727528902 595436155 401683206 921385049 543095625 179134868 644758469 946891047 211757128 550446928 365105255 883107238 649891723 964504340 289297092 982166147 502322600 628318763 575133507 201686557 443169718 321084855 231966505 710688904 259922036 192651129 845801593 333488919 143210892 388212080 6777227 946526561 606833017 237662980 584156211 539749189 735049026 423121516 264893689 942754124 105629154 839665088 295352584 671310950 803930120 317793960 429960039 657196626 743103028 671011018 372058392 885732402 820671445 91990629 52256506 659192955 386598041 615604825 917341235 466612136 91741260 469728550 827131166 69546973 483394938 844470258 43781269 68520461 75344839 144838321 450982809 690659201 433524932 626178949 790257263 379486734 549254452 688197417 976013766 269616303 174850965 454151885 485121889 396851993 758874956 134455056 282767879 825077707 452319496 629370141 343313167 777748348 906592122 352353522 721210778 24457292 426989600 669920178 711714284 479053678 906906300 415941165 716845531 162179721 877195382 994493095 162195843 910832312 268058746 580292221 702595260 952560783 992330313 575147564 618772455 647335059 612030053 934587193 630752866 36401944 883683300 194553236 629317796 384412134 196333019 154791247 189392606 743457052 44599364 42659296 505467316 22598111 392334272 184801607 741298449 226622538 217950312 221996347 33866542 864998782 858455358 481915906 384260084 993473032 575730400 648064065 730926577 81046239 128763130 680231477 87393691 714155378 284128208 628629187 757017491 286526773 484246704 273868498 267826360 56425555 583678916 143437142 55192003 866951880 504039218 780909350 369543464 324928171 264689925 993574121 918408828 303116399 248023433 619285153 912726440 442503283 743860343 631290283 281955401 28959730 651462543 104020383 337178391 104967190 823774230 419152439 432287321 367673630 219338173 726238109 562957830 706987543 878235205 137457296 176303438 416071677 244209110 987052343 137201938 766269931 966354351 911459203 790884867 380306394 476145529 832281254 709394538 503388704 485096138 975915755 132573640 981356566 663745892 522830846 240450226 276380600 847260484 891318212 962194793 908791535 403827951 268212970 503991945 791678295 30238974 287341137 698374241 447204471 835757849 258115483 711060127 801664233 789576222 276442252 147472020 76615401 279878611 420575278 614578409 529329091 485034707 668598965 919849844 183248232 37379875 958840994 676969084 961554459 843454927 1494582 223910202 770947933 285398997 122165128 468024751 743843651 380038987 349604721 500280988 221243513 221752744 239693712 354826241 991843451 556460339 93822765 177929401 249174183 162021006 592743087 877436060 646710625 905000100 466648206 578499238 303775309 732320009 665671195 657062695 988849596 84744129 833330351 229029645 964419038 856019260 479889960 567496200 178268551 547705088 950228766 220104139 965330881 933410746 568755669 786681807 980551915 825417339 965949204 177286614 123065686 188049452 917813401 594356170 972972330 176904761 803283119 38345779 961047680 243943128 758550168 543981890 470129602 704929395 659272249 799494336 86844412 585866471 339695143 173140159 210457922 780928509 254031680 59884354 616306680 186936566 955506910 948468427 217916647 306060927 172940305 417376727 492413943 489435 980160535 899227799 888682885 846698190 115234107 128253501 473687527 895181415 343945263 574215004 878089719 639299597 186902052 398773893 933914998 650570989 247873145 339481089 728893379 137480913 992196399 233032377 403313129 713106558 614943703 368790390 269444732 839168108 541665729 65321858 196196156 19645496 192148593 58393649 278473440 346150167 642008685 926449867 288592378 22823902 188401693 623531144 414355254 612507052 589951403 148688407 525943217 137104316 223680328 420721483 252634448 29069097 313710208 192448204 202394668 734326540 1236286 93775422 869213187 797121652 214431391 536761873 407343588 391559023 720054718 602657647 695823189 334225562 174994018 343879299 5111463 780452613 929059672 927401285 315956495 108496363 326894551 957001400 688035144 782931870 187289323 640693328 526050551 559324358 673540419 989126943 658242668 388351171 592752057 365520677 563521700 727407263 539838295 932265849 342313505 346907012 864829187 32881992 547507222 811318790 490086300 990574715 877748124 109202161 802983355 423964926 464839154 927750195 339720043 489572987 361829624 437819284 636681929 464348425 164116467 839188663 742196880 88342150 189245134 138335266 229631190 838177029 215955774 813489761 203516970 912849134 844729478 876796909 833779071 431842817 816665714 474084650 550402573 618037368 627078925 583587730 763391979 878047343 165871611 730589616 791141281 43332235 117522307 614571897 179749498 458484006 719329895 104087705 722888725 979680032 512758299 125348617 253773494 909491241 540969520 432872886 680627426 420724181 381355223 643172936 638898014 582546379 83383947 217398174 265953672 90868918 773203771 644410244 244780490 481130068 357976940 147472975 115444189 277250644 712923392 721207778 743572440 988753188 18533516 513739186 186909358 595981168 742630842 816043686 154056320 526679823 371398278 819053915 539209435 306071969 631546424 348195374 814678814 32050766 876036947 445001631 833494595 383415972 636792567 703774107 607424315 947252144 81611379 1082279 356826635 707843631 270070678 979600092 186393328 644141347 621137147 604554574 341015518 489615873 544023854 16451582 634040913 336518969 301999473 975281418 302848725 71346160 19793912 147509448 914614829 287184635 610834503 503529063 693635296 755367315 220076177 465476793 783918941 899555844 712524240 547118593 723635676 773749609 841543878 962668175 120037125 859565635 922216119 889531736 797249926 67393942 946550772 404974189 818775862 932768438 402123658 875195469 456467790 680388126 369571373 119859945 29712827 341446438 575747192 232585019 667647170 193457792 59015608 730714782 320867868 982692402 692045846 848225139 863130624 101564898 530737672 171093972 899651887 815332670 533584281 174539713 613489966 359161370 24244823 56021451 903610282 684573067 831976005 634327665 252492811 76872079 705481147 633481787 986881167 988993237 132918696 441475643 422608383 927259022 297788326 274918879 455102675 648237184 690869668 173819707 326655676 791658534 151534083 277342272 88834868 212359167 70686939 4301919 569832651 419665055 547730987 248672026 408894946 679179206 566429539 389218704 398007013 174719425 950031943 851702340 830980735 340693081 832944342 839503803 522725101 431768348 60748104 386671680 820934578 915868398 565600199 76221136 766419830 114184792 865254489 755739377 92202820 698785988 246478564 315588051 382668225 565466330 734420694 796595823 688809360 356818890 499544717 43579665 43344446 891878794 58540292 304503850 660951381 512016554 390847560 603698963 647749593 904220247 892708907 789537442 661293302 386037106 726292725 86841916 748781645 483520860 351206834 379993349 843165011 475847093 270400395 60525287 270604705 494036255 935752755 487654001 971398169 930155937 458169762 11315317 461025805 460635250 205532952 821383406 893820722 431459218 329391671 487381171 467094993 491564194 620727776 819906976 74485052 290961388 653838178 632016062 652833719 875496895 889224532 242268379 219100637 606006076 28467434 462642870 431895194 375147389 856725810 669962711 832766438 575430825 375260766 829732584 78696569 763536471 489350561 704301954 504170145 976696219 125265731 825885759 131403473 301618655 520771818 333736462 314871301 518953669 97378111 966331563 231456649 514819980 767222595 153763295 645200588 44637615 310114478 968559212 45978899 611463423 555091540 806278426 490122048 627607153 290574621 733207461 663934678 614948947 388749801 557281749 214900359 116299773 138684533 886729485 322661265 985631117 97967083 609889574 332857318 107729767 98468884 664051538 86274449 949351498 594641597 620715026 853949384 652229928 643606114 66716954 850246167 316105814 927689763 551076040 993027227 325947048 967287373 794390651 352971408 278216478 27135289 933011102 111504460 709386497 253076865 961989584 375290498 143801767 187448877 419757979 541671182 955659118 878794934 871315676 791488359 234098810 790468348 996076966 419277834 699060633 928042675 263432841 944964871 840223708 250655567 801371693 606579903 799383730 606358604 59065648 238718012 160621498 263578545 672715985 994555272 638086341 233207814 369289857 248465942 583269302 716966888 659019924 716957615 257442181 232359087 144678650 71034579 395842197 447382958 505911509 479661737 686773073 428985413 480860530 840566060 675757073 629672162 490952496 266328600 867764936 690844165 386583650 165764714 197404321 462135006 394688822 788812457 641223336 813158763 742817002 417022361 435893554 218208238 334675296 265956677 997662 975818816 32005471 717096862 896879146 484881945 974782719 511030939 490628960 957115111 502989373 864728056 991989292 171027164 255375325 188321458 634425827 959790442 193130425 367721906 545361264 418614191 478569182 823144988 152751642 669361676 876408463 129563178 391493750 608823177 917558070 382788725 847278765 359779292 108821183 886449301 59656664 127144283 518936408 291597473 241669778 967154239 41124469 307939430 798100356 392354618 876079422 998834070 402957968 991242581 761338540 94145431 121403212 289033638 464001299 407369021 609284356 534501669 319154022 860303612 498066943 852847741 187416123 360459747 479316470 689467510 637449659 698532488 872101963 816960574 180261015 239285352 992414325 191696945 875643829 495560472 778266614 590325018 60822385 841020986 570628718 694862140 678489960 924903170 649127822 631814991 538791094 668608369 497478136 565349689 490551513 375612723 866664851 870260688 895076465 709641455 500382017 373384674 698168778 579511158 746968702 665299458 131024548 127051833 704805985 781043904 723845315 158122377 663793178 435697831 890330586 217283089 512682823 167124619 766323495 69803365 67251175 806193957 623654729 286422371 496970226 556287221 789040588 924789269 837756006 898728407 51282998 293942858 976002978 901759542 917960900 553036616 818692411 31057981 640819910 471190163 999747745 979515314 151719863 382169872 649478210 815274180 56895956 60764654 441013969 413356666 48751100 683593413 998675427 871906049 261196548 894571059 463818443 616996620 870964015 527406057 480977920 68144169 959889867 562110591 901441722 30548448 335936695 666099036 539662073 279575639 270607516 731062802 683363378 892160407 838774226 323793197 242249237 153098999 64534632 839028437 845892740 96612768 82917149 646496061 372482578 408276317 422381101 999694276 873927212 316496347 548089905 911648544 97188931 292356756 895341697 190237180 537765968 296364984 906093372 511559355 673276733 963327515 580257809 38836574 313491134 296934351 474183930 470983148 639908280 33598690 696413640 601704717 373991165 786445735 83013344 94742245 839317517 374733361 346638680 771242147 711797082 13794725 524551901 981159140 721572290 536447723 463287262 224719316 363468544 502736850 209542061 807310445 862076869 247233370 686436199 126386077 217542399 110781062 557167415 473393783 202166297 492420327 978704496 628678381 266074303 339710221 403143413 490985028 929657787 474867782 655799905 181282909 167712152 788214413 695513432 647839596 644975066 736367851 251778887 948978797 450887047 123140298 935667664 540049787 673069556 266699425 299260563 655060077 938907708 192562419 989783872 545502653 779462408 513907450 489666628 309698443 958976279 754124965 274456046 51988384 220755658 158214355 660299062 196603447 110347561 716838415 180702142 189741830 72805783 122768995 72148953 150669353 252479065 406933244 54828833 577738579 817984129 852564350 698315687 119164657 365570879 328491617 326348952 223282970 472502085 786182135 726059449 238767143 436439651 123472767 454846514 635149698 744445635 4172107 737324869 604349998 780329620 205315950 250968220 181600224 761807542 133645401 48766057 444258590 144542452 349638513 62861447 814195868 681404923 484531942 283359512 826241530 138258679 571774610 971698000 366448727 798375647 357281490 837434418 171284948 124905170 943400368 235409683 463753638 893426409 776850754 574356022 151339860 720292808 228807014 537952199 659468243 800455563 372382742 58208976 173199746 343707836 125696735 203217817 381367329 539870023 299999090 48547888 754634641 544791222 90238131 63799455 246412770 728641159 949011551 693003480 127341449 334985706 797077299 985073720 105847745 937247238 851869662 716435521 349434531 374270562 556272218 97424751 400429416 739043716 575130796 242750623 541333916 424023722 854266677 551082662 700152311 506850764 205049672 157300011 232006363 647411752 701226820 407955279 940913853 958015562 533052120 961037672 232807728 298948797 300217559 994928199 523348803 609369517 596305755 53566426 988357752 385880708 216692838 655495270 432881320 784255577 126274185 417752717 563327731 785885402 103076634 638625037 22635459 732401991 262156455 329679528 837947091 537999195 35089752 712321661 566236675 246919159 253678263 274726676 683870024 149358801 419705931 166911960 718247584 493896937 142545411 610043501 863274899 190738534 624326172 579843900 912426174 435204576 761049533 787858957 656212247 327018456 710428477 436967522 741084483 429111687 913932618 825880184 834401333 872711441 922380367 999914034 810854528 26434992 473235765 561922794 384284740 661980460 969193814 954796985 372864807 803491109 383433155 282468526 940086410 776572982 312036036 136362252 435937027 606182005 142943351 653717777 80378134 558941835 502382634 587158229 504938900 384892429 520088043 655184561 619086962 431852529 367496797 943427351 710306977 879061096 800300709 539268740 708698734 954675572 828865921 170326530 388566400 678611054 384594426 224860594 951577084 889995158 600391925 133209409 35149204 470982662 636025881 817083605 157933801 780222492 894229889 782017218 557954625 277539890 4639742 328937452 917931273 103293301 201520049 220400148 739363917 280233063 232668453 314900035 849866745 817702094 906452656 70458957 882634088 659059116 31308660 18323440 146288568 159616656 162318686 568867924 321515930 450177710 464640363 415242919 436784938 225090095 242926608 239462708 678600760 672535769 59036351 222621276 254286908 333754312 371898911 706036974 556385248 183881236 128579274 968056811 229915256 54269960 904494571 529824566 416511120 377545661 182616380 928986267 145249128 870020795 778403753 734242187 954959232 71364053 986264505 602333156 725650338 611103290 660314045 736012121 9032680 110722521 616316438 847392578 433185415 669367316 126709595 788248189 756472001 449935966 17322974 98232628 662141537 382956796 695175555 826531719 991250945 208199765 767526045 97199314 25879502 297984287 123749617 165290956 374197032 863236499 471313505 778074312 897962194 864671198 642140787 185207490 431634550 769339108 401361711 751358158 94933997 108596334 420398884 747483343 368612137 439807231 732443641 414126647 855459157 233023877 932586173 257174286 661051090 406284388 567848502 241220934 217741256 275514050 937496194 940363017 619844534 313670453 674779016 33870298 147581433 715900833 542020723 885593235 515612940 643579072 383979311 331124334 283248654 515713753 156244450 943781706 615427477 419247991 753986036 738605337 346437441 909761705 524747938 212278696 702892014 825466941 132391902 769490722 119832748 41969722 153617117 211450763 99848826 359992016 50153736 729048319 890354141 384911625 24478147 576479953 339129616 875941159 639047599 544085134 961150736 592033022 675081659 155658875 354335507 812809612 959395615 329232670 127840868 226872594 429373890 974152761 114578131 70528224 169568771 989483971 583872742 99162119 461494612 890527101 384388485 19381511 43944114 860244047 54770178 960019396 570334624 597008691 96922075 139743138 398387594 361959714 517468094 868568969 140311850 641471346 282323825 420785065 384120736 351975183 840564485 618859766 736641809 8325031 941167505 709222464 572216434 233724437 485063165 291127313 627280613 948934785 450356811 922518250 36554591 540624584 218338172 183491826 825272965 724678278 455964173 412359937 411878545 6005035 816695423 565828130 413746097 718211054 54583802 595633038 600665606 636624606 443515778 985065150 263882390 881064615 423369195 559109085 119273853 197407809 435571801 39336155 903429378 658641429 932817180 55818227 314625471 978781349 272099266 760329220 254169378 202896319 867286413 447494159 986818782 674410781 693553209 891704176 29044898 298563289 863202203 954720789 407473910 752884180 110033135 382409084 151665814 650856322 678367973 694945266 48294356 680529379 809715285 116223965 365602416 630968617 578899347 115829901 492548789 482580888 629124773 550196605 648175523 730305571 932492137 57961103 604802453 881759496 827790283 130252414 128298196 897975559 842036125 210283827 913939792 20364403 760351858 246887131 34461459 343228790 282883978 921298314 84824214 736824130 475948242 921599932 833498597 179260533 136434723 394937967 24716003 177865992 153446602 450136239 711989098 757541927 439667105 805468281 945669244 371570974 860610960 557302263 472773023 860803942 448418593 651367798 651666781 270405703 926903445 603259382 176072237 952773429 782750355 223723634 996865538 50516922 148647079 313436854 906030815 674604394 594919528 827397757 757002699 747377949 73805231 154834273 684822858 607079451 712170767 402570403 161589255 127933330 178405580 529920008 247182671 322988084 469478094 404812449 824516599 590423323 241325720 230396412 216178021 449313365 707675824 803779175 679398012 431515897 190004919 619806546 109157472 906112291 465476726 370710502 934782044 851201201 227350547 426223512 421465987 258323985 303747091 177945053 103856619 89413404 326635398 876654128 775901055 268019557 67921476 677612393 912199470 636224312 553856363 554119947 246479368 840732434 242028425 561636712 520682083 945364109 368117603 982118890 698542856 836664394 684462462 487653434 298765220 449201612 391781468 27852075 809742166 871052487 708983163 691569985 785824875 170025047 61901263 651553679 703393113 653995518 556913695 945789303 998258023 798249238 375975300 866931321 302104514 91935568 331073964 508664028 97095719 742705209 311635055 242872032 797483499 888646966 37170531 160766212 554565149 640582027 570713365 949637078 470642570 843960062 387637879 883998302 790546402 582133440 684117780 667024954 456265644 22211942 740759287 171388625 91708697 56165163 110627426 564461739 208532458 486459129 384036687 68480437 39939468 842566440 446543885 240789193 786512837 78285731 636071063 79346652 921982769 530407541 255176509 428536773 86877997 633336522 411801360 452947834 376466566 770448037 975937180 942178198 607953649 724847213 824559559 254521624 445481046 39807698 509561540 663900247 287622337 326277779 129995881 762881049 442010682 140710508 109439063 66191597 441668908 684939251 343016169 96931694 759724560 109852652 907414534 541985754 705198633 537011025 718285546 925598533 128965196 183786863 19506269 677349669 858350138 382109130 42649870 652387988 497564410 396183411 365932483 390312202 371557600 157539662 598666951 951408192 30123068 813332624 962958623 969860206 948340878 521986280 492958095 918788462 94891001 234924270 107290356 875184390 932452424 877719457 759503109 631684930 604277715 964431959 265966205 342711312 318910968 820683468 118569170 895870788 895667748 226672766 523450165 50772270 780801870 418380931 855375771 743205238 284953696 668953614 506607485 903756419 713578575 985181532 424471680 627511123 87089381 604292959 718016042 982015912 266359826 973591410 744444759 360493331 396324327 985166726 753157476 173135577 479687546 585692604 259945845 835651689 301896472 619201615 50605616 389635384 745017356 285792981 305775845 964272921 276278674 884024647 22975593 294939322 864801530 118228974 873477071 52228242 655518846 368246752 437435541 57337045 939582379 770776415 499151596 653558812 288319518 500012333 868077296 15279701 727152807 987402324 795630096 942174178 318216702 235048141 910945467 3637102 668187933 491740662 366593491 125242107 531207336 937897576 41100379 286227882 473286764 780268236 908206148 562644536 320821334 112613086 609135565 666630230 143349160 705370861 810614973 973250873 575315606 685476769 107070348 893652140 856128336 582195440 322192753 776998589 633182984 115810576 440100277 686813788 847290341 618143195 522979143 533658059 13564831 157595730 888946367 869019568 410518608 212776340 434023333 908055708 824808986 383975660 373764975 520290856 315199990 104769455 354345892 424838147 849915556 990968098 612287159 339791474 294159896 615106296 893884235 962392693 802024209 835081902 57233231 36059958 862262354 346034586 334983098 170701384 776733466 659932776 590694091 303347308 966306120 663602298 983171848 367521176 762284235 271093542 429184997 752626254 787917330 164037359 461761105 674974843 742521272 111077784 379880293 567073323 24418440 40405040 530156404 289466693 412613670 63611074 774081238 206471594 891857463 105402247 285513223 65066080 327159040 627448576 746517194 238031143 201977053 965142610 534657423 178153802 383592348 634487953 838740236 359239239 272622725 735248500 388483974 113161708 737545006 520019260 775064215 797027691 352994101 53315382 74979444 863941445 659888120 905973097 89184793 932177349 207921932 910201804 654743612 495711783 984224199 838235269 719723166 707564867 445984132 524456406 189148081 816588585 586740996 29400272 754329056 44627383 57397026 999621031 86980302 514113117 502421200 956551742 865329507 984442984 889430371 908238776 296992168 297214592 253643239 443622636 895598598 767700173 198031102 278528292 345303857 28170122 453668413 678249851 415604247 249136610 323424005 786373048 63765815 577407557 861212846 61469943 532441465 394899490 596858659 230243395 973811691 529433178 796024188 769085482 361521883 7826427 227281629 810649209 273183369 355184985 229942090 297814615 599616034 41031132 333872846 558370886 949334137 439769134 730072166 276354185 343639853 255109799 909217818 384440068 487289728 354750205 242902204 436456548 713955845 799734728 939837038 497712585 574297445 916260227 49785552 268213832 830237790 446961245 310119489 154057898 582977255 133241659 944697649 665987702 728336495 341566321 818067258 884036616 566171894 252613163 625375853 860722369 697508795 28069424 824720852 513934823 493223861 295419240 619950691 143182190 964140121 673164664 733463445 911242809 512029703 955075461 957647942 574937431 330927495 361862338 856449593 417407009 824366601 680796786 457824200 154715278 901918397 112430300 589876324 421722271 853242972 750492787 744818110 436149552 118863796 358138527 869487467 412191961 862501936 767845466 511661049 602394561 117824753 451648126 855700696 524469314 676119531 858108827 186111423 51098429 897723200 145030456 677789212 320035475 266968523 915929191 509252277 427616054 144777152 540085772 696662602 587022198 257470298 611247366 992250510 541944170 477546881 721096804 319787804 885608735 377616733 162385856 537680596 361222220 281386417 567010104 244614928 454724813 982019417 814615418 958748352 346493663 650501972 64033318 51651254 309449310 952964999 723550182 580931398 661060549 292648301 282603575 59560544 549525360 913778477 759361471 676609616 538013222 872398832 34245210 981274044 144433283 689177648 177206265 600671371 315365042 387766964 611189664 468799899 306283758 916742269 208362060 961166734 485767937 823871954 727935997 369970670 161092480 864830615 621899582 392323046 907834217 984840461 840912811 101898250 564576394 549271808 114039294 964967902 56997118 638094237 164671936 157729581 530707856 788613418 199271591 162450295 232004308 322136777 475991045 763101914 904013539 759042635 489788332 337115379 589815551 344371616 619667645 133145615 21721442 484004128 133026020 884724415 340413036 177417332 37709558 339328470 699843294 215136224 975120632 689681737 640951284 418218909 166889998 802814080 340730025 394712558 819301592 194948313 711745243 829999770 184277714 116134360 800165193 389506485 905184009 50505911 695733998 703983275 617448366 827730507 686487819 306199077 420567120 317904260 44108488 600712728 674196211 495072482 383796230 26450823 414593089 854042969 543279806 84147070 563967000 358646023 355535592 383547956 933099661 198252435 982910372 104388173 314787899 957762731 247045544 215044799 945190177 23168708 425264277 479615803 213467044 998184488 12727353 400863184 149830353 712915740 818777228 566949507 394173603 302512474 429439325 733840661 143603010 135169391 481227991 515528775 682420698 381424458 204952637 477601674 72319789 44967410 525296442 989804522 953445470 549908186 952852517 724065817 512478572 779700497 260916995 770519633 374816478 370999439 740496544 479099965 420676209 779926288 12880034 397639240 428315090 107683395 144037118 418825304 791617329 275488989 427155339 482133175 87793820 228371814 974711908 180902591 787803025 456798614 46077472 303072052 65299050 183991492 196515109 976114222 602941089 780047570 577864324 219781732 153505461 587302888 892858017 564512343 415244351 886912408 442487033 862727666 904997403 698431748 502449367 299105052 134967035 411236037 632879598 861881902 503811596 448685645 554289049 491757360 9373647 61785552 23553019 816799564 147392450 983128674 709302788 990789048 772632268 150882562 154868638 801949379 356830477 642131951 173004561 809309309 978417148 193774305 111563634 904094981 758536002 455913211 406837724 622117501 4621909 630083833 292222575 205121708 801658922 455746845 70420199 226370780 832867378 396568743 883911887 814950878 518865760 187455031 337105502 619858812 384223773 374460611 32882136 96645543 568626788 169016900 223792302 933639188 504482373 960504159 229947415 293054628 12218835 352298243 476640607 739734653 976563005 770766681 202291338 205330092 939900750 134452384 264128855 126741520 847345187 590322262 309680510 223188633 360559254 443708176 231136841 99654230 542575037 727575791 517390680 15950799 407062573 937896087 960385684 158780940 114586633 451763677 898161860 140649130 226515170 554092983 538547517 582699514 934166728 55082392 868355851 506825084 603230566 587157903 514191010 172543468 403736008 25979078 756320039 213704979 652726742 890828319 92216120 295237046 644166738 657809821 563727347 541080321 283111219 795619237 533134452 173159519 735155277 514743254 947139607 199307065 52453477 935880628 139136552 15432293 328254625 864441420 584203767 586162078 744178784 846115297 963933532 335023446 246817552 649191065 627976633 675999713 196860054 555872360 612143816 614828449 273643088 154170124 417141240 886539132 889911603 796452857 539370117 915194646 494335243 50010957 231149967 103758467 504887338 95375092 602330216 739933004 493083942 448772232 549110690 692485476 791112537 136890110 838478158 117384203 26879158 716610203 107959437 564681445 860440787 518836277 346809169 986255910 167048872 433141535 697015610 107665358 527375163 943327216 630767924 974078018 445859282 777083876 757552358 2196412 613759383 175358988 812103270 138902433 475754352 803742305 759227050 515397694 388396320 888298286 816313015 123084800 112381448 452434291 474123068 655954482 825234369 695258204 191512775 8604666 260805184 306318014 650881191 664600272 823254744 858442122 704467536 765587189 347153191 407216326 747063431 310569545 66984225 5719605 580353902 317929822 508275212 409096163 727892367 512817547 910278926 348076266 273797743 765491957 114731249 107744766 473792358 155186567 602059421 662781878 852327262 172751846 208522626 244214360 442985631 481090055 324186769 725569271 966916416 292798197 307904822 401660200 734562121 219231976 907287283 17596952 279772019 867615384 124608533 775078528 679420665 601255211 8657705 228447620 107710274 486723237 987163893 811204921 113034094 718715174 880338804 779989839 60491259 745204739 128381941 948170512 351817159 256060923 936904197 10190373 545800797 528579002 148215152 386988485 194585375 188338193 321377613 343635575 865047303 592518972 247419578 719429418 195813375 751772509 459993185 58551757 548518909 348342280 256106586 215298486 313323737 888634704 2816293 279238233 105427836 997491646 295406737 902265938 380757719 223635486 896125159 947838932 570857362 954251836 2062851 952682049 269663098 913843450 813861843 575442070 427654663 618275461 169811362 389766869 787033935 887417989 131939444 297681925 196270672 847523393 197603496 427897157 949225270 701964928 359171382 835619009 845350139 874615846 656213924 682286305 675460451 893584592 29551511 282871889 627064707 39013349 63855957 595234390 925318159 191671990 541193074 314954264 833674961 57967021 719338063 16421968 727612152 291307839 965320964 390900261 820516528 595694412 282921482 841066226 567285668 872166520 271314098 370712318 93947829 997018687 36446811 483117391 383192805 303955175 623709181 991195660 346328356 40050332 757752651 442968914 936688402 344514602 155567892 215801905 85989601 249297218 923257338 420774460 195038807 638923633 948591601 789336405 967910192 164324035 182463712 605703011 760971151 388913271 578771249 66817942 769265830 16903418 839591844 456315138 737497765 80163256 881166373 891388791 776477885 825592448 466752009 984398898 451735476 417967202 201585485 665116151 159382258 367581333 126120243 931732408 512980862 988479117 400649159 906450837 998458861 634096877 176742918 751697337 704466815 868691198 546036791 160721290 798388359 405942391 568002861 21552128 684253095 677693583 762868693 955059972 771077965 747609308 993281650 966638272 558081071 105280256 219433003 395616226 820327637 546960669 849947753 548246119 323776864 356822302 449360403 846702505 885885289 97775406 11654421 702645061 813642516 982817149 253920219 89747672 249109229 636149851 257388446 879143887 706308350 418644725 221156242 211133889 991239925 479490938 223782061 163582907 285468515 211391207 593890250 334594077 242645095 195383141 985608519 590585280 319557245 778122562 97222480 713137290 880122969 783458668 461392429 598583630 486385254 734250665 201641315 673726187 696928699 565668068 357607066 456048489 845137515 196521491 67363157 395721357 351734235 504964208 78183039 454380958 87755672 588015536 261686042 524261747 474105910 258136852 352667546 75603181 153632457 41953622 358904629 149233632 860007850 971851221 77376241 651662493 201636169 596135252 20612082 803554937 74092076 22563005 821112891 620482943 408092884 98485869 998697759 458973065 110637216 141913265 345922327 698551152 252657408 880087306 693761168 917997056 968561526 498800693 254875663 204091166 798280276 822228761 347695914 707112677 245129698 146786612 408230856 666712615 77703114 811317352 453600651 544152567 41978900 36673847 779571218 995044220 481606241 657671084 85200661 384859290 479611517 975749550 4343535 642622182 376872227 785963626 365448047 477406069 240102952 923847402 963091715 764727228 716514567 445565081 275796205 678640054 933693701 56520841 477268260 390368920 674500363 744623714 162670077 745408305 849877702 15484913 347317618 407111490 726770001 174209138 960995849 405338410 996773109 127819211 684273172 511060739 442191781 288324443 300445164 448419389 142528103 166744832 629381979 378998447 188790635 810298953 74773419 950964094 645471239 678545560 506279725 479171561 511377880 724849095 135757426 370377485 301545717 807293870 565447072 864972364 994757847 894768273 649604333 801954166 240873793 599286288 612537396 329720424 9098149 21071135 358201992 327592194 32764310 793151679 267600327 628600827 238111650 587148223 542415372 595057187 783322995 195874274 240154567 695482492 709153130 435486594 832280965 355295851 560270261 90688191 368939682 621595451 296565205 820866340 512008068 557735277 163771750 661955014 948882952 421111501 220871853 860365794 262804834 738648987 646535816 423139324 714573850 893246989 969946436 247485945 900756251 781363645 534853964 352004559 252127883 379842800 233034799 631257976 298254614 262547016 687816375 572128881 721732492 838114482 91402823 591237740 521306447 222798468 936442083 799139521 716360834 820581884 652193724 530682184 40438779 837333346 114922442 970389938 746793633 520045654 886441498 678391861 33547853 325149151 301732889 275340121 40915517 991383352 912712678 956182439 452791316 519509843 595985248 952240556 684542004 361140873 755876482 516098677 345927355 349504308 341671436 244139975 436955334 931875264 39636765 623708920 697989653 877324974 77827067 809855341 818852387 609682390 198685540 287145372 670549442 173369343 699047347 557569164 733147966 914322635 560365617 821425687 342518330 26423066 726539656 463508970 100943216 483077624 709596762 142810456 684915767 502336947 803492296 511263120 66018939 414764372 311026106 406998729 652699459 330099925 971942695 343614586 542895844 641117365 919099284 856852441 793024863 214957460 218417686 809353372 989626557 520184425 956917724 279286819 509106314 604907810 728594454 507883958 623981012 659598342 350023049 542188903 156784259 133123898 23982140 919714380 411332837 823020678 546068043 587679846 69898041 792217467 802268286 347925376 80371897 543139368 695154558 506400541 627214248 37126259 53601748 408668087 412540631 831335408 322884916 33204544 116903660 158280544 555856814 199880873 230891187 391610019 809686751 139162356 145383120 224263095 26595071 518246929 622257323 485685870 239202962 496704389 352497908 96523665 172589599 604088568 61846073 856693773 179169525 725331480 147547542 342378619 644954111 493478703 444879436 448731607 965944661 528104887 319637415 198257890 994361939 594197513 558773432 190774883 26671289 558596335 580442508 486990674 380540917 467347439 606126156 653465467 410109198 45056070 973268763 906282692 841751986 563265945 438074746 58862026 579769351 30452879 90780804 393819117 83703948 161440620 2693759 758401414 458902867 73049789 82104729 90376904 184048703 451098983 590475984 928603610 556165326 455154843 660966432 813314618 661821739 299761653 835364818 235981983 580919239 182364598 78906224 478702939 43704901 720416749 570161505 573244817 99476687 481064763 430143079 302844083 883528368 239572106 979424154 449327033 78012282 513807429 260251343 911234517 231657721 12204619 688671755 680482795 209758560 636308972 101040015 150017926 702899931 452970667 417303988 557995272 778148814 35491854 582429898 707476480 837588123 4010363 180136023 454754406 447422702 915998003 568120593 584640190 425287228 931071728 365189055 508362697 381939907 799283735 862507441 935988017 55612622 36275479 669814348 266334775 261589350 636987101 694019113 263501144 148890536 403842341 616730628 158088830 803400484 889797240 519312457 598337606 310720482 608620578 83181936 468774214 172510844 438085511 69462242 185520992 79897359 381136186 891442349 263725937 983582067 996725658 863611646 896616550 553570511 297381104 973056834 758289141 839437609 502817040 684467719 115711814 296833000 301669911 128716225 254920736 519224571 745473625 438865604 967356571 251914029 393021457 832419942 877751057 322189156 15230166 454854683 745188650 101409023 401689150 327444983 369347248 258498409 718150285 951982514 800025967 63196675 310887569 160319259 58490784 449612625 747761430 194952197 582468018 175084290 198478041 586259298 448308991 736828735 969733819 921090857 808698989 779667203 471977594 495475518 828660820 838610756 910544925 358165790 294530090 873038075 977818802 245529021 983952289 796403977 580889620 796633798 427292467 608891515 188666654 27852478 184160394 541632509 588198875 55283210 449259065 288156958 389775260 908704988 760585359 559398251 277770514 186683429 816979697 509495320 316427315 188126748 650007905 301131422 660531745 133077554 486726479 680611153 663272524 740854854 326538858 137782795 9532134 879317970 985260117 67164439 145784095 98440577 370765106 931105877 75423018 216653246 594032770 803848775 507775817 822757517 49237592 369272934 873197685 792258848 656196380 670689120 841704522 964077349 865131092 414501290 400174396 973839948 212646885 274203160 275098406 143588481 52585617 717189662 169147835 952769114 632445990 446865954 930904408 41924792 746892095 280161653 953846990 171098581 368428553 816140451 228218923 965732845 600842801 516431981 941936536 416462709 114556777 700545825 156328531 325214094 920783142 604811890 972247734 694626417 160436186 414227338 800717744 507497352 337014713 468309322 757986197 871398240 802520383 668365 215789831 322626660 163928175 86739937 413572575 585233298 24755656 850822046 647557640 73624893 28351253 227103118 445866047 242027459 799464226 938700455 295956109 102091127 200584010 548288691 590578313 429253345 609369205 804394338 706994368 537665131 294361881 447056291 816302562 324048011 949040074 555336200 981673994 172082314 938579796 590329614 344023638 222282819 854333524 329740178 357172732 655441478 308347948 767665871 838005641 61004499 254193102 611085456 238925470 291859017 404453472 274531861 808429666 93502799 660434212 540225983 348571038 221377760 126523316 361370471 129286400 272293706 19556223 440110533 293598654 847999164 176382739 549162579 324448135 719996571 824624718 680390556 581508894 196739533 754326727 944262034 372947355 77044495 202300404 872377775 234528443 874103533 110836403 599099123 32034718 404894432 992133636 341719916 270636152 724823345 158220954 659676005 586779135 680539094 326043491 185473071 552692392 990654626 924875523 187682210 361853056 450563370 973085185 221971927 837626625 939517129 404849365 381215873 9816058 586479440 625340559 333322602 667519569 205543243 897686272 782914922 281026897 541849835 193259420 885808802 329320656 397749476 483338864 118569209 174731790 334266626 901625312 710930019 499302331 60828394 899955109 781732047 102931328 757754719 285177472 191965269 121347743 919158980 938043221 401833766 33902628 903580020 11297746 52485638 968248371 584531918 209077306 188640363 34971593 131045620 694212355 236954667 522030358 832433489 386107922 871254642 597407160 422353498 483072928 703689178 818446448 343053612 186365802 53009415 504377631 397879275 667762081 907011493 80349990 210772160 305442508 293228100 483788050 915521624 348122909 230575801 143414769 547031724 75904342 930224405 108778886 697188141 354567665 32243175 356731211 590107242 498316685 839565804 617527020 819079556 938310065 743650872 955033333 394633581 680393433 820500355 340421944 31578320 396413850 431545545 189732145 267857906 321717848 855898784 529843807 81120261 125358871 300967816 440896907 506393520 483071912 928868014 514303832 899909203 388827672 232702329 533463679 913275830 721428939 200793772 998230314 329071147 836142682 566486607 314630403 675231571 142857151 340103594 841974115 139035364 903867628 568050379 171666685 90509900 856494504 977512251 663683080 386794509 964419273 201952960 396061827 905771249 476262397 619449547 454121827 46457526 431544601 479005486 225299793 52349220 45985326 181079745 740199521 473888884 981424750 346398688 41229674 10794593 227786081 622743337 76940895 99173011 801187270 520194989 350490701 977404778 515052940 157798395 780406292 173037991 357508060 595949937 12750790 947502107 614681339 267427049 682291682 768839870 673713298 998187930 595267072 756560025 549515630 922836847 218940967 583699380 713320673 960722531 690844661 583176215 823179213 545420958 936117253 180727955 599889312 77011215 373566688 210864330 704942749 882279043 382191237 577363846 807645782 967075966 53589499 750803041 562653180 495876409 411905754 893318005 221441064 209142591 841016016 375259043 201350040 437907105 650814277 301933378 331273586 737015269 469661574 613787612 548917162 983035813 608015781 435640140 117223653 843325196 387828492 2887378 454936092 255577075 802732265 933327642 49602315 360192328 814502181 820940981 757708606 357141852 422558956 598679604 799668482 733807049 329109730 533019009 642841199 317512495 506889532 105057787 544215440 543278595 313973460 865895100 396805630 389856945 254888554 916125446 936923297 756273092 232969907 749071587 679750946 20200911 259117507 686998805 438701082 762286075 807716618 644428112 326511385 270237240 414150599 821456445 47954412 765751108 988637790 916271107 509200364 116863192 183131672 929485386 618386694 562361616 117520400 915089529 773066814 302278173 949886782 54962081 715661154 836448673 848540391 576108935 234678388 260989709 94269164 968196758 911727315 985689082 89626213 367341349 298601889 909026864 895861390 679870562 840460538 572740809 689632197 372109640 993344139 319359633 623597179 261206412 271530096 635481082 656363420 965422606 809615004 638892312 702190815 321129408 458394234 356676025 366135838 998551940 523235482 343695120 633745737 973004048 506370960 541359780 291698017 415571528 568659174 470606291 193690344 620687114 24415957 705030548 854926642 73574639 407223231 194272624 264941890 878756222 232210646 833408173 13120368 525780252 885501018 30652329 757525063 767771001 736006550 345427652 456713925 944407074 212757191 814719401 429092754 295263508 40441634 961938 89732112 979360745 109450951 350845044 856167415 241433472 561396765 483273936 331159045 841369847 546029558 558578667 668826301 420193580 694873883 270307211 664458635 502330780 69761924 401841818 557736518 33867322 655036000 710091982 313861655 914946823 665031563 900276788 864875730 282327499 862891644 117016151 253494804 781849247 624023731 576481834 340298545 780977446 928958758 392098553 925418427 197667449 537982975 962965452 130771099 921012577 474407069 908455898 790249882 942182631 579848291 726908487 728942437 911176349 306782389 24482964 277920254 172595922 75467188 64416478 640915587 77648896 337370016 62310779 982281707 192556992 182651082 118985306 117245672 544017215 8968312 491916127 761314565 62511031 162597467 707636913 807904141 246572429 891446132 510060781 944452806 281458734 731963957 219780084 781600525 249389029 231403295 672737070 414039535 613902772 410395041 609667434 573473837 602951689 966064415 418966914 639600754 606786306 629346729 494906069 100816973 565350358 913105282 430335784 276126058 981693268 715484441 608647734 335186519 813612202 373759317 977324840 808568547 702261213 465744419 430209120 46677819 843286546 171714401 606279991 153893835 284534463 69957945 451303913 218303288 637233989 148380660 140250043 788918394 11213516 368494662 63713059 346642252 12669001 557983936 313555340 847762840 665084643 63107499 140041377 470830561 910313077 581680228 348425064 946342629 595497661 547204277 508093082 447947785 494832574 342867456 554122339 231917381 187214819 597698598 771091116 293075326 275937709 97748423 885779977 758206588 138904942 118409645 94151435 818611671 160602134 161896774 518195359 184792309 178531805 828844900 577437728 722501525 19810967 681835185 310715001 704536040 881618971 323412248 568774550 570171898 384635113 957639365 960277287 858431809 696256762 969203620 925128455 366737774 332057923 91595242 6392674 446057761 849124421 795882489 655054455 857874255 950557836 505019377 715109249 472097654 881524793 442370720 83140402 951611488 30878534 647833891 595592588 309312542 484004347 141955131 601275506 647287793 733276084 19825738 648476105 373573840 876641573 493375082 912200778 780368434 251913208 158479153 714476028 789486584 744789153 994790105 43162186 465597478 249565282 117862529 750929761 753919383 949399415 937059610 834116745 214391742 482346872 834163968 833877044 370488434 221566381 343160742 234360890 516657876 7448492 28735604 450518756 169807813 946951139 252377471 558666795 878186800 54028124 24133709 363282918 322436816 621852957 662339633 102455193 4924406 740685502 314089081 289179824 698165857 700931040 627203418 795138130 729050040 20274239 738557437 463448072 432469515 345429113 997064455 795925230 515896105 226453066 165649951 295194120 345470894 758856840 462139040 903677867 813885504 956692077 238139591 322974612 914931774 561340630 897954881 125236807 285143062 364001921 318788826 137606680 654486159 88261735 55642167 508417788 168096545 70040336 196485829 316722346 540878442 636899198 32113432 379428173 470950493 101354985 585546858 847921325 275049497 885156928 528993368 420357078 281549349 199769774 129275347 418326558 643280778 77429559 934811130 195213939 896344756 206682981 315812794 747291307 696877870 785652943 91644499 467435388 303258928 261903814 906236565 843773479 37021751 349620398 874720815 970598401 803414553 233072353 52260008 235694602 645530686 886516530 54129057 20741470 352982540 260011673 69265068 222769457 72635788 578676482 611633966 692588328 462751283 918488742 604656018 201471069 591773813 767182884 522519642 383235593 529155521 361883921 769519082 225520891 841744696 382720297 995133776 84175094 132258289 54808318 650630100 922719227 874846709 281278349 628848270 564831881 441673699 707802204 731261266 517484837 565297006 596129810 384373371 925962871 617848420 844837608 777974157 155509293 772616086 432950542 940745755 599582329 887178345 550920939 380575130 45473609 960449418 350375468 82515850 464516473 250435378 972659131 409040301 265753240 48936523 690134551 813516998 210516224 552571186 781861372 598466700 592108600 554952440 371831283 523441579 938872782 96760827 992023798 67376293 306498475 425589151 508869265 161011037 936927183 934243465 288613944 447799470 584258245 603035674 193205747 240599067 938610798 100144358 570970374 971172116 556219441 508920261 650237027 359103516 529362211 806435892 587114353 647031120 939241972 908344294 777451290 302665682 953023892 530499191 970849635 570659925 226596561 234795394 873838153 277019665 455851289 127010106 43677755 275280725 392187180 565060161 87458244 393267433 489356837 800802836 237634665 803763722 3638482 296391425 464565358 114700644 6671210 280920418 398685632 520198832 541853326 562368976 321300947 896670866 220658307 749696667 132220143 655832818 968246019 421225280 827472178 59312885 973741222 422312532 152660160 479642972 540661923 722867866 118567662 929573137 365939441 638105527 530026499 927596988 840090036 331725716 220585498 685450890 994618641 730373294 124389791 291519484 436753600 717866073 520447338 680353479 86640647 426767810 43482830 70344617 916598450 444347167 140269978 160222814 773080562 693533758 279272699 17724593 462224004 707352360 469553217 741742750 577600804 361142231 994083760 900631279 714653696 77630084 655292954 79812032 519454565 547814758 832712189 359216744 935944545 746337407 246175352 631527002 484403464 93571236 307546326 75674063 833289954 529017151 856717029 570243483 792408243 850382230 416987936 732986021 19349133 398981427 796418683 771059333 190286620 564127671 190881068 738548091 750636525 455494590 633531978 724920677 601015748 250397263 849059265 317786627 26849443 829155050 250830489 73877417 161468133 953305705 580918126 810012024 848147909 621075911 906396613 195247922 882463515 116250086 48649418 802847627 435293218 276959251 7590133 411697858 808844581 729066690 532818076 429860316 949098462 62096573 558617923 998148053 85973428 885436332 297821156 76494765 573064023 225269358 354993607 3322195 857930599 247950474 787624942 490466511 958710520 400567563 678451665 791828644 697691256 854308205 289136197 337040501 370194841 127061474 24919531 344452885 650038380 377751452 23206730 159389348 148349358 266430524 464446460 826321090 866118174 368292528 444283865 614058644 263059607 326569247 397580454 756534321 721533729 35892051 604234382 464045485 68356419 385151307 118075722 79857807 169428569 15359246 13424250 364599655 953114382 387059559 390341134 41157890 269352494 39080722 944729799 371697503 738242298 437853538 982707158 21486622 713261537 856280753 362640988 49916258 494408961 830811 433880813 465952316 381940171 858560946 826184055 921588546 619411153 461482505 566886096 815265557 572673139 501982331 214931001 203602248 34340585 569425425 730799858 766128508 280350604 896109771 145115915 753072067 791054798 110715838 407035574 95394630 544662691 816657150 970921706 11179582 143456292 472662499 183750541 370361156 637429319 339332271 441796403 437115053 321300489 408276369 160766395 775653346 748878766 124649908 99393531 861812596 461366107 670594758 633016961 3546267 400252996 195820791 148726879 499965586 557776797 640027609 989823690 97211503 789339518 37444118 588106136 109967472 506422421 473695607 874781830 526408641 626195678 38605986 563680852 733711160 496933603 612358991 764669201 832569443 148869108 47014070 192396115 163667751 327235682 612875365 362672988 885676197 344967646 618512358 321257033 73727160 993580983 51506971 326179865 9380347 884497317 662113331 356445253 528220406 76134699 124979744 129991355 565048442 13369792 878157077 855827756 851647805 836971451 582839787 521265286 656089106 922223135 624766317 321137117 996666129 440551420 367210382 317154537 464230761 110138771 810807576 431653948 125878680 753781411 688094881 983736387 820831712 455630210 346662043 566182790 585161406 263237288 101724998 369788122 880743287 190159778 994599843 304894770 368717544 539448703 99926671 239982330 295315840 511859610 448594649 780625395 709984833 60798554 290966152 295153654 242047117 236635340 917735266 499029386 95788427 880588680 174308963 752146935 271382450 88096353 883781413 324715321 503556479 986727843 23738417 991466627 12607450 912490924 328634686 992764427 404866294 869907197 883966858 492130924 424841 680106371 463813045 252395264 735279313 757408569 652527904 70299775 203540701 48996114 290054756 408429949 461589674 746708521 69488970 364077299 796882509 731391647 201147505 886408742 785114891 85886288 336093326 966891178 432553410 837185792 691149432 969668742 25780334 67783683 977452594 67437865 434725853 325900802 697352369 638536421 956741793 956270995 522579905 717239988 648710423 405523448 49003956 198013855 436198258 405289195 540017475 935934188 298208102 981342338 89869628 141923983 70392648 313332729 917941655 995412193 10385714 387574389 537182555 588357075 678704738 456424137 211116705 825410774 780177451 664405058 911480932 59553813 537818789 472307538 923816942 174207340 612095672 62293737 180077166 78850445 841193258 225331097 60513333 146153036 725707547 753397367 532223279 835473700 719394462 710870772 364731236 68345799 849920426 430925889 577147519 161800183 722413694 440914720 80264668 15061074 968725856 86250113 142303041 54077705 979084787 602802189 915880599 886717417 953351492 380035954 451011892 506093844 368422469 863446499 937945680 435313067 441057936 848381150 213699189 435048008 312353586 111686617 283054513 146941113 646880259 41597867 325637275 384288449 108896459 896609799 269378317 141320548 866633904 73717216 306963668 668865998 221447887 548006070 101983561 778683123 440792078 235323977 189445381 842545124 239578168 98139147 656785844 491251020 888502740 579959991 215012940 769114614 362325975 822737465 600825550 148950416 830538414 522772063 223395347 100189606 533802489 378543205 993452695 112102067 665793662 68072275 319018668 179126070 164803152 681476111 747110265 215994182 623270956 245226643 507770011 3212046 222171801 244883932 930447418 22040407 196266138 306691381 289486182 589630557 526962315 616449906 986408798 450373185 20366667 29186769 131067784 533551528 370851512 558381342 515156038 952992025 181865639 984346812 495332738 104268132 539434898 225673748 781796346 785908974 614943555 119427946 899148806 132944922 9881372 319318114 401285599 492043858 733479565 891877494 757039924 789799015 465985936 675953165 452429700 85809064 635144102 287341348 753921542 381538945 220583504 960092739 367447009 816420427 591525370 278823785 836627309 334097236 782835932 26056610 211257774 824437579 783784098 939490524 935401751 885531079 369134638 36407146 436045355 856891327 341007947 481689308 904872972 878896229 835863672 804255903 749444230 526250563 226526333 918355654 347263008 965853376 907227158 647478961 498668153 688738446 523699741 382994920 391927521 456867441 396535204 435357302 697657466 519020093 560178945 236408030 844674807 428053149 375569058 97593166 131344680 982136861 388474766 746276220 284381768 439760257 811519390 424363363 644333337 153785389 803420169 80905282 196511769 236413146 584456494 98336116 997066510 8618717 862716936 928304903 283194893 508140057 229686907 273352581 822412187 359232905 663289340 148681766 371092509 28892175 922069772 266474695 750825049 43878551 465318800 560110379 596602747 764599765 412487862 762177685 771437240 569485178 487022212 940491003 729917872 624740760 227668958 473735259 685883115 450371174 998199784 96482052 550956877 685082522 354322493 108117633 818225725 767115369 388548138 143731926 170486975 702263173 323342724 9193193 339044148 742574010 223868476 501911958 424065272 618667345 766919105 620364862 86510533 934510236 170079560 91863742 944391825 63641155 101704913 639881619 560143975 80722636 303052015 106597018 730256039 834551757 427297148 763349829 700294522 321883284 768102062 494226538 910177040 211274250 240972860 213227084 255906916 216141596 293165411 519453311 844288069 65692918 631021275 901940701 209152417 548156922 127224857 102796211 620572946 759338365 572291224 800733915 309122405 749820061 458732502 721879765 993511804 484333309 259775412 987985354 874498489 82151981 702781608 252628584 764849325 924720393 808084392 674085451 958521093 79499013 459908809 10975342 694888676 153296243 941656456 931246366 279151628 205611083 58020688 311510803 952158407 243581699 444448128 50103702 31472450 86989468 801223702 40511426 175682524 458271991 246958834 471376865 42041554 966497521 208153921 499132389 519756571 998394688 254538661 842148420 883809219 958146234 190502049 429353225 670381455 484434697 87600031 705514843 107016888 733862512 768956977 130286616 855935782 467690247 72357164 956380336 813314308 501565326 1927083 214447167 411564268 380403068 980010215 741137532 268845263 12873103 643877661 879691109 305489369 742166110 755582363 399783422 5283616 488754882 566512351 453083499 150687387 481518052 249679710 146722547 126958397 82819571 63444109 941655876 58352320 861714990 129457094 702436625 321748359 200517146 124386413 114376050 57537417 232572902 445759251 911978598 955320811 52171840 313331381 288273449 48714515 758518904 17868077 546054468 642493999 110115226 504173806 725124185 708406603 112360147 61917550 442419688 430915437 447365481 875496360 763675693 36500222 412996892 431253776 34701553 365597554 232996722 851232707 21119502 574976219 890646941 410216481 135119362 856445378 141093211 852792447 107847370 403365497 485823513 903815256 460583443 474505161 726223696 773525587 985921218 415129737 556026510 221778368 800287611 188811058 326536624 131119092 685634683 287559619 628729672 794580258 5946274 152112165 835222176 48106920 311579139 713101801 262000163 704171562 401365234 767312559 408469320 526640916 450347362 259364407 265106797 348907416 871586624 739997682 665602301 288571874 198260854 909477624 762708851 703719730 607447957 178742647 160576998 341405112 198331274 558173472 699413385 708113299 322675891 894446095 915603466 3885364 491836655 763905323 930522250 407941794 744433098 607778652 897059976 100682146 136565452 859744090 857793666 781178391 524341345 58362359 741538309 296605089 855224205 909281280 717848407 179200193 267357375 92580070 610422293 441756720 244349305 318659243 77579360 54912668 199525242 457137905 875642951 862757005 523117434 900880719 919365015 269769773 133432261 469294993 938034534 7525555 811819158 217235980 948526646 832540741 904660944 794111834 977533939 696586798 128803262 234030208 432571716 692952274 904177947 65397819 431588592 77511018 632207762 377794091 135643500 401747363 144208764 932871269 942596376 332803341 951727997 763055977 891729909 975862591 391251005 480949410 985975655 615427756 935926398 447057357 794217404 868195861 142878382 392663723 927299788 262079647 325158933 680344801 111848847 928095934 305599527 752515385 614421627 80789967 437860007 525374511 774653740 273645855 770208620 616038215 760757660 996410706 476155904 139578815 233113973 238597619 459404072 836707741 11545471 517501084 1898579 606741149 519158747 925616466 97770256 891816978 910526151 341544031 881425746 378466531 228463351 572910233 984783942 633306477 166211940 808397911 832460181 905244933 749660302 563717044 630561388 777275308 386695859 925473368 914288809 925911229 930818923 60399680 67417784 186667161 855998659 781961941 797707632 70634100 75294013 667774574 935847251 594124300 549242033 901850727 781517044 392610389 585090944 686179283 498901569 378067345 210776307 435062234 134628356 894232148 748308416 556514676 363770425 729614252 295219072 963735651 880749247 927587198 957785559 876010016 259735487 198055237 585528731 509660271 439808923 695453120 538974606 885670027 913478240 642900811 544762419 481313285 640312510 486165569 623607228 736455122 674449152 940435443 32663336 119347302 927617446 790044455 322970493 637591484 355214301 775588993 117543455 245475654 108224514 509181889 136877731 583982827 636295009 551665339 148627703 939795024 815876305 51107766 408814587 360536585 854240189 129797948 59714412 487910771 696902808 388833356 972237479 466144001 389416290 184215619 273043283 433873169 152806069 408015094 382756574 456930630 582158792 357326325 474335871 55304273 32228823 486912479 73072670 36166307 178256117 594777179 325659227 931995514 108073259 333178629 330972571 490274587 782523006 142076777 768153882 351880217 563419313 908580282 996104468 288840651 441879254 305477928 942631117 735547570 501977179 179991479 617740525 980646307 400571607 587989729 749788543 17583012 736275635 565160952 799835893 483535383 354055487 145604424 482598744 404305675 108893219 974275822 67725963 119784506 239418882 543679204 825255480 753191145 906779548 873369674 272804893 288703113 945314687 726557170 237666390 484253016 965885911 297967555 521317718 185631644 339544676 998233742 606662908 952004651 233538433 316768687 627242054 296706364 236639399 394536687 698552602 143876508 669398468 154942996 426259053 58738493 126169473 180357180 234416282 608328753 80011355 114641239 663049237 520620191 583110701 612322315 734246689 909258082 738585368 690087319 28234591 147879513 912850904 110841369 672439968 448688459 342481115 755223665 47238715 480443515 112063151 677615758 151589717 775645755 808006325 596132705 380671216 699213228 189817551 641699214 703226718 228507966 16777033 927709921 940879167 667268005 41493600 543282750 788607949 182817548 909979132 857096129 531351031 246769632 42165613 628232176 450598994 121044549 91260539 158921456 550773582 802380970 601183003 625373896 886611300 511622851 870475711 334279222 404474436 400250538 615172238 643522906 301001612 129910180 338033636 285285137 576092876 956138427 888418444 33584902 381391902 656887469 857500605 334972709 658404947 481533459 961110369 113900796 43999666 725603107 971436094 930003167 726193275 171099407 221566459 583563269 511108281 281747059 272213481 148943232 470278927 174618165 921684392 95036871 218078648 694897821 321012349 209047995 435764537 921632973 397235381 939820101 218116634 507469338 865371577 762968729 313496407 524693731 843698349 672604380 616857066 618173470 602302965 520750410 33349224 183756345 730276695 933083601 821804304 950428152 15318095 872842811 53782463 500761419 401962797 812006512 10297889 146485602 135337841 441089124 500326775 285762240 343423745 231621784 234785541 96738143 583273271 853699278 705120455 83681773 965639147 770796391 414310542 971451956 105635665 832255739 700249005 785985804 814280284 825854498 794460925 80348128 171696932 9387960 559708166 915224779 25600653 494142978 258110717 542767402 966970831 153801496 739868677 815604052 231225433 64953968 900797724 537427472 830192898 982814193 322157811 987584411 823975464 625597729 129893623 839758221 515384078 93958923 945554712 166051684 133896521 716840023 310065800 78215941 238638007 257933210 467310450 523546009 788238119 935644347 997269596 931475985 75422746 258786135 791802542 392235485 296631558 475188086 613247531 455898763 934926694 491364504 679113076 796564023 139626148 714371625 7265447 630166021 184532379 546790930 527858872 984327548 174233501 123644562 368913055 860031784 293282851 456385766 180047829 803833085 677591338 913110944 29660220 592792469 833480440 649519935 405609829 151017413 590322652 560368467 216544278 110264131 298991332 197848391 12062151 961477335 559693074 561700920 747617902 698587944 900576109 427479876 403619195 689348499 738553182 823681844 940297631 184394168 146622104 706831554 644539781 124316145 162946946 14770676 791095509 781896286 1993351 901778884 665743598 999024071 933977715 669239725 3551959 694436284 907812258 470007241 646675310 804776144 658124984 923708627 142524492 278907847 266259943 143330821 208977769 521347908 362287710 634286042 904949651 993524290 571550680 717887817 320625124 529999198 137243396 186350612 684746519 197508514 259891207 365909171 769418568 755291655 221359574 241519365 860771965 736490196 898034354 19095305 190883778 355008766 422928282 415782591 670932857 982038108 647461167 641885655 195547267 954330122 954924734 587427987 20397079 523712216 747503440 383840837 458525492 310984600 103262960 348947393 379943081 105670403 237153635 430556599 807704832 104089091 42373406 544315346 59957332 460668180 415209123 885132867 504925437 978263053 181192683 193757684 150711013 805277304 879092060 865577347 220572076 643653266 76748725 580845068 765311447 652588588 687590312 969003221 873935121 881662236 587753894 473979324 732032885 84652903 376850548 504664991 157993015 565216391 541517472 521098985 804344379 158589941 1040312 154148369 499630732 72791879 358407093 164628079 620257964 269760600 693992296 795142093 480037259 274905267 98391200 993235917 118019313 637370502 591170748 199323179 523020134 774705637 364280927 514361997 523266545 649314414 307781419 425580629 750279672 535273162 400507269 148648741 238120747 810597494 929289943 454080863 629059560 644842485 322672317 928084840 131961865 620227079 709818539 725941537 599984759 289686907 598867960 113744465 927910909 55903880 172757681 82433227 915984213 138812845 929510844 791791032 62779433 421268495 603781305 774982646 255678616 36733500 575064060 645666273 755933418 700403339 51286787 896238393 710624360 371978578 779924474 538185820 839723539 60402494 147391330 60010257 305277185 493338295 87189032 485859530 332542512 921157087 64956114 671875801 409695070 611041774 794580939 116306924 528479778 736340551 226984042 802065006 734740163 454452548 401154976 910359098 375612602 172949833 525436813 937480994 482060474 8916066 272011470 861381231 718968520 578982804 223584793 672596123 539873526 635604069 789492302 612723425 582258748 648846967 980328515 466444908 11239584 936926456 990009321 947411935 100803105 664144640 319177177 456711128 174165765 217840763 667343636 352223758 990761105 456367882 982070998 52190401 886514374 107379124 194327904 885462660 321531380 43990479 17049495 313889616 7275890 689808894 712450687 441177237 335778190 637128044 563145071 162878534 274252323 856592689 431518840 467611345 938378041 39330274 165368846 249838881 485215340 343183629 807779593 500702925 671730370 620646523 452292086 395937848 837860786 334609969 39267259 105012387 974575247 658690640 180340360 862658219 347986334 274853555 159604640 310862667 91672651 972487415 258777074 896695720 406572816 967940107 65983236 783299822 661427399 552479211 231991905 297848655 573182045 13093562 83716646 672945255 437580571 624845761 124358580 91879759 49917527 652146884 902432332 971640534 588268364 665532034 43317919 283478058 382190826 698162226 317408876 174917664 719239729 308401923 801638878 226017508 287468845 45579959 113100786 323552080 472742850 98542553 280342000 639503922 701938717 727122579 862716241 665750555 51755513 553291059 710371022 554222145 39814443 889086591 679238581 314826524 459110002 193563942 43695306 238467628 813685724 575656512 778370773 444473302 879707831 24238428 381247594 469681595 454936675 486875341 170467883 560800951 552198526 959673695 413824800 896708464 503366348 612131252 444703354 635754730 757460731 947700452 225124729 941837457 666703881 984837039 512701173 888609912 546507937 496281049 473069670 550815947 71045670 530072163 319456197 744231281 275098983 813004662 416574904 953428003 867604559 734608914 662306308 362347422 278274091 510804308 487605857 681228951 793119482 849417201 915063343 961534563 528253505 398425773 505087603 71586680 548382585 238736824 793150847 667492977 545605996 975387505 813618383 731217894 655169357 161203820 548317854 113405926 105749940 212097372 787717183 784153403 840167704 249456985 98137432 999498589 881604482 208959791 981707411 859301183 441735678 328677788 498182677 76010477 615799509 11594757 573552895 281288281 683509457 211541853 383554352 328038533 276171439 326878266 559729877 845892184 76763784 18437978 281816690 197539706 546380400 965911230 749929048 914118830 734198724 358962782 667372446 695942151 774787378 379759485 366433325 811515215 340500025 900914943 367166509 460679051 494938724 57976539 861796574 873975699 246443483 485257734 267105352 749993947 836417917 391960497 483562565 30234719 195480276 865565510 162419149 590899909 459897216 713978696 360959315 876826204 207941605 595119069 70297825 339202110 105527953 107379111 522433976 525679827 670026505 332805972 99332597 402416184 192054012 596921729 204639629 71804791 571286140 361345841 37633016 514475134 192729665 816153663 580252313 643738862 736221926 791520168 932828463 339230383 982026638 806616965 583562049 790936857 82605279 929032945 258348402 447738303 931192533 666829406 528235444 111046435 21421861 539239381 70961719 779700455 285318619 395873946 293473925 182384551 344891778 108358237 312899145 662710430 617781455 467195941 977753883 412043958 47998735 545004150 105864250 378062001 498234608 823901484 147641960 790202804 320707951 185376783 806253621 803784934 592664566 88549297 210349624 372857168 514594991 989986661 544737411 985070323 848812349 934135117 218639122 160830015 307244384 233419930 460642228 58610901 965968172 870834281 821047758 300682500 681159854 538794470 967391587 801712581 404453236 379332641 735862535 337134629 764025253 898604130 119747804 698978604 631493449 73435132 741946307 622341810 191676348 517005019 340859063 394838624 951231914 517823366 322670594 693790963 113457724 737172872 743945476 966730810 303588190 324747729 959222186 827300328 970461712 689177933 207850478 181927184 722707664 412868996 245098553 336457004 390051174 881749092 266971613 354717770 247922333 271602723 521082183 10941010 156324527 955882692 599806995 497903429 131149535 813145428 777314341 891836401 74660934 74011080 421464801 884209513 763277482 508080369 430908564 752965691 164581738 700471616 508740287 178370178 562601375 731114329 995914654 678949599 634301070 547663460 530067721 106725392 518290510 16787340 686164294 711107680 187254783 664985898 997101724 463869401 315915119 575447641 466396038 460880049 744353906 798631446 844055945 367349834 387598817 526659828 795058170 180413508 549308798 242936012 936434620 271991612 291755537 198402513 3340636 587740873 70830439 52374417 25119479 812914460 745093480 406404443 331490789 42787534 347554069 970596623 80684145 932480782 295347855 50851503 483517061 476622808 500199312 337899485 459638289 544462535 15144854 309300363 981051623 66687960 18954549 904258797 864956628 47342797 164669635 236493164 227687901 969875831 728142423 4480627 195520377 199883459 425143675 510355460 347785406 68927203 113909457 916248639 665278426 768999028 646017456 830280549 204964517 297667369 982893905 139218158 363883675 443376530 796945723 444844052 801796520 612699474 177040813 261893144 826705914 221111882 40842831 618234112 54139147 735790089 152413248 408158984 125323013 579676395 935986570 553256023 919469663 774464431 1668944 259693640 3436680 98752733 549636608 506368418 825332810 463663076 896833159 839795451 160622231 641980758 549968055 111947644 338037862 535231349 308178187 589992104 324037109 155474167 367418169 989893119 286335190 576339699 319229533 457121951 103003021 668340506 289929596 610192562 267638684 562159813 855429369 210897883 602805055 438513863 688289101 185644991 811116390 10003085 805582372 529321308 357953538 76122541 495074052 221561214 393475394 739241589 322137798 507647110 704489281 647782387 194854404 328202780 661363854 112411135 921054825 811545002 131984760 123197302 2993045 431077946 490273112 188973447 303801968 851851553 609909448 399259088 324935542 132009964 437633299 700985253 274282863 693665426 504872872 739481870 889590519 664270064 776273867 476734500 365778755 395483256 218834996 30034289 210727940 329051558 163622718 39396453 647105155 417479930 824855116 427993324 583486189 150493180 732199082 505991723 85769083 792776575 269566935 131764548 958523834 708179763 41574540 448508757 55873396 275896985 115889367 140490853 190969566 219336106 863205601 402206761 77253971 162827541 352366131 61407807 351518466 929685329 33770870 893806773 824989374 681244295 221668130 90474912 240996491 196558599 347095995 120603917 911812256 98095701 109884984 191750887 585448183 607030311 835846138 117679929 987414297 320636068 564999973 270601874 954180774 787615727 142805901 885865617 362894361 870298106 272328157 985991389 502126481 889495032 708767016 399600422 61972497 519395438 582819470 845778520 45884349 204366459 970302567 385851929 414232942 553105229 97505820 242072104 385030475 900964411 858924517 666040416 854409620 686254717 133090097 867722814 115030196 420912466 83003681 44743389 793585130 384720866 765729266 372556917 92171669 979655146 422842607 920000988 759284537 167761042 358209834 193127253 511495570 670751226 756845685 83426054 729036270 994834532 281127577 711506773 100214634 472302316 848069357 973130197 611199567 723360326 141181244 365831992 767668145 216627889 774827706 169292637 55327886 961730593 829004428 778882121 114703635 21806878 41964516 856369672 381541223 120844066 463506086 137151637 167530509 235077332 615847381 213498903 962317729 510697875 570210541 188721518 577937566 392474541 736277445 800316479 905730669 40166102 844276620 791533315 724069553 212860465 207206837 374094806 946728566 204952094 132006086 409403408 492910200 864170691 150690919 864683848 196977323 962775392 345770211 433757637 677246487 277251260 219495809 574286076 697021396 503585127 835522604 248378184 535286009 765129200 591284293 461674774 542267678 975036026 230422541 30372216 712587073 73733607 759391250 971506214 387751599 857861753 961783810 531368573 491978215 146856156 113358146 66551647 948635745 31855916 705762961 720891338 520215883 782218915 570456423 358607303 671926366 20502456 359134709 29280377 156784112 505198377 925441581 178657415 790073961 661909796 538444688 61914018 766752069 782502492 257646083 999279363 83277936 746346464 633701144 695271244 397439863 399362172 268840591 502531354 246400064 692442390 390276392 484670380 321490238 432064250 427591416 545103096 849972292 779410949 350688071 531307156 637685205 181732514 74924236 606548825 760423763 396530401 57975632 360022064 105550051 968759655 627708936 601330710 993489234 90344829 460637185 878789398 55807990 585673619 408001082 643331194 533282481 376448674 113194772 14472067 2163470 104091662 973447900 130753134 544161159 310231377 481908915 579798110 133057982 988966999 855438851 692482007 924506893 412307450 50874723 37212203 502227819 40903827 599395683 721867313 762005051 354248312 259548942 534024611 866882253 7546730 73134084 412033733 857642918 298461771 948295542 298031462 906490996 579471322 237587 267879762 86221529 232329325 331085780 482359975 224028765 36012973 597461497 545948498 327499372 796514825 511873455 372158396 950693791 225772510 78416770 472437992 215313279 87182448 151859436 590672251 96026213 789856699 754724604 897258880 766515791 157118073 434510308 891742757 782803474 623139663 82182629 511999320 789997431 907097422 735225054 453181968 709822053 472039070 108674154 102124098 291969037 481216711 724543768 657649473 765521925 577083940 403214146 559527905 379010942 774249189 451994533 749091175 722472671 951894748 709802543 350838683 797288850 689387836 472629365 308198115 932714596 335156951 747236164 557013311 701598008 628026236 234753037 339425552 706244866 814003034 295583693 919187717 712913133 318492053 514672794 533181366 522355519 198859248 653729711 413186180 369252978 269115115 350442984 412071764 426809938 230752843 121897610 689858454 917084586 151389257 123197880 230376851 716138335 908069213 2239232 18126654 900535069 825110744 857037289 294457634 635621798 579356044 830765220 311027026 859154586 888075753 964691837 671412183 106257903 699293345 830261383 573602959 654154618 100516775 432619761 115443100 331172484 86907453 792370677 183439298 332017323 332566068 902237655 410770390 88665030 899717574 954567276 445780011 646437143 931615809 591537244 43679931 199835486 461743187 812377236 194850264 495735102 375449703 232299386 844831573 223114423 859532630 938277353 100777121 364975065 758318111 339643532 561206622 613154318 936935796 362131873 90418594 665636280 94908008 634809152 661275558 444070530 920711457 265943828 361092697 473313458 897413132 129666702 922250520 213274349 269027875 846422662 475758558 901792705 560822961 384544260 633688743 185128618 38910256 166544517 192840705 490006789 230580248 651676267 918235246 900632496 916215572 124852189 781360664 310030797 786167265 579466474 841687260 27800015 905260789 642957597 350542050 292395419 986733589 747189679 388876135 723034112 165722430 660794939 828221921 54427927 826487904 905530993 202210622 971201210 427905398 306307722 82923623 100104129 608436991 940870143 197882900 59056061 225901284 520232333 774608849 543126265 113455419 884174266 879857395 123907691 860122730 645417669 579649916 187866984 370010070 578836065 440719325 339024879 989109036 436764368 768412908 840629983 390080534 473797705 897203820 312774752 673388639 938926553 874465530 794930010 918947284 505877775 636643359 110517454 623342662 282617435 941207425 291317117 625066467 272500614 72619110 525400929 349077660 556090472 820105149 766902054 625218122 424290122 470500080 572127499 537469991 270250068 892473359 740381173 388775768 166870483 286114019 228408348 401000158 199293892 547110338 126078323 669092823 276848952 537232185 867540367 732147939 938759804 167243455 672640935 324696461 39332780 100283064 85995308 180868108 476962429 476249691 729471391 746959712 489274937 547192116 673634130 867866362 812439181 597373025 602846055 739709638 284761719 649622726 20273685 831347535 133598998 995673220 311489391 384097685 279837309 289088934 588150110 954486373 628396439 585823470 429363398 800621455 490598172 411074634 61111649 333333545 943124544 104683346 13952124 469012059 156703666 500305159 458964682 688060956 379755813 826278235 1585702 844991964 972254700 99460329 749009019 20170821 444712329 22080398 208736591 741192408 946833059 140234813 482977101 43565101 49105164 426110070 979495903 671294875 878879829 276563517 453866168 285175200 933021588 118178959 45777760 918025666 881191781 774207240 322510864 707233029 280867170 190948784 497521484 538305539 148932141 512365700 629946699 554093260 187120981 294558825 747752278 24197858 280917132 831424988 677051516 847234077 461754205 758654087 849973405 296825628 607206003 986758939 804821916 817236597 286882896 456079633 473398406 172378429 313757586 788142789 696975275 945922869 173900369 707474410 892840538 267485907 974797014 776183114 759660512 635889222 746496376 3457277 84096640 714708279 340405811 793589606 36577484 2386280 417044975 160969989 166937828 575621200 217639447 887228186 904818304 227652327 639078022 461408723 218418644 648273405 690086368 675765348 630168394 936885883 539612503 5981403 112778813 303952159 129212958 860366875 738612902 761628598 607878946 223980803 525621357 450131885 53488219 343541397 168423376 202925805 827079903 698952617 964813235 525262835 334562866 692256910 101956095 469262227 663035164 924796284 281777997 718165162 861642719 167519643 296251479 63018012 728085670 923375756 598035384 485210935 918448507 543869855 38483375 965174498 1784035 620874547 877738714 767383202 857012577 609594506 588416651 238939404 425805306 384841030 198826434 357238189 873077833 60210951 113401600 554718316 375817912 46427055 988379358 323658723 463946807 164997158 352527427 734098081 510257145 189599177 560694367 629526743 705315613 882890389 480371737 2924161 148979342 582018532 828132541 420305182 528359204 858301634 497583807 665556703 872341692 423603763 126664622 915290372 394274549 248650508 54840983 180987328 510744584 750942415 679920620 208278036 982524835 275635853 482062102 203485144 282016770 378716681 84901890 459813216 993899709 881495133 959050896 77891240 316432695 470591109 837213237 170000014 550843187 87395150 599227867 955554861 724064751 915257283 633354768 877283988 657278973 766419161 118991304 184072194 984968958 724788751 789059409 726948811 415994145 659566331 896414242 931062937 85253796 818523425 361881956 403857205 150224036 109332431 179385554 915508968 338567381 259373533 648160108 468553273 2964003 218221535 609929044 626048124 599931746 933225209 90554162 942390860 675063464 321645110 402647216 694377391 131369701 532206254 197242897 615295585 748483486 816947501 379771442 119542559 798197646 184152488 768445115 353027105 473111916 669213284 390082260 839118578 764574231 173616066 865162226 63555688 115452698 8435176 55632282 992122796 855413534 61727404 446937979 378750899 680405132 135009195 358374428 40348657 179219805 455842816 973722786 859762988 563163667 353826101 304715055 743201387 291276137 888826860 915774483 63001859 291555141 756569390 778081151 339314274 677281904 276685055 819745133 605887840 638951239 51841415 488997135 27916390 370697239 398961997 339281218 119757261 11927211 49954819 371465363 311048557 38683297 296625282 919478443 400588782 54839324 566576439 991275763 555136872 261007996 69660291 445160472 626034572 161276349 141181403 794532400 900204156 718757968 898580579 730429032 793103939 11619354 744189065 799637931 728448460 423918848 375550121 565594388 660010214 912169518 635540238 918640947 377360129 870318361 534260484 60620089 899807011 531009620 211986419 414529350 82803129 410727435 773115038 694716025 412444687 104606414 903164615 775445687 37257189 208700492 15971622 874396859 797228356 884904789 550566924 394508225 482919441 392641492 810720601 85393567 266501254 908095544 108856217 581421648 132950475 228451130 919499360 279653386 803243637 134941594 570876334 225475074 297204766 229029142 680776219 823753737 202357179 737427556 470091457 270413629 700233184 522555536 131648319 62772956 651444063 277141529 615431692 566421594 687420846 980746095 182835060 783054394 333982753 821605994 125097462 62770465 278440769 459410021 194091328 901559463 965700940 58148922 725740741 456944746 175456762 947983199 254332040 362882414 911364565 153477205 706378270 666874897 899792762 999574336 707323607 277579900 937507476 628096384 508313572 925260201 907812518 354456109 60857374 260472051 695690115 491425027 471778018 557337742 504064196 52334771 601829777 504886235 173365762 898304389 709555309 152320582 351005144 853476502 538874297 205805600 812270046 395770897 566601028 373764077 374049843 361771659 32145674 110402400 71604362 495134844 371311033 254326892 880505852 664820176 353928219 44765594 904203796 229864701 666115927 57589985 372569704 85523478 772123230 242699064 877789916 573992421 188120689 465048807 242605719 953745065 138170367 506991312 349093233 457450092 29172457 694645260 899320548 287543870 412784551 326384759 396987367 477681969 687750318 988020508 663979650 617183586 621427854 652846189 881713960 524535795 586846637 710673992 148421508 783448301 118422606 893281557 616680176 984351042 108635053 671048583 560897939 786393461 212163510 343660335 361051003 16411404 405297492 526604009 657580755 953170239 377061883 88190360 181194513 880981854 258192568 545165063 178112259 2400665 460820326 488343438 525918351 997196093 274329569 494024293 964169695 651805954 854852365 617607369 834920171 3158233 669452681 455286493 19775659 473262319 733971986 788591943 964826975 805835718 477777809 31534870 810286662 269179158 233050059 16665673 430029424 91139567 876131024 817706035 977581259 527434429 604696847 22869858 347036660 297175061 211220471 321731563 930005950 61629713 932594229 836005703 690689953 374526501 386566760 74327603 847137818 412749934 538802365 734949562 779693368 483813906 882180527 468965849 964527877 987683672 592055316 174213739 261184333 728750980 127415778 947894010 932942103 909010700 980684029 755558894 12919040 815659601 41110279 181673781 704915143 662809718 414116466 271482019 331677391 42538349 650350674 933591267 287654822 234152099 647247018 55118053 723489819 334135331 423163544 567906334 515777484 203759557 240338747 364360920 663167258 579955674 977495681 562899793 276548362 130808979 578813621 121386141 765568854 843088955 948055849 567633926 298802321 860689016 860250632 164593113 808406482 166560232 183318624 951927042 803778920 450289073 229398715 937514821 614265507 774852386 310889930 639426334 725640720 683213655 152541029 452310287 906528094 728133855 802040229 778804315 811947226 505826699 515986940 171960012 741345819 275537109 502276361 4327135 864523951 483514921 166003666 351476021 589278373 715904672 53856236 286292850 160908062 646601200 238335701 692976870 833114864 286340256 500525038 669245483 236412044 136982865 596935769 921714598 294216652 707243514 343398851 475371577 382325885 90384078 51209410 676192352 499070708 51214720 762930767 114134742 350264986 946676317 632364256 897667150 164904979 84695814 928824220 738030232 868075352 902115104 22231592 634367960 942168731 392618826 558122916 297582995 173715499 591466247 920800030 787522320 981181301 408940407 167992050 983542967 71636290 897274860 100300585 197944871 793024942 262227067 555374326 411624795 670208434 95521164 659632397 743579651 240611378 924602907 621603095 715204977 252520458 649049638 310351308 304104938 387326169 296145791 768468819 562630402 662892909 460709257 858675361 412199723 796747208 397843391 900307950 656475738 925387254 873920571 659699018 859997476 969695628 140563967 487309600 392025678 915264973 952001791 592180113 121210561 2257291 768563739 274107343 159468930 510160634 687308993 36627472 878662535 548374532 260209773 515897179 2366178 250223467 166032161 624063203 218735590 105150618 570420385 190043692 370175235 169925649 843031073 26252349 774936065 358076697 404506954 28952551 184476068 356656573 436264726 256755635 134180882 940901695 919681558 856114963 385449094 135632897 271702032 585850290 271815471 909642127 316427835 406301452 682429221 806908607 323076182 522557051 553848050 141103055 410317574 45540937 159538551 330377091 541825911 624372992 673878871 522830300 989081582 485410695 629500067 658168571 526869025 163251809 584698363 419477304 612885859 944306345 170609114 530462965 711111848 720926706 482739437 910652197 397450682 320437838 770918932 985408228 424512666 592375062 46063686 852115773 477974812 296204162 401458078 169178169 415941770 983112315 446100063 937387295 359739234 845868483 672228086 315720254 892575664 855908820 514932907 219023427 555747555 788805362 592148885 269956835 176637287 49349561 773599037 358459617 383000620 538163542 909914042 613548217 81544489 441976941 426378601 183843372 872982083 745323975 43271657 94915597 417500412 361453898 215566234 146663869 752059942 899652823 827119678 610216855 919775321 56709682 109142714 687908398 643164818 512704275 425718612 546852371 717205029 717516443 386699629 415670346 277900470 570365324 186483695 756502174 329376933 600743736 200191493 719946921 530964583 81713996 811709508 542445218 461836524 107040255 591489021 518219263 8955790 891623422 272438215 964771956 952741420 712034660 483093189 572932540 949395152 461698235 802215308 629600078 818922566 793973722 881984471 831331825 837272211 274921474 408931175 895153822 976254839 639819421 606537252 713599028 370509782 509114866 53426066 446495647 591769027 841932469 907993976 236182123 949717003 134461920 718335649 626232154 188647534 287944626 648024040 692023352 865275992 316620016 540083129 637961280 588125549 795128437 406454882 701576065 932253488 847873174 470355920 534626135 846291517 915000701 254189639 849306674 691879682 696425197 334190827 33100209 781943082 650130839 963974466 50673211 95662585 449524318 27472397 759368582 955433590 775298992 710862381 606421476 705530943 81075958 206147558 697701121 82740681 235308218 938471062 641870294 889524312 845410592 378120326 987301491 67981310 816698243 540917833 415797980 750822982 982869251 653120700 627906272 783727182 682285652 362562024 978834872 752131977 89378334 471097971 123933563 909238887 198465522 171181576 138618269 175870622 53939361 907700781 668625605 877167009 426635900 420100558 427993378 804506183 680773037 421815829 818252305 502160613 765904109 984941281 295043674 650373250 71327742 790798296 117478768 809139941 166338754 863176530 320613748 179776083 899120991 366682980 789107271 418302806 332540006 979681844 562767186 138972557 68780053 444577467 336258193 591778699 367813138 891880768 387074702 759448693 115565687 418544048 211257281 183919658 598264705 413439325 158638250 702560343 708125870 152290253 465940040 363241279 46928927 67321181 85859713 533299268 393934220 745406589 385457904 257238296 648013697 996300793 379558005 878548305 63262636 45101880 974118306 18521462 218902944 754421011 843573270 611086586 700745071 32404188 134005181 462723056 763989451 197638392 65991328 364774471 86585344 49446545 334744167 790307491 234158954 673352787 843295002 711195998 94353369 24801957 488085518 333439002 195768288 405759958 820575064 345006532 547986488 706553336 151004454 999809022 440800299 968975790 215254503 580597745 239724645 631470419 945316462 45768034 684811476 792752221 10849475 385106237 837904902 536631399 50707788 267545823 732165834 655979525 70572284 64686812 575433851 121184518 411304985 625792042 467742729 447286069 33225753 276461668 820276369 910672471 266604743 892596644 781298477 128142656 375348124 501721771 589709085 565469049 526969955 868992620 855552617 910484319 184182283 822597317 791834143 380386436 929892751 124466249 93022644 814839697 571172838 836278563 35068607 165326628 54545457 477742353 837624408 327170232 803218655 907369593 411526184 510732252 897805866 4112794 470294433 758555478 973896357 30804964 677881806 920197052 670476154 379395654 431192798 802472442 24726991 727714153 73148327 415063814 637388446 979959068 904266967 846924803 852858235 4832807 101214464 616753312 30265761 819330129 343180344 200716733 814663379 154339263 133937674 781413344 879083106 503679143 854803464 2403273 714867347 359861853 461586532 545201341 708536331 317951549 607206953 483338387 364743057 800250662 776232061 782569851 778074466 210923040 930373506 944490142 753761157 311283021 106414859 748531977 93641641 362049158 476823238 449544195 520307066 149688458 780008600 103149444 752483372 78115976 53012795 587334428 234238954 633778984 174456356 459147118 275144625 719751528 773727926 315764998 943652911 20211421 773969324 384753012 67591231 940891836 183674948 751179372 131833085 459601735 674949416 357395429 934053672 233139363 56839818 920774731 137135923 424754003 781953387 288781206 371656055 949113291 502742980 339018668 265405305 494240254 654127245 868765661 154779631 483992349 36303880 449197666 716095781 891957479 373325277 558603849 948460428 264945769 230744566 876567638 548587519 856145906 467977149 149550365 770608429 86257272 642886473 848916072 117156653 798271194 643309318 345229756 945484366 420607710 202799355 156409356 688883207 422960263 917724613 290244777 803739970 695270503 920780118 137172486 999581852 132979457 552195683 251064744 126960782 395646004 960469594 645665365 458909626 318512872 933178785 157954720 806765166 257411197 861978141 285668625 397983799 800092432 242602583 706827037 91257980 674924402 176363614 122402511 990524183 980647736 331686171 554939116 201777395 913647438 221739886 977561300 66377272 882614984 913261378 278023005 690092417 728915744 769909718 874650975 595342512 905204433 562625376 679031119 814280636 427071977 899478873 353065031 300129320 997324224 865814650 653347803 147479541 956744176 167225104 876364947 874667730 624327356 762178516 440547813 126184821 254364887 155426582 291486528 210079845 863354927 20845252 40556366 85148598 565993393 468739155 73642872 323434475 309595604 108611629 904198276 790867786 204303260 396427791 714077764 80013812 503684670 906691900 556182543 944781808 73404232 853085295 394886521 341769967 98227281 292906244 376069950 906767515 447516343 53765856 938143482 719820072 54340270 420190575 867470691 574680244 434678194 641847592 13036176 829751592 804096760 533443438 580253607 725690372 655083802 138111661 12819760 715846883 776359427 105060645 208569649 625038068 144597652 827185495 265363705 235262087 160686358 63502645 597377002 132904628 487518221 322887705 580903352 268205259 327416917 43168556 477948831 551870559 778351335 131308751 644040099 702815787 890887487 640833561 253939809 216648512 474440061 633052345 550306250 650571273 809032377 177222627 511948261 549283032 763171312 201724770 27657275 206327359 619479663 660549935 905005535 775133280 45059989 994124151 458299326 260029360 812127606 260523487 527662238 749743351 874889509 982542264 35076000 500130091 673979141 395399530 12628182 927133063 777060291 286328165 860926657 489833801 1506639 64634457 96393729 941219972 628208519 589106037 534485950 781484164 733313016 701206749 546416337 49160047 579446273 951558378 877059145 225382186 98703307 985783396 782325117 318509532 122576577 873979165 30639055 583820638 661456102 193615593 196962194 823641398 511885503 966781185 295924020 400232823 987440889 88039090 66440829 69662009 725442667 301777115 284426915 811233101 877208957 385048211 252179241 887833289 408708368 420312727 591232416 950302995 212374468 916690649 533676577 646212681 28814922 532337922 615713462 309395635 721989286 412282831 861264154 156180468 522622905 194093732 123966941 576415757 374622225 890070457 83395286 32484497 481366136 439578096 860318192 489113390 547338298 154708148 169039764 502958568 690519907 562241527 332884589 580057457 283339049 153575704 755439020 236937071 681327969 781917568 587370020 450624151 884183873 501167093 127730065 926301452 253258414 707230102 446534948 564810611 114771319 724623241 542875918 669806303 907530307 865933574 322815631 369968719 556930147 741373144 88678563 511988108 775152179 667114666 968456866 584996037 280007076 918994179 200079130 177969701 688013084 972514907 483102875 754379875 155245958 537528201 4287672 679211809 983052316 976306399 943763659 402432845 30761986 395828762 104463442 975718030 35222694 678280611 854451263 565479776 96236476 489107610 130346864 731238118 180753105 47506688 414357130 716354275 301272944 751784655 768619294 268575734 556207780 168682981 187430035 542159782 749272974 519214254 222604619 474518494 887083234 175986523 534789652 321331392 129322046 998821134 739089348 480131297 249317323 905443972 541795654 98727411 451975103 285905005 762209931 622972669 858280345 796198376 902414259 302682086 591839228 106896072 331284957 479006058 146806019 760221906 848398742 15719697 584792141 852866775 144824746 837642434 715031003 408827730 733301079 4718865 210773164 609768424 341560484 99918465 360157336 285913324 979888405 906081572 6654439 709985330 168378742 687694127 934636524 677910534 13473186 551190179 124002628 741852688 550591315 579057857 45172467 859950840 17056394 859218734 974479555 534099195 455050647 794756172 382649655 788469943 340436929 363200785 519485223 117361302 309572194 453206158 803304682 667473408 743233691 944410900 927682517 386355473 487772203 942969996 698580936 128118867 865545507 609605746 893057618 299514504 866444264 95051699 150241307 990575067 489008547 384131957 622641930 113280744 869511017 289483901 876484516 297308497 771944232 784884448 475700111 344445263 700139452 239783110 638067102 259701230 359104962 372482086 894513311 833030563 933352209 874789828 411554785 426415655 712998350 677352670 339088012 453343948 82755194 777580866 283864167 383706546 98273805 934946063 98274178 434821707 211469862 182025907 26314583 66288709 722636289 198422536 70671235 504733594 173420340 544537214 801020952 669991231 638738519 171669957 813008347 463639881 214575035 747646336 434635771 195651193 913345635 979639191 696410029 123075515 397161782 177364925 228971885 482317300 168300500 405624701 491190396 252953832 819472098 672699177 947235844 194301804 689784304 826388904 559996190 662915293 234694741 587572269 675055362 350400472 721592466 541790974 330019598 166373320 353375302 81218089 412298967 221663331 114302747 221031538 736189102 671785878 718036410 229916422 312043123 66823218 545783720 232886408 7595030 665539885 414860657 29754124 388289407 659093196 753664447 509258996 807337232 485406177 707542512 328950030 526120791 689299327 790583450 932237965 194792486 865862218 635443150 346424008 947717643 466551767 884514718 154876673 537272935 284967413 260454526 804303547 433826755 689018429 233466540 375616008 867057353 985385868 54327662 978720145 101375929 272677396 627867367 786229811 890509420 695316017 226495776 478007692 285797366 799254680 956259614 352100422 104637754 496962874 885960079 431494350 881098991 500321946 191265382 433685367 791468903 420296206 691052088 293200464 981769992 753945121 587306038 428023275 54575390 936441902 115238914 296188010 206128375 376087393 190274216 618321942 93889388 747053819 236325340 784321795 822552788 22016694 45281731 83676689 968176640 256724662 141466142 899341971 190211002 905877880 841400755 413265996 247059933 448071164 946228149 783801551 969123160 898285286 514297889 332892993 709513894 887152575 630469010 380738414 642966424 523929338 71581890 733761686 370489521 934444670 578528110 145200209 157050847 707606317 543604818 28684197 498193079 945337419 390682698 609296812 957260036 496940727 630365599 846769114 947602319 76452705 965769667 589925070 697770572 927256824 665054580 50697608 572914225 434130573 188477610 410120767 137012762 57356623 948771954 384151394 146838030 130302229 781003106 855760284 34872818 648194153 166121793 934414451 283364570 304190308 421329835 991190903 839338817 613765195 115681313 838203144 693151895 540580472 340423672 618290738 284393891 779244421 244009180 432735438 753900688 453629502 779617335 223708942 589120754 80785103 34737699 81965148 631113840 115118914 898067215 309728784 516704168 482475294 272351730 122680009 370712747 603690207 491051297 110003888 278836157 8629630 862883252 901621432 398621407 262914301 28863109 745400489 968765066 205431545 971423810 344484674 619474626 324084805 464472009 492324422 55174068 811681970 599785033 737866074 374941590 600182115 818481329 638560759 474672747 301161464 52137528 984331809 492000316 413491589 923502740 613535164 939797818 849424987 771755087 63880311 769265171 887709978 26726456 117875115 320850545 600152553 170972558 429060670 794053864 911011205 990948977 760352019 382293868 274614311 437858453 932517618 774964345 646573396 996781772 304718701 47718224 992872890 28529157 42704824 196935901 81490006 864130162 743449728 417884354 914804270 367993337 863947112 383787878 779961971 157185364 344356749 758609587 450737433 550575224 155106257 381295081 631436673 253941214 212506933 470645039 219542696 223766540 370552056 426103548 390898434 845124479 762456636 528771303 797629426 512739398 559341676 735887138 533963916 88466405 65831273 876974486 346123393 676909512 589581540 352741363 849250355 191928089 759183974 919697964 286874931 60111083 652263667 232589694 226275724 311447201 788501096 678346857 947823705 897887178 474090010 179398415 880309900 855189809 820640583 712001466 421785390 851639745 706650058 511088402 323082231 61375862 712304370 585986228 387565898 460092058 25479327 696482081 466502323 352540357 424547625 396886547 29250454 687017312 93902480 270685025 187326284 2670032 841204774 524922715 562648470 555647582 756499704 437093160 70688268 89132489 293811383 477465944 948065558 961617556 637109179 895441137 981938317 901007838 535702771 570602223 714011668 546738327 254514184 733936349 913192680 669043980 64125565 714048277 361483693 150661778 333223627 232242461 909168461 928197270 689341842 832775648 66935195 586474428 960320919 342971927 202778064 474590415 794326705 106480675 404535275 88356003 516631819 480056511 300267099 388495891 601113342 708402516 1806091 553622018 282888659 108623491 414866101 546649848 571530763 727150060 654390542 534390684 857022269 745029363 936297122 506296575 995696406 969477935 438112139 514135274 335748498 446641394 845488194 381911889 616115634 750852757 13987843 281207769 792667387 30754754 721311151 741563838 537924957 677065228 390968801 517305381 345685817 337402947 847365157 812329303 216874629 363319375 480267521 472461112 141481580 976380821 540397571 856095957 696618123 597248558 468123255 697788058 274420609 263934867 612416805 335341798 595159789 363267896 527675412 471392957 884438585 347540931 414792072 243203899 944620306 920996718 821232583 240190961 349928330 520875870 209990827 66124407 896256273 960734910 841658296 391090612 135062972 826927550 233086072 947376370 681659852 527003108 745582184 662433684 542591831 573876003 986406166 338375845 76472723 194359410 547865147 549417601 20208457 540182467 531231650 726717096 624035641 396044305 194666669 714923675 756124452 140233296 323341321 568778598 965633634 242508957 493734813 911438975 778292932 908906569 707281106 214060881 862658829 294076747 243147913 500660140 342882055 174056110 182776968 622354221 668384190 377720251 994444522 158707271 539802920 564500344 88773281 723129355 24162111 287356758 34947965 726185420 29349375 771204041 34829555 640053670 711225650 824926276 880363371 194082648 14450250 560635851 323364849 265158835 460623923 805028707 259480374 453735425 607248403 160486149 284356506 610341974 501673029 246967775 773076218 993154519 753637820 39867750 100757069 127617084 76264603 228695079 952235804 122764040 214841219 788105900 880655396 266023348 121110856 822860297 359104904 100692850 676145401 196288327 792741323 43516887 9566072 163104785 45507712 585538175 998314450 196698500 737673611 361324274 843593365 211986909 734574737 446644813 967335155 778356590 296037461 124018651 559606310 515515777 929233570 473081311 354026515 489513406 276792918 661592244 934169443 88900225 147184206 107641488 704808405 66149974 547716279 18922759 421099420 704033819 104021774 583588476 616209666 686464760 972739761 942530179 478617693 967735150 319663994 766956055 887857121 820064964 420556360 592727295 880608742 466761821 88578908 269396275 999068362 384974953 617241112 829381472 778373932 870554715 852182964 253041429 704900146 114750355 210705368 91302068 654746239 857023235 588170918 932114799 629574889 601733364 319873178 907588991 823104368 475843022 303987877 938745401 870751522 472985606 246439550 869240402 502582570 534947549 636789558 266745856 836590208 785600059 932835034 226414778 808922991 963982582 383476899 527643546 136418975 738162571 146349497 279128311 301321002 317649376 31548796 178045189 494298410 843227294 649065810 304059466 559934098 219597053 404936212 412713257 119992445 742102154 132643529 293665144 426102631 938441676 459707551 245606029 820417648 630990656 937186115 437813123 201090762 85472980 371178939 33739833 576965489 946813220 416840689 172160500 685496989 715671499 469734762 470598834 821816941 665138317 33344910 123728826 394918775 12649721 916081530 197957739 866683971 967785692 934794610 433011476 228801521 739518695 949735011 869855314 57417031 997420810 719354446 41644008 398090219 183023150 700969716 475647259 657232511 526285514 837342571 547334759 77737157 416829413 663872536 985088613 347023241 124599663 452910548 86534036 402533049 508542228 792362561 920336111 521722368 176331533 395619586 584233853 963776909 837191893 677644492 583827458 793348127 136129524 749053971 892890110 308632515 355764982 427961310 651764299 597186538 766831057 43026498 152319000 407162229 118694272 923537799 918288643 878364908 605246838 633648560 507852750 857051485 106742471 953015599 914970989 458197651 615747374 262122512 778790158 518545899 139627023 969445080 691323391 620364483 347370874 762998774 621749312 22265190 452259978 322389688 982856787 423266876 490765858 327336411 905657132 276730911 868002149 706910861 449068790 248419922 650288570 159145308 902496569 868780460 161085780 843739666 22704807 18748233 543896927 718236937 167096807 818600287 756136262 839030658 221204569 780001853 12587498 496688240 939892693 351848347 61418411 36111130 240851005 365042052 554606914 434368497 85139898 124833416 110209494 866284588 653959914 105357620 709325556 862745445 435160995 465269908 844710698 40688873 947700945 201065034 380152508 350432059 625906659 841406890 378368564 142572802 338304478 904625107 612568592 209397458 649533246 221423556 649390287 190731258 392547217 655614561 928143087 131705959 801428400 189536212 100245278 426913096 795652403 195255540 503955766 243912369 481351956 82925059 280865124 746791596 937375870 980425415 339770893 914550405 176421554 160366699 726388805 719215934 494731433 160426294 265074253 322219399 531991257 180006506 917434455 119562545 577162066 980469978 712472021 702629974 346827910 669565809 714968240 653620185 58200043 716932614 479941253 551489248 993260807 875933374 501916369 833175462 360582478 374660286 751865286 541636192 101759310 594386131 178544122 767225792 148006793 531649334 351781042 992274357 683913184 489056224 107087767 778161002 686043017 714808587 97227930 452427960 511539817 378795607 961518484 867759582 452356969 232629600 666090945 845784491 966898610 637727392 700012597 107089680 248906298 615596845 814102726 865107120 727425545 869706254 831237812 759685938 628787295 640465025 266072399 92545568 745028280 321578500 275983829 950455728 412836974 19271214 548532996 691356397 883400307 241449071 742018401 293048838 80184329 200090646 459302139 287660983 38758591 831132958 880133648 227578751 942499496 437279845 558798366 448394718 485739895 996825640 96007415 532725640 185585578 299226469 961116374 861963800 774960494 240588672 703671735 751076827 351373694 81838441 616118098 239654526 244373030 426682994 271232803 776260992 847436207 212972836 591446703 585918313 901843251 639893017 424555442 996586066 754305200 60118766 470962430 451452979 187165770 723295600 449066694 228610071 914028711 302743051 812733968 449723749 711014618 69317168 370489469 410668341 335793658 43489787 447971159 460321428 900973907 391744784 195999731 846744372 24812178 122042350 78270070 542157041 357667345 673162916 223781227 691050134 602109877 856006946 679597814 443573618 577418890 410347823 427513338 153260330 831272056 808904887 769539592 70905823 222486593 53838314 753199375 47587669 622024964 782578904 290090719 331610270 862293937 521921971 939348001 550056788 194365994 112658833 388119833 402526413 482466434 687745216 133189988 295168757 971463927 506186675 385620179 492212471 979262203 270415530 18875950 738558499 56030314 790090716 380331397 246161554 203970438 523595362 271736053 490878143 623962152 997573655 304664205 306962323 365617504 209777408 356596120 379555913 308423981 193771314 297322953 75159922 154358801 656910037 742002311 154760280 796327645 474459052 90454045 657735613 42230237 936545713 796896643 491464662 394528261 898051823 461237911 528171394 302552349 858661251 118866746 600406428 109831504 296650599 451820982 950492084 108049034 606179701 401036987 390792838 972681362 942747272 695686075 946656212 120241415 477167818 357819533 763688207 508574037 658505989 413293380 263813464 801480285 927369613 618622424 930759440 302963723 856483985 637168242 707527922 684221758 688505557 342914096 69599249 642617064 437012288 758105057 288429030 344474827 734417723 535647714 657109169 852731408 778490226 974236178 41230440 154807968 304371022 421724939 96834061 670728031 878375032 984955993 931581850 759236818 560837813 217312436 883266783 924063300 620196958 919528613 892047427 462186058 335957182 240402998 402169747 622567217 774107484 650673306 692983810 394587704 634499621 194829968 510312548 256052339 147489455 190086608 901444071 266566829 499266511 970932722 561236179 423033260 294914126 229111357 68518373 154025020 866553355 642152024 629125710 561447421 696658374 666774009 523923036 942609528 892036548 572810097 939308752 853218752 974038278 864509682 29911678 355069378 526066918 444792096 615680026 827341819 291526550 711912395 482051749 199677837 321402508 13229007 27206828 894269766 180877350 306765994 368767086 900487052 640569695 914578884 667674291 873273611 791892952 438693223 179367359 727033381 896477017 572546 698827338 164530566 303216125 842319696 34789939 390687649 706499457 948552325 658121394 161733110 872749548 739265491 826075376 575430301 794717568 612319433 228313704 627372074 534249364 177893365 941293844 950875201 824403969 339454984 448865163 586666121 435932529 757685481 488825396 200202858 500277120 805425298 269384126 580059191 419230688 189961445 463943879 847923821 476618485 990312735 360636243 557300981 152118053 106491038 29559504 511886120 963440082 441277487 802909723 892685554 958173355 77541131 406659080 997118324 527312194 114403739 603568791 96994563 610401544 275196189 782159227 996109613 663973594 746352478 642179722 583528826 506082333 185032223 427230058 181443467 442833062 742411478 281167978 761199925 359166126 725325009 957966684 632524882 594521445 652102373 957099019 227618075 761658978 905791135 896248490 499680885 794990729 465356208 479294353 191370482 404001718 720032976 205062626 38811855 78066243 113228059 631255925 651007414 418261374 948112818 121205107 474363722 296124584 887349386 431670212 892053949 4232432 302949412 430352294 388362929 594082012 838919270 561890211 752068902 152358901 683911606 261036046 222966862 360248855 582489858 297811327 702003466 277352824 790441987 709354266 615196728 287212287 590905497 70427152 947846410 342676603 142255750 378531763 700896920 66777808 470332901 734566414 383248667 425283021 95256740 396995477 262835223 258776466 84528276 658249759 210293561 614247223 433672511 841077803 393245354 957289913 163763385 438000396 21370184 809446527 345200694 22841086 249182137 126374821 827370905 690029361 141006615 528611602 356144018 880210100 660642672 697458930 403658127 127397198 585480482 227351611 582723905 474938492 371945423 327531778 875538385 405380746 361795446 983285911 38601473 884324432 592909664 335255691 425837493 589778950 834235115 148710789 261989215 663201156 624708551 19385592 721317631 260949888 697566116 85044652 373301074 999021536 544718100 545830342 45397969 652905869 241617762 855155422 842598330 605507754 132801345 96235172 937095638 547347648 580269625 888370456 162082188 117173509 118304369 814211513 216258182 138458825 5323970 267810486 79841516 727003355 253362808 286129855 524765607 722804142 388340067 208392353 14282720 304690438 366201258 706892931 898562730 435436470 622890590 655748213 115327541 735642120 88556807 266168842 427652868 320208430 706411308 146227155 60581369 675864477 843293072 986957196 98100269 408501101 271241481 618502682 546141874 583941001 807419205 74000873 94051369 543989790 997901782 481814443 883317382 827734816 762167232 785854438 22371649 3242668 443936393 591694232 769107373 251347799 23659205 95677915 211716774 666810017 283401474 581615642 808491677 303186327 558112876 831066148 554401490 455330610 384005041 330753666 47390706 152774293 342036466 571110566 386914886 194266214 976044055 870889771 380088705 162921869 322492010 674467996 29519116 240752613 70565514 784873535 369563062 172273842 496294604 822169879 979999089 308161720 491249340 585922452 844894390 308673798 586138096 571558150 449140845 438666820 241002762 827434564 590357171 274426463 703998995 214183677 881673324 109246635 89138458 190079204 574567400 847725516 949277262 291122271 93219639 206072194 371496705 749016101 788311252 523191728 371308796 979199093 398084335 576523099 811796572 914918151 819212130 512592298 271478194 451569676 496727562 328329422 527647208 456204021 959036400 864839585 460489224 402222773 173800019 392895376 245972889 377132073 765930319 846341251 334656657 708229362 313580134 39125478 579925225 860637170 840270018 668129010 382119076 260292141 786002895 19645882 901272104 354347713 306466856 649944084 133078384 726283028 674920449 851061232 124978850 340694401 684055561 444524054 103650214 657788548 621880268 610062132 645501203 457909618 450030602 633009202 649568736 859682496 22579784 214255648 37046697 387598218 455182468 508560898 711920366 905874928 135734200 599996224 243305344 702886337 257780826 583271740 782877413 332677804 344175553 932490948 120637765 184097788 198568262 904559055 84602026 531576429 900507568 187166300 438428992 554046976 706828166 243867955 477281116 697127630 458307223 743453234 846550229 530947089 105270514 867339923 772718816 897875 942226120 322210174 557268555 790248690 766669241 991944343 215011567 499652062 363116590 354278871 131176139 971465193 753929607 562582448 188474910 462086351 668219387 347412457 442967962 64528116 13899977 651165397 108001931 81128558 153964271 727442330 442689683 531474128 125302734 354666072 896431324 690883631 542080878 196816721 571265908 855900397 721341566 224643676 532305167 74953853 277345756 331142939 261821030 282680918 33523148 54558099 699080252 41376640 858187450 386851051 583555 497962118 201809700 477378169 975270749 805944319 603131378 360759180 350883885 174573038 508739397 238107337 241401243 137432332 420979889 167776890 426670604 385432925 348837069 916688077 211082921 855705414 74066026 832646330 978620864 49750956 288444927 629053041 305289169 383268207 841142402 323265932 431436022 170028526 803745623 717787894 515483137 819477259 596711667 976043336 850819768 188267814 596457383 497487666 154333582 910547158 46805916 804109746 540420315 251252291 846330415 593071139 93402866 669439598 344569067 352000341 998773861 527900348 963402502 940337017 659306710 144986165 128952807 2949485 679073641 380976884 564257105 877721889 54630583 498478976 100376655 82929816 593713312 90529658 461207775 333810478 301240936 821338849 96221376 705848746 111424196 998112529 864014175 654736347 737917247 984138419 553402682 478564530 989213047 698352937 920418494 502815841 996747488 265541558 771773518 527326528 937971218 702412925 199085798 33365189 458709149 516144227 712132299 810843886 752251259 93188390 725824932 445899442 162748835 592693619 808951935 73203972 955868938 537362756 256878074 839721037 912108209 799432434 581125468 336739943 459408944 681921472 717759415 488294299 551980692 987665586 500690327 707245606 904807749 455808738 358928957 163081399 437375900 481826866 683174902 938038788 227517685 110849308 985620438 95365507 636328308 362272507 328822235 418532241 884427232 831799954 910441179 137216345 89552218 124765508 803218798 645088030 117446446 299068686 598571999 605490571 456493064 863384817 119493569 387056840 460618975 972228313 154800975 689470573 765793426 910324306 742598198 343672419 611128255 402736477 180212776 25256829 60345245 679561203 512499611 568269606 668927775 426739407 526076652 392890812 10344392 406410964 997935391 319858408 251070718 21180322 189121818 377281022 343666088 190414909 228306161 466384221 87401017 213431006 732580069 204530458 941008969 424195097 352782881 390913143 277851284 986676277 897621194 538459382 597499176 662507675 865527844 962227619 776695301 305568135 329997598 664373907 976779018 405960167 468860691 778722530 834305205 327451362 599733970 867192581 566894619 847225331 160747858 995851696 347941838 419070182 918039964 127830240 331112832 618172035 340701664 403942923 341107311 711121390 528093582 233771923 145619218 236942214 607162821 231235487 508627261 249433607 937379599 100612561 183553032 537511118 173276459 9734842 491358519 850682163 800918386 771676231 844580561 398036961 917847784 621707060 486090689 493604106 208187167 202942830 781193335 105608013 247493764 783461522 575229628 920612722 708261519 454568072 168136492 782021381 496942701 391928537 797652665 132290385 10652317 385222650 871207864 215470655 662481667 198183340 578661893 831725471 835342828 483639948 810984820 589967931 168312552 369123332 319775845 342542543 816151394 982512949 524191017 505023442 402949992 364645426 826398174 88037278 217103176 188967454 429431056 778650813 370928641 327953322 944482793 201953120 585148590 961594975 819010476 85737382 635984336 665041236 367702238 416728117 752036364 448437653 521531569 271490585 774616861 608015065 926255244 874752479 244605755 819108714 509069285 935457202 587342976 82248158 911821900 272022258 886608357 572097235 509179889 852347460 293778986 234242642 601583062 542358868 424286003 814700741 723468652 858743950 4938810 449511829 604680925 507515338 962799175 920336219 282694853 790296042 992801727 805189878 183224138 363396155 787392905 201211272 311953736 829227961 752424160 126040895 920272197 328494044 394809872 885414079 9657140 911561799 907105451 43199022 663299715 532677025 581853553 583733179 52215868 750833780 595219718 167912042 496112542 768217949 136003089 942081310 13075356 391365639 546977898 140162117 380595571 155898327 135488703 253599318 610212481 49122558 528675123 762417381 158759090 594029873 201075037 877170017 950559829 232530318 438374865 266572834 887030407 745063046 590723006 937627381 282614781 760481006 846793903 947061543 737402803 812343418 204618610 710654176 97524208 593817411 926183050 899314905 404612551 129578192 946993781 544991334 352421722 321604344 992089809 667577952 520204767 859560667 735707092 445982386 972069201 587671475 76940450 880712932 310032474 714183297 857827213 522784115 245309184 506190304 991699339 50486620 130554398 234103345 439052009 205253594 574203952 284020494 106934067 74701128 192718338 893960234 722499555 957593875 194583906 152502734 928025249 675796317 923387833 975778852 951203997 969592956 561156937 938136695 15800929 114108872 389850486 63385170 726397589 851864924 80647144 952810093 141256514 780512838 831503951 699840601 947089025 335932700 24982847 870534777 53541439 761361254 855002119 81567322 158409138 735689980 355564821 869810012 694818824 654150872 331574092 813806733 459980490 866260659 807911006 109196925 553475652 761940117 810690549 148993734 954437136 74257985 34143943 577400992 625252466 219874653 461477630 79710694 177174697 261633355 27556117 268363176 442160050 354190595 330640940 827790737 590653553 368634540 876168293 968940620 86258632 736954115 110629451 664158505 26255884 364147306 179404669 264991654 387404734 408596680 954626004 876797774 776022602 631825093 770921569 939945152 425982870 407125868 8019589 735416208 506647570 623986871 485228942 940905110 475419828 378893932 487425618 935355225 611468927 701297423 546478448 97112360 418316097 14548295 508572656 754132845 953966127 839160228 199304186 118492307 587938975 194348675 82189523 187033672 937957038 843354959 112900531 419607261 803467918 446784366 95090448 685364565 384053197 304867384 709517667 465931872 391129743 69014781 857317447 902714315 228387400 267241867 64102801 267122733 703616993 979616364 402635112 226174765 581085900 565891878 458525356 465999734 91396677 992107628 340057643 322926504 420726484 812053837 107843002 792237117 679701332 732607394 572041776 913058105 724493703 436005065 244216210 490279165 858936634 308832192 503371180 322860155 447248785 898945643 754634882 716480867 244930613 967789108 826765025 947584165 430576558 866488793 991560382 752778204 238932576 928714683 51147588 274545955 100007164 801101609 476322929 331818207 893610865 637388245 778783130 804716006 511270185 202298175 235437677 78086524 760656610 474346928 97026573 497489301 778821321 632063722 98922677 784429538 268969798 558202314 269336510 965384237 495924130 790892489 183008614 866593522 116986156 687064925 144232879 206849288 930063222 566594819 281360641 839047624 548332648 999053212 300149659 33355160 247996879 154660169 788008353 532010555 627464621 724161899 709094542 362308886 464770806 309585411 655366165 146532625 484189549 505100572 498854251 453599687 969983238 670283342 451308397 669964654 997901616 306559671 526161326 125138894 958851164 892140914 689555833 516257715 461118044 132872248 899577949 711383328 648533307 205875859 88870033 719433048 724443937 346505694 741849464 658527549 392982582 962488894 804831164 893445902 859026267 102459530 653549216 1555134 234918642 257757189 638080796 860237577 624609838 384255513 453599207 596192253 451723083 246871374 111242612 8809037 394074641 264203020 842060464 978021923 226404912 886061962 95197580 56969043 329051750 829898614 939261482 629206066 451035621 319107849 475563814 996313786 467371684 481521957 130104284 241658627 671805086 402561605 634470761 507150509 353647166 678470933 783049549 110126811 985452245 101724269 338564845 195159912 54163222 498357496 924614910 56412441 665010478 415546476 473684834 924416313 750308198 362890105 668012549 181258805 563563446 875769155 976460651 550035446 881304595 262479122 237261386 33548139 212718913 679679056 959619853 784860343 647113711 258210395 799892674 531222804 483994040 90959456 37417322 917416313 317958846 405696298 292893695 586274976 584148567 327254107 568320289 106983499 775305866 383177537 107963226 877941258 939867014 75839002 879954163 855554322 190179885 566526773 317499548 675414194 272690655 506248887 364083983 501878517 19250275 60898624 532752127 266850355 676881606 707832520 843759912 858293564 790900322 905924905 548460990 274654287 536636268 201503896 457002496 810354456 27193324 585329681 549406211 303231269 509838201 143570957 357096848 776475142 869908799 754914933 522994364 326821458 798146280 528894176 178233213 962288042 73033197 286548324 461981521 162533036 81707599 442530256 972948235 236633718 823188896 728974473 940077522 106255167 119740119 763267930 35490253 735676097 558264748 404665055 496343186 595473602 976804362 401752297 291967781 414738311 830258926 490829803 365039106 4361772 972339379 810715179 343203944 125849848 37471935 58120181 201482175 413194771 461098058 649544628 368236548 514087155 332143651 56825333 832001946 814279875 17226200 108508137 584731820 748610374 96536511 326880190 546503318 377989233 413398149 408569880 542274197 316107696 190501409 703309623 83020597 209713311 509062537 276956501 612386841 824587784 382899320 802226379 146389438 75287233 271260960 499084069 258412056 694956273 94134920 499336148 221655229 773844340 631195896 950080865 531811043 935512742 517438237 398377289 494032212 555960802 807780813 415245309 874866433 877088310 97333207 452914856 169769638 537112068 283927778 979898197 418704643 765072608 294674575 418292626 308435274 133446075 240883747 347683509 463431111 401445026 892768902 511670980 658554043 8723506 595990634 908286830 429153884 164848106 560003464 504919598 986608822 917381412 533332681 629491939 114348736 23367894 161103085 567394063 961358764 838837 403988162 125536953 533100186 511195328 634850378 306231155 579046828 529664753 979163651 197850613 508795491 27246306 441532173 700960582 435297365 113360903 208772049 739249410 421444052 423020768 709383580 970082107 804434752 866355857 799530595 354097503 587667780 740641214 707526650 667126653 89271638 454763103 600970702 680465170 664300197 170010234 984044680 294070080 927992686 369733143 328124142 873697639 878413312 23251322 294261338 80442799 255407946 368670115 846611759 596196565 57390859 423850582 811475664 583239121 650118232 133558801 680139533 657750673 385808624 726598666 651762643 274777694 422101569 530593601 361501536 228414814 109413289 276763986 342790490 504299669 241637256 466161274 546364958 893492100 128733409 383400625 977413273 183232658 296311717 800955131 582485648 61938287 687277904 246288581 416374952 286233762 517460773 381677307 742423748 152011182 438307545 311754811 841325292 570061566 988449635 893417258 81988084 919275655 925102913 711491554 309387415 545371843 840541174 846642964 5688326 375322618 953069885 37254795 157249910 669111877 509632996 369952419 760152221 984250924 545933979 738507623 899491835 399378202 571977080 830180476 300880802 590338900 529235696 570533917 26758179 105936965 661076935 608478794 638000869 104869750 201451903 695585140 379876196 245223352 205472200 222842782 988145635 443329942 8739561 647762882 968945636 235580982 27647420 500360738 170533818 567330928 603717269 719039365 63721737 565229877 581752109 548967278 814622902 334258353 324777269 310105706 962228348 53380130 19261978 253196421 347540988 170782844 56610788 790324038 966346165 739979699 187229237 632836942 787092109 571793952 963321211 527270386 705293198 143105601 765986296 936857777 434934013 591111189 393407495 446938380 508950014 606267276 943233406 457401199 271030917 785610426 169664009 217502690 269241686 863274923 120258131 763444535 598640075 632626201 438088947 418264558 715752949 375324490 280992834 592127675 481120660 914832213 835551766 711945318 628818185 595118878 123924246 35677320 564744556 303317650 322582436 897556925 680558630 925608180 607549354 406156913 210003632 767291957 533929622 328453182 518885793 711757567 592824195 969839244 340952002 755038039 687687096 55181360 515181720 869018811 815046326 929228594 998641891 305264542 199542546 847419488 926879708 502688467 673310316 252567677 925498108 409436553 875117411 531407108 644337816 434095340 471772956 209119845 338090470 431281032 913257391 584983506 449724570 304719576 757228099 379864382 330218898 729000281 795910372 419793553 567941022 558298442 342818 5948782 752537162 928574664 639677683 270630425 194948087 320700876 908643207 158778509 937027695 535315857 710712590 95880257 846654037 122870813 460400292 386367021 200340142 545457898 647382200 134568880 26540093 214508155 375950453 154716415 186475875 512215727 169172021 928389744 318833365 92702949 867632287 997857499 95132671 293934276 654253892 932473572 167481169 463823865 766923923 203079980 430281349 758157543 762591934 960936441 51382503 808124025 466844531 780103143 832018267 461879667 815289406 761650951 792486855 141582526 358915110 81791950 842650240 659411463 46934242 949362643 680687043 5728975 922303574 417176678 336031291 614479038 641575096 680009766 350337066 182562905 622068442 573900140 565003261 159096856 371174189 722470122 662005665 792631166 560902677 944619888 42331687 929850819 585639057 287413532 275821557 94645389 524190325 235256502 200541997 330156532 595619007 634365412 404363234 196379367 274436540 412462456 139779515 875433352 20244608 291415503 311736712 357297687 331322956 117607254 177307560 278860152 907883283 802794200 899043845 949840284 68939307 674700226 84474585 600024635 973240609 169179003 225705711 31998203 534169621 452214367 892182775 636242957 608140996 917788447 123976494 817256241 958938805 159860252 794533559 625191772 235957282 540263150 670949073 128585518 328779058 649787969 37251243 691430269 150407916 398524954 585622566 901135987 451889373 368791430 250641341 170494622 791884343 529335389 452131881 345073454 102932513 143323802 806196106 228401029 176156302 115788757 484934034 59131220 859072016 71241134 872405875 301020257 718105118 784650059 338046776 881182143 963500675 104738383 779605435 456799954 639980211 762208767 668584412 600338705 642170662 464216783 989733887 455817939 402360564 259379616 63834637 622616680 591558920 485842597 330504216 865483160 168030105 37044300 9615096 184553196 125182914 456520435 929962373 984027869 120180229 356710700 498282361 767345389 212210430 686659157 579491662 5906694 543372665 42585512 69932004 495884158 279609159 376102043 933399306 476714700 60882484 765836781 496831031 384146423 503453076 267662410 550202914 705733913 761171478 88519751 810890794 314401600 88079699 226910183 651518574 812824244 870539771 256491066 238192410 917958133 152921990 935794758 831542220 523776563 836650787 324060822 142563761 478347334 923699709 996473733 985571629 621558800 100744475 40428733 859174910 980447928 360953453 793876262 743588343 948211692 229852867 343414286 998776405 383416713 250269882 180030115 888229563 503114788 674042581 802548104 86807458 88719568 224053789 942493394 65353313 355115224 463550376 402143015 593837035 698973046 169316672 480377721 45206964 767280970 922891371 588378123 562096753 188826605 763927279 377886561 911749438 928448063 29733 309638323 739985577 308797092 922435781 206069036 849893474 952351673 463849500 400684801 959208230 659872945 456433143 420617570 896181925 191567924 513398386 9552882 357694784 802647624 362570533 373429784 44795860 108653677 730869226 211618892 427068347 208360368 312658006 125193366 718060916 739759625 789254306 907801291 145342791 812752422 73791495 807503033 222226032 365176279 667978677 92928121 432534010 691790580 323267310 814277961 983911344 233742733 962056285 972806064 436721550 725219610 356853080 445266274 628488277 508555209 781343798 459446783 962517776 746393361 39066044 119258565 137028230 337381913 303795611 23040734 382013638 911066313 538613232 207197783 845214800 664064891 152672260 213484374 805049463 534053412 946628719 393308260 728573317 207227691 727217568 833138203 449748456 93436299 693908715 781483467 949413824 418854281 866765652 330064166 208199289 908405940 579617855 511249790 181192826 114890868 312302099 721942995 375266708 685317519 302257873 877701051 379687750 721823527 177003975 161201518 623377087 740391126 623700747 873819349 313112598 653153817 276226638 423218775 949550348 701687678 605876286 645461750 541170911 581953591 35747798 222544708 112442525 504401240 129066262 256768670 766561481 50996566 79208059 472267521 407552887 814074758 801401161 2004230 848693948 229103006 997481885 344963321 878898067 206592587 258004680 889504726 772699813 809596935 953023946 231039795 338450678 493276827 5057444 101499955 341078895 646503410 170154609 671926682 407038302 452376882 662009932 358248632 99726919 917084604 79913529 594266911 7830926 781474618 147709693 727688555 515246421 491727421 932077695 136369425 398917003 895491818 584273176 68851107 99172213 282864030 79365547 696142273 685137166 653451575 732577705 855607602 928795896 948208212 877031053 324825250 251300741 570686428 559470718 839557142 969471838 703931406 616795633 396381142 18578111 69872591 974445020 659712209 40352604 749582720 117950993 33485867 911511103 906612571 355410915 491470922 951542320 295526504 363287225 535041276 664895647 134144835 974097313 520574710 374691682 605432287 315775021 631145435 384730662 584261431 117784779 688588818 880721913 840231903 681510731 592711160 717204699 335130400 745679096 383569081 769501224 771731516 592460744 209752761 910493451 145989985 404133472 361614408 791335746 192819477 855691685 672492378 301804589 384234194 216422422 676035957 517647521 313914777 786620839 240751887 503226717 328615320 579840460 575039068 236993343 385044430 682315810 473384986 145427769 978800891 943575960 424468252 538252101 607499596 214293181 226235114 713599581 743269057 721498043 345650602 201857521 88780206 801586540 752592387 3274109 925114617 518369773 402562958 204686425 662893788 412062524 233592744 515583695 886011571 303287953 835507263 680143466 132719013 814644070 405972733 196984235 522887061 164712114 183220590 837489846 761026868 877944298 922344252 717399965 122658617 371203622 318939207 333645470 838132019 348919675 50927235 59528978 56712575 255684688 613409517 116565817 592664494 12464696 942808284 295407403 102042254 418502810 483544251 535106221 478135608 366038462 117643573 144665566 355110988 37114544 311216728 416606907 384495614 375879833 794702516 448148658 847910974 562580832 38404280 468312826 406423290 862906167 362191335 908756090 140104011 415472636 644373207 714323017 231684504 724645662 481827698 788714455 268638030 741339225 637285862 855784645 40057438 858403600 973767449 10575751 905192549 300246282 775182347 274941447 244043552 882113613 585393676 59039169 236913600 411508156 455633812 187674347 265937152 512248067 759928071 83863020 377369673 705233141 268669256 433733482 927743752 556388644 558896151 111443125 482015510 253983447 290636003 680033845 559992358 719763024 480082855 656963597 155353035 749218564 278414550 678543349 826039284 521270188 165845518 20126104 133513033 14179927 988935745 890628511 187914858 251376812 792878993 846708938 29358863 948950199 504691538 618573561 469715416 98048394 179298715 219047528 145244720 454741440 33885857 102413498 367004570 236532316 389827272 738879716 354681987 290336961 467835200 511004310 985293310 65878798 89482669 294447971 232705144 695180624 202595783 75422644 266794689 486860755 799748279 761762496 47548977 275162119 841228232 529361328 136354625 352006112 720414237 852533776 159668538 962810903 868950799 850246283 81614251 828689332 725540681 459551645 94494117 313038628 422604144 447869855 648473589 494473502 588458092 907297211 336176868 220494296 970253904 954739169 690897298 876761467 572408042 161646625 70479182 51234652 875314406 289913677 958002595 763894106 264436738 976878774 907166961 987139076 162240558 897798716 808410612 174195381 809264563 666408603 202165462 191696518 198514372 656389019 977043865 555868949 658655 166123100 709898887 867035975 18720783 155923432 938338722 284954635 133198318 648791819 136939566 633542273 549339348 611643967 176067111 154330549 430572981 717249409 370775005 709470616 294546903 692958835 485838010 761781179 740897888 484439660 100275603 762677177 615332761 873399854 333145211 661713479 200200448 673897445 308968443 55670711 902082535 197162759 51070984 549686247 496964052 106034786 588803619 216418966 911669398 393221548 131798931 336690832 100663318 226308237 155866977 403373206 341475790 423292552 459234032 113318806 416367087 729743803 216547647 859101874 251710082 533586036 595849352 560260341 657702239 354233467 955895417 69057594 415086115 378710919 160639309 949304711 475539854 122618096 414616141 888951987 298259705 214157748 577643169 382218568 11938245 193891997 72471478 883211688 88362663 178167760 217119619 83555858 764497942 78298521 674655235 491205097 501218855 873095068 421178943 809664011 388804901 54810125 66741979 561226177 906244841 756555576 955414699 75344335 719904201 79724883 764196096 838377316 275480172 697131445 112932053 317136875 604726383 38584149 586953909 195300264 424879461 7650947 845847655 270121355 402453183 879284740 917380594 727790854 788603586 217386042 57107543 191933056 86037086 71030999 71765150 751250528 762948906 944776697 493418418 932181943 876778260 153162295 852457135 948661124 337764169 549987375 752864988 738132144 296117671 489746264 816852254 720197028 268850729 774842280 51269467 156195940 165358340 610160037 742790736 17192251 956407482 626792296 400753666 935182300 127606991 512599262 299514038 556667375 391784994 196181153 8735929 416418842 222292399 561007875 506113682 547308664 369249220 915642566 974606139 239284879 888962186 544147898 999841065 113281386 305189503 630532720 5102929 103531447 665782964 4212620 619565419 192776140 592753238 794831325 626590307 693876681 399676141 317292173 494000122 877075278 203613929 457650244 477793050 210926218 67811806 861747762 384592227 594741444 204919538 566857288 4798957 628164783 979301734 257758819 24325436 425736416 857620700 611464231 679704197 422926370 697460821 345695986 693827042 930873388 258672714 957427797 366406606 620215582 179582378 114875197 125327430 318500335 437537466 720806056 810907303 924514966 319305767 359732363 938007692 947325155 539049310 394466082 704407874 48222468 267298107 602223191 973899734 253913123 273339073 396177130 279103599 885818759 115452256 354581676 831739434 774014507 712170403 783697351 861517133 67484305 29827263 512232612 213073351 583046417 463632928 280874059 792715222 568700336 811473466 187452385 757397110 867556875 758730668 427008963 494828726 634191399 685173556 140647896 882587867 761735347 911770148 991488153 476592088 359389087 873022947 491143630 285749834 706780119 31531571 209261003 1598353 417328477 414163179 965980058 202344605 718344872 488795104 105337245 851545965 347682235 24375099 166882563 106103858 887190155 829431427 638345673 64122080 121791364 720496175 693756931 735429446 793298716 863537286 305432019 296602129 747901928 575142969 106706306 100282802 631174605 969314647 148840449 497770005 261382530 300442087 4494787 777716494 294425927 431596346 568463025 484927968 107372791 311965457 833405956 291741401 980718390 142238087 801887112 352121235 106337704 117515217 650559999 163825453 92455274 103830720 314496483 282779493 730107016 922343978 852469352 227187148 129988017 703090043 39825154 883025134 577714918 178763008 75749463 153900629 526133051 178374423 860512894 43760297 838644378 616967375 198827813 358772206 212415566 363829979 201287709 215323269 820424357 6050628 506419863 242421504 227652534 90320536 234625997 303193367 774583024 869224657 784768399 134474975 537783525 426166316 80334782 707106815 81593156 559260386 595874256 759183299 913034399 885288577 963086283 833195385 695237184 838900091 46682779 993855618 59875997 219019459 111428207 881294534 946357905 209529422 333771138 247869448 863779287 371567371 347594211 7693957 81814364 707208770 658245295 164075975 172927772 578772016 386134704 591997038 129446856 448767424 833478280 322418883 547855268 717476598 992218679 839495462 384273252 345792810 709146789 919861984 644592711 339455486 917624205 109789609 244425796 497319271 31016893 5947470 574408008 344861156 285378890 826272550 31964712 658408583 266587050 840312321 594593684 325818009 690861541 594758266 645165113 420088173 971197427 215359233 299055973 280201513 619571837 208207103 119930292 353921964 248920962 173846365 853727061 670431306 695199698 531750473 182551826 728792514 467068473 799312359 141769976 213946184 173459336 206622464 245136187 248646453 345117893 269010800 665459698 848980014 359489376 693620552 729260574 39757887 997196113 425018138 828914262 462927999 315558761 505425444 153055067 228466627 147117275 914107030 420383695 124875516 237835555 831519005 911260670 636368228 261929499 673769543 993133613 150761470 426909685 733367301 749685289 256405473 362704144 152896780 337053788 766082403 75418216 721447537 819980206 216733501 628232223 78152000 331792221 632734157 373885647 572260365 504031439 604208843 4250107 873480812 427443671 12623404 258187853 127214478 800211681 374344138 31901076 393015046 165126775 433989776 48720232 142157376 235148896 758503598 351720462 576107350 280565511 234152615 586606616 999547952 380394545 839596808 37879654 865839116 832319007 663380791 325459474 718957435 696725784 735447948 492740435 366610629 163675589 242385203 796755656 282015908 119933792 742814925 368940383 27675394 944150240 438611615 664419948 148812960 674108255 381506163 454848289 762577342 719524636 760947013 546284389 206598485 392220299 674110135 948122455 532874947 840121666 616089378 98604413 562795601 525131588 430625777 272989845 690772900 842749549 913772118 602540239 868344734 225775258 769967372 659838794 467730557 697579612 743828132 465479520 122045681 227645092 430665493 442992704 938033938 384980323 496803297 25853235 833004517 472137138 689979625 452892690 149358076 782558866 349900589 591277208 885086981 774054261 101085955 681772229 848630750 724651711 602081323 109696095 699241313 725942183 248848230 787394636 800698499 367924639 845054630 375928982 439292685 292222081 819599495 964451654 101057898 558567369 209741157 520667166 642212465 50847928 813968107 247317867 648817646 184881972 643633403 72199320 358597608 256689154 884389080 872067198 957864910 659276947 960489962 911594439 252296040 396297584 27945342 496902533 681024144 936711858 822766383 576672128 21076848 424573465 529636060 27561576 966310990 493593114 546785770 908584988 617569156 297330270 97446250 736697798 991708521 806785011 265738868 772838501 230082357 668250038 216079594 578389117 767706274 368468642 817923129 242283029 142543433 616458579 454054058 382428118 190644084 191700362 111612260 415575535 395328372 152821239 920469114 328372272 411498164 593639860 22306898 454473714 513993695 149611537 340859445 188345062 863442275 247755634 246400351 721558911 460414108 798751869 938061291 3824791 705391646 171793431 412372228 473005253 332543631 949054971 461720967 381223198 745145631 96299086 321791904 378304978 558383280 439132425 614969445 981887760 242834100 837517882 631729355 988637301 687545339 970439697 555055277 760935703 544005926 315067262 489756215 119023091 744790063 260439238 321671566 121353967 470382414 88690671 476404746 357188564 306424078 528275647 915744235 662777064 780897013 207644260 342488385 199406555 230276388 34776431 488358882 722144013 382746039 810382148 821103617 48455968 775952867 13838097 150663723 394422614 397341626 4035588 443861237 957489870 685422502 599851990 958831592 32185756 984109905 845025032 743931751 964267224 802528619 536417136 384913787 175049286 588942921 709546021 932710667 942260283 616517247 624251096 757933656 73194616 744607636 991086105 817909010 981802880 607576749 72750242 641237019 976764069 798228364 842397323 728489049 320688135 404114486 712668342 874333379 125767471 610880600 856916880 15253422 10780502 550167372 313210456 264601971 168752557 252982764 808468017 720604683 959532879 100435905 624246381 576669948 778197256 153794163 476535241 907152334 960973514 464685381 94001403 280529832 394374645 188312022 153037269 789074805 579616066 204094442 291258220 370254416 449314546 145964702 734083611 990015245 875132550 910751856 997316169 771975360 571643589 292852505 167710896 545559256 547190368 669435992 225516483 738808637 686914160 202684570 877384891 514502860 978704061 226909166 218215601 740157156 545036654 826652367 71466652 379803282 692340622 812912665 531677078 680701204 78040195 831027825 496190607 497057181 588267238 759706569 90925959 516332757 298256223 309222597 736548293 759887532 323856336 405135176 528823813 522817649 581566445 289522054 866453782 272870661 751436543 539603380 47446251 17919416 339721423 585047849 406475674 145320999 372922349 865453095 677036448 499841978 184173720 447234189 705834745 957642083 516267482 460883408 26802050 590545214 596141514 358475444 121861303 574797149 499885466 69747117 258931608 485276689 563300198 697987986 938246731 901002974 8944899 277279307 111147609 287054727 12358957 660452777 371871313 855013051 364432995 912940515 779831936 455270811 739467938 945242006 242197829 74774513 860735958 64969950 495480153 939111432 278923326 531277441 430649047 297487511 523082892 302870907 562502542 281330918 330759282 105051875 912419475 3571252 830537881 275601538 264895120 623071163 929716357 789725706 10765596 9307301 222707748 995754990 874941719 971152771 169258401 149381631 2124453 926202417 448777701 380843296 773720197 809059428 716753486 870745237 453692733 605661825 650012062 823738183 474901273 869295894 408083411 990608813 956855823 47579157 979000250 4971181 393350344 597230848 200571495 43078106 535325607 408954587 758759690 573888328 489586052 845926411 458469652 942335737 860830721 134368374 206156348 804193021 582206338 953455647 443070997 853733589 245227622 226630191 287415690 277777059 518900564 167623065 924333128 528269625 38802896 333485796 451519535 136978389 466769658 811320332 713931571 900875857 298148892 586854016 384778369 110185217 343702049 301753546 421812134 866627226 979894053 789966950 312951399 933699839 785274933 33477451 954328366 295388211 168748621 361470652 720458987 934153813 723972210 131107271 307182065 695463035 303985332 738239181 459340866 712860041 715110061 186916937 317717617 729295129 799442632 452577239 11680894 527567140 268724588 483716229 379267772 762001366 835279753 688807344 697601502 536400656 56837221 120178677 961928522 668826653 918791939 698981362 359968792 49968177 654070111 897750409 873480571 574388709 476066508 364812061 158458972 395036479 96956202 665999370 227368951 257055783 232571989 882468411 186020751 703888270 447437622 675305647 644309777 999124068 464670529 902259966 929549269 749902243 840083655 931616224 80794224 10746405 497166755 443893959 429913409 266230419 136977162 766110513 915846406 530070369 342280829 513132428 827287846 129044489 162419445 568261881 817935012 469550987 631945205 612196499 327951441 612239035 54407434 497357506 842347003 838613424 578681283 864861824 313706179 717662824 695643688 878271680 654234399 227751630 538673599 665893688 195086078 624807916 910414906 625505969 661183332 654254964 565470880 691872385 353739416 279112714 714361890 854811094 340070771 771280713 865958689 839408583 580522549 66849197 307816992 155612387 664986769 440493672 870350353 199578728 407128486 66602032 607810342 726408766 794217436 56151947 53941781 949420192 89101713 490451313 794782311 564706474 923088760 496255949 403482465 553013365 947109689 231770477 176305346 983419171 531636019 557067251 13730574 775981879 348514077 842124475 248747113 303145004 468519483 775147551 975501673 59369498 29325769 973643883 62861001 982592722 433826411 394915945 525913572 680240441 962732875 254137547 344518375 446482293 768914243 337149006 591934295 76823220 372048891 96549029 86208826 207487900 120195379 245897518 529860226 365999144 354166485 727419872 628892491 25074173 611078683 469455842 709225786 808307569 816299942 855652351 877742390 81460686 466608278 38047552 156360944 383905955 926747024 58307449 359567601 486997968 34269089 84129045 875304863 462710592 665922734 318091752 90342513 856502726 663732162 684727533 153326446 266958367 63196679 346534036 753769015 735098366 181056733 597898949 145768253 831688821 10214068 871068841 502483450 988619973 313616579 386840513 979717792 499798584 956237562 984816450 88482527 594195613 579171030 72731652 741613839 297182649 642769060 356495612 934383177 856719935 685796032 861254726 112703984 670909471 709187121 926046719 916560539 873565356 792986840 175342267 844027872 996552327 814915060 628811897 128868469 493952731 555712022 179782191 870745988 238101556 915650774 880740025 361712768 395438396 376249433 545128947 55389537 130258273 822629194 848992520 937684200 910278497 24212548 408231503 570360005 3723274 839090 768641978 279604107 502986197 553675785 102480618 510188906 998885454 433176429 561981040 744654655 879791131 812591225 617914174 9728947 914616242 537693961 394898308 289119103 310117937 120717100 123028990 166823848 216116781 92593626 240072849 352803698 810276239 61614651 304443641 305726839 778267633 84569976 96853575 27960667 294362453 333443599 984896707 850264557 760140568 468819421 70696606 382643643 910145163 324157801 259246980 59347580 659399197 418922863 668633637 961505952 795465230 575109456 190499029 121771160 688387050 355103071 366464244 741559506 320904199 372086546 975234848 483648184 992767382 569944899 624541815 140610724 22564862 453742904 453563763 645896242 879951388 789523363 978705354 140146726 255137597 935568206 116527977 510563594 495173951 803258973 316166416 200540871 224854913 155930017 428048197 316122564 866189072 625380429 124897403 732584166 60495514 740197460 610799171 867967247 93781756 212059756 629566280 610771978 833013603 911865996 559919910 57975629 634389763 525674198 768109546 683127583 952526953 886708463 54819310 425054299 266961339 936771992 681278770 988975203 241180989 677160669 996056286 666411361 908327296 863684839 402561397 675581204 983096921 665787491 996609640 375237190 801236412 861116220 558003156 567086480 921530779 725726218 593278017 162674044 761435001 127008592 49722764 168195997 892271206 628532563 7427668 493221167 637106919 435081483 910671623 504568 33904949 637312249 403064313 817408294 594982315 985959684 645675408 201418214 680940859 288069536 414680180 730627924 105024040 358196122 702401994 690088730 384160428 342714987 787415538 726740129 593857690 301055807 874337207 434593351 194149353 369020573 618482748 932847544 17462270 503434604 108079757 307817294 284494116 483238969 280549690 644999302 240597824 545539843 469485082 986790617 700435065 459950613 221791752 72317460 929508383 273307373 839479481 288101808 203664468 792346559 103060948 918053377 892526851 345363597 788500203 627522256 437248792 781045958 194917687 452599271 718544201 620831924 987769190 223706640 849919812 258872823 891540268 575741533 645450844 25417290 955419605 617909374 378689543 110727934 485658700 176370382 495026559 280260591 120997902 583223607 698980133 744734602 841035857 163781726 354809098 543853180 560244427 461537594 105214975 564376650 909795146 187810659 444538446 199832890 304348861 335068118 132027239 197335624 137829910 845410058 774877803 466059123 507185242 400552002 795936582 690637920 894991561 463183735 606094203 850537284 844935377 591623040 38357274 155160579 764152778 41868095 788091895 263433655 925296625 50378272 184031461 747075613 176968097 580642676 396702005 18714196 377002185 740130825 2760433 61837674 973584783 176159181 995374567 215758021 911281012 753681663 856767919 735766169 884750909 234714379 686003219 525745487 736384375 198722514 277676052 196933734 571420661 454255058 450577667 353755267 71010210 950411632 981519456 848155012 42815514 884973386 881796813 948920525 231411191 424501054 192066590 871464049 660240243 42685204 917058820 120883186 417880936 781347548 712119947 509924476 970205732 57730452 700813482 691922144 537482626 484799159 643499561 547645352 120484032 669798674 467061902 968169794 707901003 431962379 430602136 434707903 14897958 500749578 453770753 811181410 302161083 203944755 485586145 466762143 459691733 645644349 894204763 580064891 95950998 338221003 972177178 280890764 592546824 239953983 914742888 538447585 872656766 367698617 620472761 471906661 479863652 414456719 546675639 956350658 633010200 364429333 857668349 621723420 519787389 312012800 578348341 64954898 884056937 134821017 167856948 505132947 262823836 239033041 757632620 100450050 956758013 898927596 825884703 460206207 381459668 605006467 6997585 860080245 614145666 68918724 344065085 817234578 734453470 369366090 731265725 257239453 215737987 945047834 522227867 910633986 92321819 396020575 245361013 775705933 928666669 894149358 528150280 934944522 884831830 640485281 799522864 279909996 43997955 640544307 6754993 621914526 782266540 173984767 345157187 859570789 804861479 985171440 868448561 725479574 801793448 382398682 849479171 151514405 842473261 891590137 378374600 330457419 727716443 179263847 691674242 656583910 614853109 940627374 353728026 342919211 479619901 767814290 381414711 925660416 6337084 233683536 83413243 421798586 501710950 161908520 742779468 700684321 616554541 105702703 529004359 797513664 798097001 797793036 408842992 497806280 390141775 934929273 734296616 501443058 759349390 142037266 827402849 268366467 737890979 216241473 186067016 616168129 626505553 613313014 550503714 480772981 39234057 167246750 975390514 957828875 102307556 886381897 155309321 236650137 967574421 764962291 576960254 999787381 816126445 983160117 835006718 877617956 155205492 745073573 775222925 202422352 826923465 396172165 575998053 548563575 476309939 318000060 115365582 251176911 705078018 397728291 980333157 906187334 661598396 276716620 234168010 361591673 70106363 124189320 839234335 243830324 389651768 877339847 587175567 121247709 763604531 287337907 364670912 734185027 122351146 53488402 269957864 884541369 752088482 469904725 244150263 208254979 232977975 346283925 322802732 233924976 567886448 687009827 334540485 88365762 945531951 36838741 515051771 402911748 573301364 335890129 739481924 176148478 215607463 723720417 719168490 240593355 483924767 586458564 73641217 136406239 120886498 752850773 609756282 966400755 767931574 768632743 117216637 362485564 298437906 812952444 146638171 722414858 677647889 471400462 60290522 749442887 816411489 379333103 152184861 435670215 398563583 402374513 526679345 959541642 732061086 681321816 555463084 635621806 988556956 580616842 69926205 79247761 996796230 999820770 540469384 865187135 980683370 228659438 725026740 186927489 149005723 216970525 897953940 561322568 310401556 409708448 877875224 703947888 503326805 129558195 112611058 82026404 715513216 114357381 845577069 306726188 608943756 997653122 271201095 445502013 936318241 743387377 661258435 276262680 351022395 593641954 897218998 551643722 817560298 17899458 636863421 6928834 480797480 660322979 410872645 294299112 603023540 198953469 909682350 596606324 422764066 851965661 10876570 111446454 281118729 216842219 44790296 150569563 498647942 570941270 200935119 179300698 140981896 359493702 240501246 365664217 75288777 566554497 43264233 223932447 37840660 895415436 278691506 291518118 687885333 5202638 389842477 982816347 513832213 393532604 438902132 63382042 637474351 223227851 352804521 268059507 947290225 686976767 128902844 482684268 262540639 600737221 142191755 783743611 566230218 77613737 611364180 101417675 595321714 944782178 514774930 129202630 985847825 430758610 480564707 110786200 481380874 906879687 499313 287508706 923803431 625063559 776450158 74677030 90455123 419652815 60111287 888430857 821443460 425387468 197085943 544433056 769349552 819815972 821727044 931484765 94355998 154577988 700500422 653471974 918015652 795745413 77080981 969439254 436822575 74638140 102040863 682533663 263854839 289197987 208165267 72041424 427146550 313557403 473114886 949703409 146512281 233616274 610834278 836596261 307963342 728404705 228642893 376200966 12329579 404005249 110175950 142574700 295174423 535627422 289193317 995961188 606886997 669524621 996327656 737033094 432836173 194325170 741880191 334701149 88154791 524494725 867573977 207434701 233315578 280849061 519181429 137409813 435703198 951144805 108262151 898583724 783509618 607707173 509734375 308208265 997299627 422885112 51776090 846488150 742799062 424169546 264480328 278953957 158898966 923764506 767254740 773212851 402094640 836648484 663053704 577363214 943316522 641201795 288612677 497641022 351546297 958545631 77688930 51698092 328838854 860327626 851419902 260819435 461149966 899893487 989371335 552221641 129075351 193671042 799414429 731026615 320995961 960253824 730176475 175505857 154707589 906931653 886083622 423185535 644750337 337232164 542777063 765541088 59256145 281866747 745533383 148508373 912322734 932746097 905848622 273500760 82221728 867608959 146308465 210097969 779775951 588807948 448666101 840176962 240096450 652915415 829890009 112113263 935776699 130815669 230779143 493678247 919486563 981212854 666540930 953451567 521603587 145050706 157706722 773450681 487457910 166741565 476271589 628481686 870984510 415753006 300709573 292444341 794081724 872755569 440043061 966242002 798986629 754320546 269729637 880187534 570026607 371709169 985065361 720534628 218298774 84895906 473030492 806727468 92937156 851373409 978529901 459934142 352711609 228979603 805167613 912802157 495662412 804889758 184938329 459294016 337295557 442138640 529431661 523345956 806695526 52632176 383515691 276460399 920118365 659856377 287743323 190249653 426380992 153640630 815592492 296291289 262754549 800799801 24980769 961090868 275865757 783246375 188401327 840050074 421670631 679357900 462244077 608238047 240596378 43586205 409796368 87962226 774041955 77058942 852496869 283672222 674914644 431792258 836868874 345156210 758339180 98886747 990046340 357114175 812718011 33190300 794374525 434960208 171082506 746351357 505039854 138378117 989266300 440953695 430165489 180999275 76236852 375228241 942433030 522704644 189137322 996641532 231879546 919743488 509786774 850680698 5014640 799038866 2250722 849344206 976055402 465398198 255799246 321266987 251558497 499956460 641590737 128471590 333843589 704558366 955328238 384125076 906245205 73842495 415988323 809918720 769257951 709487637 205717814 200902548 118208585 887613361 555892862 17481379 770917996 872027288 878215274 567988998 602525045 26629656 457575182 862152199 15373989 514517789 21917335 414450905 239678734 614446720 68232471 689567739 413763419 293631407 975530477 885578865 716817945 174223735 702927312 700450969 638011189 189034898 64628763 685408060 524693794 382882057 714941572 712553002 693422168 431626570 655891039 235769214 827129418 467130508 725808274 135296584 272708993 911032169 394338829 818345506 65017604 749657551 84616392 843793045 332308186 783282224 28539569 34685543 95880865 128430027 880010542 744848337 372734094 243294754 644671983 552364269 38838860 389223369 266308396 68945358 884792333 136546054 586646488 484145909 221363438 175015183 733309988 108075532 831675606 659338887 637580983 368527137 75188983 672450503 330788679 261481179 556304861 979100226 925727515 582580528 606075945 563724555 400601666 533628422 368992001 948561699 790767351 315562272 491658135 332047454 877122950 698798785 358159369 407914933 320217496 927661642 863803546 755195 963543148 216239542 829279653 510503486 771237201 469079557 539715243 582624989 534600999 437856628 223183633 343529161 875254995 266893676 14636029 263830831 664813378 381805566 137912805 964564605 702009284 799586802 975509882 38027290 419334537 424753436 237777753 506647845 424135822 711612074 343435608 522484547 681282448 143740682 159637687 775223865 857521749 662854399 78368125 745885925 674938204 805844101 764489500 331712855 207117056 836791419 711767347 275647178 567856464 179903573 752071586 479068741 171517984 506113472 751349519 148419751 109853555 666709927 424175596 227989850 100121584 31851798 409318161 806469211 718521728 403925412 692204634 812771357 632971138 849395361 134245087 656906150 853387298 876970405 799171946 747903147 436245824 985648735 565475177 225575842 587515688 141757903 86288207 828513510 669903123 955411364 25691535 909717424 694766223 171996063 430362072 266456850 345781045 370497429 805246735 688090959 82293712 323399375 269102297 308785679 348178279 502028743 680540003 853663356 474231256 450191311 834797067 474939580 78566582 672060177 218010900 366761490 617028726 26016031 455460446 496683542 792683801 75274833 156268301 89705978 235402560 590109691 934496140 609167609 890900146 347342899 145166551 897684977 398865526 637348423 80006444 179750569 508275466 766517106 777399452 356892287 644421777 402669032 97673840 912712594 588847988 741574442 990557864 181085753 383310277 733192283 646685135 39540868 905746157 376346098 239042486 642246516 723386887 606114261 527720494 475195008 315385741 418055977 387890813 801693712 630989459 753444872 206987958 34698538 944341822 41375276 11753801 669893463 370920160 579367658 782345986 855941127 749354956 34069841 465161065 85916197 716286184 290601168 633026223 915937055 117063621 353620271 578301926 656806104 329846361 603670947 138180817 734534951 820532011 228563819 187979845 552534963 371884382 256280266 412943502 545197378 102911507 704695676 949161906 631086073 525440965 108234178 405028041 474562239 773563223 334708511 336189464 702890178 653773606 216284051 202470292 269796491 75485851 433195624 820399492 805732988 890659038 895501818 569091671 195451372 105844056 437306447 880779523 338746413 778574484 925913646 206188169 225336003 846584846 18005830 275820672 927389740 390400133 317219739 77332145 833874066 595075947 909689777 314737249 86788185 904909123 308733854 98265091 2575031 10410899 640529270 939099175 335377893 371964822 747446760 875968400 832154770 815786178 443167756 547306100 427771494 13896074 508929950 779136727 171207892 335542994 151451276 226957117 621694677 202836151 399848177 420746329 668747667 922600166 49697214 154289435 784417115 353001725 74542254 819160404 340181027 610617428 139552536 782489099 21341186 159018219 202077860 666444778 441016779 950125069 810879610 242390917 411845714 635978000 683890834 942757421 792748051 841683837 905383642 643813391 789961059 639731144 703533696 480875729 988299831 441523528 711106573 379309116 305627528 623628747 775020547 402121003 715006760 963542646 136712048 117831560 328913477 641195295 293650386 119252964 615972538 430533343 535185612 651223128 412948406 24879786 923027483 266213195 313714482 187396529 280107402 209313576 19625658 220251116 243519958 614713738 857482697 762409908 883239917 587082969 378682725 967131543 838086237 870359717 382316691 775205106 727030589 854223184 340941043 369166613 87217895 192430207 725723464 97035192 131747502 921552472 478321895 965082317 916073170 147807782 884421071 780778995 755256075 26341457 575013929 264466421 156010089 934788694 226528875 563219436 786055316 819810009 479591524 675109727 12138975 671451515 729003191 419193751 644444692 958059294 998302484 492137827 618960734 392698966 535609100 453197397 733870516 331242431 112617991 179600590 479676129 331984122 670863091 283872832 283625611 747277949 567656080 100230236 999675977 659830814 916825312 737621490 142347620 87073348 920227589 821480655 497070146 984760919 58214615 291643126 389326892 424851017 469022881 898406758 897266919 174796991 357419542 499602238 401537248 646817248 813516305 773390430 108666350 677801134 872405280 937698092 826816725 550836184 895927399 808012947 791432273 467277115 646203570 906013248 79761897 928639601 515152639 887222548 393067878 130771035 137827863 463968664 635597449 984647153 376142199 732313964 766328611 213376128 739731916 163702479 846159347 93758120 692416998 379885799 951360665 426813311 935924651 308388612 904741643 65309092 929930121 354061870 234317533 983033109 431353736 597694326 208138259 148251212 949556434 214931425 845817411 830042561 806621233 804304726 470485900 129404963 208669060 114872951 967953173 633508643 518060943 761215652 728159865 310594472 135770313 129977118 758782763 258435136 245555246 16966627 873878625 726822686 961838395 543003775 899702883 339356728 101331631 458339037 80782933 308044840 277829608 572938975 713113473 660638574 580222997 358056274 139154148 51102985 238957488 757033886 805088235 643139477 910729903 223039274 971205955 441466289 452324777 664863071 544943887 747481236 5350614 201126777 269936806 475335667 403642389 746075236 721779893 638393310 123053733 785681848 107273007 44018121 292007675 744920262 214119336 691111607 977656943 801359710 371041634 489560124 643132972 235244205 348006806 467532723 79535657 828625333 833082746 565221460 121096376 240489451 483658425 926481464 291647905 430084446 649107630 239348070 556251614 218424083 260838799 339117796 340543980 606986021 958733762 949810612 129783983 886797509 291393063 702185984 640181232 654534527 479178626 215021592 324022895 114536285 405215309 771111155 148790469 244365642 84079167 345974951 750953382 198878999 361355556 262042134 242421028 195598801 368681423 166703202 883344626 897837086 91337688 456723654 336380240 979359857 689984373 217073659 996787429 833726185 949984508 733352050 12186524 901811452 534279424 484065103 395532910 777287249 132061694 731155428 171968599 704336140 564107939 664546875 737371689 68598288 317401889 779274919 112727461 218772596 88096374 924082627 84482741 43520163 14522418 556998503 776190828 279311173 9740772 695523057 751737691 295332076 782031420 391253461 108360414 225608933 588095697 625834045 593929772 716653703 663823141 213032647 936962414 364753540 568108909 226865605 261787393 47891735 979740272 46601904 538570804 355883053 470494813 791973058 639490119 648409307 481897858 263072357 297570100 79974186 47534367 859663833 744045936 329422182 482088184 869888419 880438485 741715586 677825386 517520954 367290604 485855687 72941250 113243772 569745357 381039174 301262241 323350527 809132411 647733969 906171577 938330356 454519151 890716103 9668990 9080648 323743686 353927097 2661757 358286391 552965069 600060450 590034658 271763899 38373743 168688999 9283053 991830643 527673321 353736548 971943780 142541130 98750030 840129405 254556415 938386122 146636810 561642826 242658037 932914534 194589927 113083221 10600984 392594607 578005617 351888477 400440164 6261857 359138468 870696464 717095477 231000014 648812067 339690963 534454630 322208319 700188345 757454916 799561822 906071242 256418124 480755239 644891821 133520892 303132973 172335333 428513018 349464345 419844503 154089889 893995495 132223372 603481850 449142380 562104656 555226486 887339824 61212416 853526025 977103304 387861194 155632335 498406042 493188179 314887807 481096457 150755712 48719323 745047266 516461137 354649514 530001621 757408200 131199958 147997926 724631418 829292559 697649708 936324826 993171587 495099761 882597639 495067123 205163156 395505749 58763398 471553512 688770676 494660351 694735128 816533422 158492708 792168929 664852114 855601151 434858879 401431884 564835205 473989313 579627548 340896082 362245509 783822004 591299585 939807216 130490555 895046174 629671440 144050876 480120683 520545206 170059655 612517967 926493931 831801407 185761521 432385745 856314483 867850301 583615094 89085616 394332754 738840940 213574195 167154593 884205263 643171033 648244527 60287717 553831039 606547370 619651885 943487901 341515699 685912155 862006762 758011133 193521606 58163220 251119479 988468981 292047633 31987995 581987833 851590381 387825840 954542997 902984604 945650713 815753734 288658284 768416006 716442253 837789312 146396856 805949592 891282520 111549987 208521774 672978986 981569307 77784639 538208541 746288007 434986833 408186081 75157670 401060889 804014710 341503714 304186335 630689786 219056660 621905609 685293568 534334620 202954590 449610858 663029301 601989546 580572056 447307323 107242296 392273528 702050444 532851872 75212564 237079131 410438374 537324758 476795933 601289137 973841152 471220556 267383131 984359530 662756986 667210862 105928957 756275683 97717628 191976508 989768152 613150228 154041224 427982995 256579335 359261225 24465797 67496697 403583008 749709138 559825322 411038279 359329622 297591615 94785215 59437040 394528823 399191243 38777848 304064724 710612582 691695376 78909599 550681500 142522880 813223789 143866810 275758878 46786782 177240531 370175101 53822045 66089907 481030651 882394018 502432252 364687167 671859922 509029622 636500903 651074990 322759138 249754953 855893391 386013920 529960586 550899535 84962474 758910396 750745212 265881149 690138217 151264114 622459741 34023834 533881178 529312252 73284169 675815269 419617785 777751722 527782393 298885227 657666800 71519773 75303060 67856277 208618686 749971557 679578389 174753907 163270251 706272638 790712015 299790897 436560915 682760953 429916762 29747908 306600348 657329563 933918769 260684188 425483465 65437491 395798449 742834770 620307036 949279843 60431495 458050360 618998092 945106614 48963430 342055402 372269207 215538119 863168643 414730217 900307782 539503105 157307850 86290046 929458657 788312938 159899820 212470900 995948210 6802806 239054010 827171188 365333114 839897789 880891516 975857805 137216761 940367414 13157347 871258384 824234012 166827157 757461249 461954874 178380507 807122360 765905719 51084539 722681119 897651823 903672731 366182928 659856744 472526366 126870111 896625102 667207428 894926480 572803137 48570694 583696303 833514946 640182150 536590334 253599248 301024516 521283873 28447471 331741611 718249404 600612011 504970239 216152027 50647963 443311949 848330714 213256557 330644842 100868084 685066505 415337043 390094329 419066601 72819865 777281093 96744828 330273303 429477356 27412640 742171760 868833129 675044937 623958120 724722288 34952722 530347039 425544187 771573286 521334296 837626698 90180524 924500598 169616671 840951951 479398633 752200367 976523505 136084360 847084490 633806221 315230374 572509079 475087056 720569934 351764379 407545700 967705291 166455165 733439587 414521235 471960482 339984452 544291137 730948428 120032145 935021158 412923521 472058133 984976047 908769343 859264627 912647009 830363891 903213188 228325419 733440651 541862746 170138917 534153877 762326784 583399895 922723320 23035905 718519518 947353351 542240455 283066790 221009315 266733521 637812753 152093071 829521404 326884353 649534760 702185781 625118327 368516315 351439103 609648345 239211390 283862854 143470032 927612270 899010542 488297761 344063074 152910452 495165457 61240269 302626176 962476860 984493087 57314314 847699888 367879447 258941102 512298228 239850237 827173525 618512677 150665232 763404874 396009485 175873420 274076767 496468759 364515933 524008156 902788554 896736818 663966522 755458830 478594931 60572330 786992548 56197408 717419997 773546044 162109583 857403545 420621569 253173292 343472291 521537943 88359513 438891656 478219218 175198105 562577062 890764153 3197843 685165340 234287738 157579312 706490179 832564817 995647477 291111631 45156329 928561796 213017413 183589288 217165084 835069875 849032798 36529168 503898354 417350870 549104040 964903244 572416039 441635421 85103000 56208185 406204308 685399213 319465906 127157705 245297575 612045422 766521277 774985190 414468541 292411749 658547440 286233064 741335995 250056604 930321113 963599072 590457739 232829265 56489427 436921627 670806830 275670978 147234184 334804609 927956743 84930142 333439746 166255507 615445004 192343988 959254817 77350574 850521309 697855564 35498006 545312714 471062504 449299482 996574521 561971565 452865816 526748498 962591834 167116640 286978764 610007660 933922582 887215223 821973543 285835835 664629119 523867746 771853074 55738087 206273166 705368291 623338531 71533328 884404320 698948665 846741273 552146750 92074696 650043594 772513021 877719447 498250447 722364409 758228536 847169490 703862367 789340764 58499254 123265067 920886426 418984833 863605968 777305600 796449934 882904460 831927653 99866573 767088896 978687668 816619306 681357832 61462328 873979404 898142165 37661067 51035963 592178535 64513718 13822684 895972539 178759169 287468157 869271427 203192117 47593591 530952544 382291406 24468472 168963669 767282374 312641025 856885430 490788155 313486390 941848173 183917961 921031585 811291556 365782697 819829627 755772133 127531495 305941964 514996406 872662241 165487955 972298518 187893767 658738215 515728314 324050738 110340034 835715254 713988986 608663171 337345482 349252775 982797204 375427674 172038744 107695686 582328454 637360548 978198633 935700219 109038450 209699129 212457462 635359559 177150913 114193349 515360420 877204610 293816454 754879635 236837348 561685699 528825227 16845557 699312091 526896048 822248832 588946799 720441622 791153745 352073845 15137078 744622791 730829343 15861098 179203565 156021448 99393476 854185172 213161110 245452633 632808712 183035038 354880936 748167625 766754133 857256998 609297132 590491491 215877368 283469501 152455190 60458268 329861858 724934499 457083428 177053227 485439278 463891580 953939967 94418396 491556782 171547878 683246228 463174722 54742304 955994588 684078385 263926400 923588217 934902829 984469633 757395230 822300768 639678413 172707241 711314978 881699102 833112105 755174177 698239706 556272671 416019557 236079207 143451704 604299546 408732799 197567335 870061189 435806285 167288393 268372693 897538118 233980308 872578368 721502782 366282108 931690261 115499790 440260014 334382586 80652606 367984817 287922768 942665633 678301819 757946642 358776742 771930882 642040828 447553727 963290822 94863345 470501706 914330509 748540121 57010559 442986469 80651061 571123148 6172411 480479519 885539817 745393678 221989825 66578193 240976720 843188511 967329977 569514381 379241166 944383120 105135347 660005278 294506897 37098218 524233582 13104292 116491262 557874221 781055477 127694822 668857288 207444198 475407912 985494835 732949104 596390709 27646972 504999121 459966052 243518905 685474891 188609404 931474587 130780459 468044216 423390549 892608218 771215794 711426871 101165843 751064965 426379993 322093499 75301740 59953866 997254612 476219540 538489846 406646017 894009262 824640578 757296178 587115385 148621926 139170101 302446068 151455866 264301996 240522682 493057469 891235332 633611267 836102138 380935406 853540356 424655350 577726305 689921382 511457802 932522624 2401669 31729157 895758740 175711283 893769312 971257788 875951831 651496225 200203994 343049498 923096010 838090494 519742985 569909604 619085997 539498306 512160215 850775593 226315861 607261659 55366397 89790422 180238571 165227967 152194543 862965144 54802356 710018444 17776806 566582904 771091389 332192860 133930014 831171216 595698925 96742407 19375129 181604065 848199056 765289082 829972261 177345273 74741880 564798872 356573796 770293868 612311230 157750616 584687885 71871980 643735300 290630181 179226750 174770562 858021616 128616506 692052912 484611585 224224257 993236943 936144587 999151753 41348077 329112225 523675444 638346584 924213806 503491143 462828159 824482223 580539314 161577050 901073998 398567544 794246902 573933732 972110975 881992453 50343826 784219460 319605041 466909591 856702502 116006149 204568049 838995847 521851241 460927894 532891580 761013282 346099118 83355382 988899062 849258369 841841259 875620041 118530555 439102133 825663968 406907611 107547641 537513968 311203013 277050407 598150259 559990876 638646727 974973997 407916918 50275816 238826412 594607920 173409143 960617428 519331524 275490116 388205966 553480662 696556850 151592501 428389360 793852188 151050721 919992200 23852881 85536398 82467744 957214781 466261483 218442736 472987468 60201140 33242851 304176345 957402041 248650577 67858565 503975985 883950547 808581068 638598734 125244858 808965804 723521116 697553088 156900728 668381398 1625975 882140009 574056633 581422528 395607481 133953676 972005571 650106851 305712042 928976628 977131781 226598052 17736501 959327394 506586296 171107483 42225966 86021299 367208849 623369394 875291768 303256775 950924630 671799099 37882427 501445270 869307732 655038623 835352244 665298061 526449088 403224708 584318398 49114483 48037156 512840032 461440767 20405666 250453007 435662598 652333199 459044381 742117402 654864691 671471612 215448664 258691103 468943 977600113 708601880 316631860 646976699 814882382 212307727 891921468 43374961 807789613 420472441 958996926 850138041 234550191 969678402 332549988 929337909 192651211 911318944 908102604 293954293 637350138 29689391 116354408 125828740 117497471 976703246 793366840 997152720 444841884 808136232 604298141 217579217 736462935 750772243 647656086 735025514 223727230 637033781 962553068 102178210 91878074 595250123 940829159 843889284 110715510 701186383 347928144 864561880 894319035 541875362 981191092 700206208 72854103 701977206 586541591 187736295 680190821 460050180 749596884 54590336 565313889 792094319 490942951 773037457 53312769 766614638 140239751 749196098 938087785 322984060 323332340 648643496 62587886 370221001 859166567 327461079 533857898 924735335 345965570 361239317 866584944 35254548 13719157 408596195 712142396 713660084 784029056 909103543 822121093 625888185 928286411 745487974 381051049 801517753 703528811 42464712 676751939 971562499 541493426 981124641 777634034 111726107 999089410 115361146 767816342 336989658 493358484 887101176 4013262 236479559 923134572 210868420 453011677 317557463 627333866 823897493 309939245 122409019 360793030 297465974 17289048 819053750 564126757 262243795 773875848 103360798 530170976 764341362 413098512 261417740 706192265 685197277 976079091 115818439 273334150 125943772 902412730 180098747 85287078 894905281 796128771 710451280 693389693 413685540 769047080 58985811 315633473 648014783 976648119 706832575 887033196 169816950 320050063 521908643 892292289 794059374 141150671 581284005 249734202 208028257 975846512 656043830 484290445 661746904 666010252 262509344 320272843 553932024 443213374 121677111 639805926 968257144 609367291 107883312 38556066 815592840 373493188 955349456 552603162 654494143 131959873 656494974 88194390 791750524 592833435 770833595 754455503 1405023 77276496 27919339 494246309 98701295 371263545 826853446 749407467 17827568 149132176 248736998 912457706 546951152 149016202 620674938 189496180 738154946 609625919 929877532 456456534 714055449 278987808 957982504 370822994 626426633 938653637 629116295 849919572 224655209 476822483 347463340 247171750 420480239 42884628 721171809 22936911 692254074 839465240 633190421 863209547 574708942 414095618 146386070 66926298 534900752 834395364 667700350 525784127 164618144 87391564 335453221 854875302 286101807 512069523 483269040 507664467 963926394 943395695 840274057 438379680 363939659 476513635 683039926 437620877 376974633 444727876 578858026 714745631 480252262 934468102 158035679 534220856 798930014 887848841 974516194 141891473 492342960 985196470 836573348 100814701 988546656 888876980 974469441 888658792 88757668 520281201 405844058 571018724 308461369 432160426 101506557 268064317 450275999 98531610 71962338 236132053 538090399 899596930 511355364 134311523 257924725 583293819 128876004 45508842 666807063 940906562 532325941 654311478 796986622 725067536 781878343 694267235 528658035 760881253 376556708 166372449 893234922 589376301 214637285 34391197 809164024 17834944 663053581 162742591 823712676 979905417 491265182 201757005 965805765 616455740 361369917 772409328 521775311 486342382 186181547 938888246 162628395 270687078 381644808 838515541 237483565 18338978 630879792 610530624 234583615 761256259 249895517 545082579 680753106 885650844 15263230 314727104 38769682 858068788 931547494 213106947 571452568 360342450 510719048 400445397 88158646 278813908 722781735 639121673 680552018 550722537 119607063 76903206 515421418 738590247 20306437 45731728 773504242 365602044 572087373 527935875 677666468 661853049 367778742 366172967 782005616 721605742 186128307 172027310 106425059 942116635 621827623 151476472 81918153 844740618 335468901 353040544 164162415 652412477 622594143 8887547 959977748 414307867 427953863 635646120 544518161 359311696 721214171 244118175 376773377 226942785 977829389 550720999 976678187 437438205 198779588 41220705 374699220 240181383 394606758 717864382 931237048 30834745 205581947 915710829 135587899 52697086 232939408 363672080 153623498 700277510 845480838 983235749 94690696 467087077 220061543 599505395 551228565 182418029 749615429 449694465 676843800 450611963 402676123 575569479 325627631 136710566 383301419 774737275 739303135 304616575 721953116 636982679 611885744 188184484 933244903 304933351 598084136 734241221 221597235 640601870 601963188 694946637 33233519 92356362 977900097 518209997 113861095 572487156 840593614 128134415 63990562 210169980 297623522 686605665 722000691 549949751 706372713 579660888 643931547 683753460 592230038 150542177 500434823 779483583 572247595 73774116 333105739 968370968 130931615 515132232 664157459 44107637 245831211 360817927 538517217 810710030 136150980 603876285 770155565 947271725 965626338 811546056 491195444 797329607 294491577 287265961 466991361 919002376 338532933 379432513 428188547 446270713 428222425 125343904 29717747 479501303 830626764 821753743 249565375 798635216 148224407 640899634 524618584 662974381 571790018 4126375 264006355 624090255 287508394 145952241 503998755 577269617 828753151 67160743 97348054 739512795 459328009 340975052 844181272 450681530 114479552 292134989 369899031 840585361 559673330 989595538 173261576 103472442 624987315 334295903 165754884 378637960 964390433 398419770 960402233 514815821 600933338 698800907 389581308 526816419 627120587 313654294 468908039 800666585 356788744 586496290 233534550 629050338 918669017 216109829 138316937 921099392 990588538 136552076 323424608 509901194 320390224 972475723 278634842 964550541 316597494 943111275 902315201 790940965 621279335 197570918 11664201 602502971 978267361 699335060 92196394 139657421 42303715 503044894 582369258 416412463 725670807 273221997 25164336 546873283 836137190 535528250 64869570 395914243 449245772 856316015 373901373 413113089 499543311 147841211 950732649 912968980 75996837 862418428 361608182 292689402 711181337 530009690 335666994 115000601 365379085 969445135 108594107 389803126 300732773 316276732 621087521 679557924 335879296 18480675 268923153 417934735 613802577 223970432 526765923 233676738 332874514 90611410 762916438 317825978 436587344 482515019 266449047 817119492 116128851 281190027 317790805 473661000 386895747 354497762 805937732 575088299 972353136 332737423 628106688 653970930 657392057 778716132 713734817 302707972 503597047 661463449 345570764 641094486 70398949 525475200 13007709 316063300 698801622 932860588 570241208 448262874 228385968 478446233 467921916 540978430 539648497 226649366 90043229 290701918 476402629 649309618 78050147 985662097 201411547 54426258 507203052 212055453 255657014 538671145 967065688 316202671 526902770 958985179 413463826 771666139 149320416 270817928 970796715 299604745 785826780 107213637 55048454 486339577 647653461 300409908 187582742 61806922 117261294 470841929 255103505 825770039 528424005 442594288 986648372 945832171 418669759 323468105 479174938 425911230 526882476 727825721 226202008 702816236 269026581 538740569 381371519 370452360 219760046 848701897 205535780 834528320 675556437 952188129 13218400 56978912 389038521 218895803 433789086 444734500 205067612 826147537 837016992 483743012 108999969 561547479 568236422 570910746 434215672 170108345 24249732 769874914 297063068 2409779 657173209 974563356 31160884 405787317 224520845 694462584 218726122 792182968 128955656 856554323 925234906 950217298 330335084 267443700 318576145 365988794 197493084 398595814 405182344 345700981 233691956 902787077 193935776 714503434 554478847 234593172 350178141 763907653 523857967 388552645 470203215 698493960 469239259 737396120 324166174 347521319 538578700 681747187 879008948 337261651 395841429 601637162 518288107 355948472 633416314 747676681 392679044 213168550 623663259 984979660 524854351 583927594 583588571 959197562 291558074 797369398 426386042 879544216 166104375 725213752 864674536 964795686 49193309 614249362 657015426 656199564 622627279 584146 289884855 532452064 760153188 579553125 351545907 262819292 389226426 556298049 571334558 805450143 885914362 830673929 701757859 57297497 675139150 84748760 203515656 785161836 821820783 522480660 97627640 59755838 85614224 321144968 408854372 79253642 132271413 857386995 733742602 14920639 991201057 131150119 300544328 527898399 699735180 525189605 736859875 589024558 393217725 252020007 230247315 795666922 516970059 705468716 865874082 515526950 333999974 931580083 724101656 89590028 930848620 636780269 126272310 622801902 655199293 778429111 415257132 492324287 486204966 623268019 110718985 45799909 233846307 211189097 691205643 237607045 596729830 978173412 685828020 172538059 576930347 456850901 589256434 701433096 731710595 13347200 434359498 589898588 2406409 979014211 561618789 695536962 879973452 534099981 773234841 365306968 656713672 928494065 259638814 242661953 392546651 964553922 496865721 858968504 202796300 602283999 118832744 110847358 807575452 584525773 921457723 559305374 277052811 387478383 569783966 474785749 665302546 433180435 481653137 771436870 848396591 119950235 553345526 790770786 783119182 305571162 150261657 78227480 16255319 718840743 224711053 30859248 818012078 209139051 168563573 805618497 119897586 256877129 582284345 489762576 923125193 486057269 276630222 639302901 377303759 485928655 821911740 605775679 533698752 62136625 977679391 751559679 110484564 330766231 405700463 161059451 947259253 860438805 84586290 174236821 925842260 657161027 529015870 388735354 57112250 286310967 269928569 452086760 897408389 535658350 411785913 151178278 159644541 394056647 780650863 352147870 22280548 352741018 461930064 659839811 823961325 439706885 61539558 426041871 269309369 22110893 705282058 283261973 952814121 798646867 957796449 12099127 92671051 851038156 40217108 218067026 832941128 422137472 367111610 227906443 601999745 378799581 128049007 852170734 184442061 671556234 222838833 213282378 599026390 948509093 604728314 545635237 366828914 30706989 524495768 875982018 146912535 845550227 750161610 682412402 856897405 977551288 547347400 755901795 558040838 664951863 907678550 627722198 332218281 571554892 586043149 525240170 7819336 410690444 867090306 715514908 90457593 17373043 428837082 871536314 532178635 468463516 813473729 663867998 210027938 136073186 54092839 22981649 711378260 679886654 48284130 974720482 440141399 651501235 557834619 60435381 175951672 605128209 102255261 907769581 556242997 741671101 83963478 511574381 754646784 318759057 901854796 420797396 731387750 825464978 369711738 119055355 456125804 777755456 635924685 115353333 542313868 75338489 66143251 259609780 802987932 543472669 222963170 432384583 763630173 80846339 833561330 142819328 423176714 230245316 114250585 989749485 625370853 508063013 258136367 119572192 871326554 725917472 369252913 806298406 384563546 238646249 521019038 961131600 991232386 690576864 909358242 28346350 332422052 634753868 676189547 120838317 391219265 636085300 786617171 57357900 677458669 95569554 410295602 529890414 358888907 294738129 126585309 369238494 664241544 322709965 591709809 31326691 504586143 869835894 45996674 218863436 661028396 994787266 546820870 924692287 355926914 303343327 362331764 264388640 540301628 90102819 38691013 239604168 550019068 772729582 257921708 736479688 252937457 398341418 936341942 472583700 68953932 701528186 583529098 29307781 384389278 568369713 998929029 499019844 166301443 20241787 385611345 314820965 544573350 578734852 221407425 266128326 906687643 784927257 909665909 64041736 71585394 900239890 860318363 182748918 815790414 713616707 764052333 822886673 681774255 686445367 423030101 675057329 995603562 252167098 21666096 445755948 366810765 864629944 151159051 597418287 168733212 670382477 913171141 990471210 986235542 588629847 871105432 585825906 753881554 496113700 869535119 527150741 396295040 86498434 920243959 325041266 108438385 674376319 723927129 827015708 944387615 830303347 925267405 137525685 677168473 322076598 713571594 822470942 823536000 774522535 888424606 836812723 449222409 271587877 737568081 198566096 159693670 499341950 919080938 127126235 734359646 174809032 709683186 992091697 595230325 872288040 605944471 54388702 995156517 879509819 176773421 339279725 611522240 623851809 863930828 767634061 39279275 647689308 805934937 681393556 766579351 601898523 743191685 71006537 972331242 189673354 718281780 748241402 701602929 472934567 893745732 263065151 904726961 328699432 442249740 343674882 284437119 778996173 686982838 350850584 155457617 126085172 653227393 195205608 105595723 231373418 859026535 766419831 166226309 678289937 659215876 902934041 372510872 365151146 479153513 956026487 867414310 998185251 402603060 534542068 626603723 311642568 196712008 434679041 739964310 582001984 760708693 553209903 654150548 469870173 291090659 948288436 352781629 898807819 923412481 905208165 343043736 51399421 71519864 274709363 567862854 620417223 208399320 513062319 71016822 584441997 965233870 942271745 609178756 301925047 748441545 26631191 273196045 748966845 77845301 216424989 87014758 840748209 520431717 260999941 762051562 94483817 424813893 416240017 129687343 83336719 819786423 768005416 388064321 89232318 592279095 451897419 346799828 666249246 336129885 661920545 545966168 846815182 687557829 632463963 238350514 956985295 514176402 909101012 114834577 503692404 736973419 499239562 199757618 611091188 987211077 965960258 493835795 801090927 854209283 497395949 544829047 882508421 5283118 577832387 249691501 849705536 760703381 162599240 557576457 971530410 854474793 988187764 947716723 58349241 135081835 592235296 360740083 220390029 125463090 403274544 901199489 355514498 184975424 702993858 244125448 47387642 222774125 705885942 219446451 34762107 894963174 865934726 419981552 908173674 983862869 293418100 737659067 147974354 728917448 986834214 446373866 350884162 570796864 781228024 437051307 628635667 382059919 798828167 215908253 14505373 738374626 845166695 882368702 897052265 357362605 948045475 20637080 864914609 970565799 136610857 206997253 334887400 140858976 365760752 837530184 166825622 239353508 667711819 516069233 385808452 652645469 923395975 855803171 717971599 694171614 326520824 982085781 51338823 848422388 548186396 128662098 36217635 741779329 273117439 245411034 116084504 34315397 578501683 832585002 570000754 845195772 30725814 481558959 763552908 72795260 243563008 596054955 339378700 869744617 459034116 428516858 155431757 92756083 347449750 147516656 552017355 897003216 545041678 66797264 698821906 854640172 656953234 201028954 179563116 883030633 908583220 829098116 200682134 509750848 310391783 701374315 445575037 399140998 959678756 890694721 33418474 49944511 547872775 117758994 674812189 132269506 213894012 9666249 581077198 670335538 867329229 965589552 93730800 748882741 704657457 42556306 259979248 791398207 442622769 898880179 498730132 235201556 49614833 202449937 564283491 91807617 512994223 657997567 915087070 613156239 553530818 653938491 956255865 557864386 308529805 518913299 124565512 301543674 228210173 821550149 259324040 866265099 2694148 866097366 751213708 34499497 955275351 325057169 554178952 959415365 766708137 334877784 500763381 337836872 477013329 751783929 56869813 714177111 473189525 373695861 646292568 924775786 876036819 458110043 491525024 948032819 474361933 436026390 810554963 628568601 720950801 334102718 584805067 273500971 291870789 615499812 108627725 957667249 230698708 433719195 588278119 773069258 64317842 254841160 373581450 989863414 904038312 696229438 346499803 260044920 147163264 610153440 128235046 947484762 903332085 122950332 258384226 681321177 935323240 844671834 413412965 881157811 952402750 64427008 225122386 608212901 478189405 561269004 39357745 813181891 232749912 410811172 136805852 313742494 112353360 856106640 504060307 295614854 375356632 361922484 452794271 880817538 178819798 416142810 713036944 729381377 8508967 134964850 156821827 625513753 220231776 439536949 846983768 822220296 334130595 935609727 689435578 55341639 67591328 678262429 311789601 162649750 920246014 721503989 707796446 43444013 957107306 5994620 667852435 640174394 478320514 139334183 520347522 819414411 802101291 207383841 207353767 632032327 613110728 741402465 194963090 783238242 943820154 920846839 846478774 219189398 597944836 941143181 667918182 332498006 591177576 736465352 870173223 566118778 745344675 841680451 659782195 370800765 454294711 691596706 460594841 219827013 741224006 26571326 10145772 55475970 710387403 570475397 329917890 89544598 711355 935144000 475041632 115910625 404656344 276810808 292198650 952935409 114382319 310312887 616826664 805495881 264991232 534986588 599057940 576357802 469576345 923165877 665320172 735950087 93522862 527911540 738113153 417469384 604671670 669916924 432078283 527710815 120970678 379915834 934611013 769320378 516052849 169666219 5032768 636243027 449408600 467363925 457010889 578053811 676256987 739109144 754781757 403696951 304163074 516599586 867396219 48016035 531850682 79706331 553314092 117471144 38064001 640012505 14400601 242040987 770576199 401135280 879776278 173716320 225228154 109049759 446767155 354181973 862860346 429220079 3568975 223942487 627096627 337404986 512450862 188836104 32565775 395551023 872819124 962046977 273734827 195552577 463307132 197748795 177218349 312348764 427071330 94846863 942845039 533498079 196537885 967701058 950589463 6562761 215063780 201035148 565862267 255402189 967149552 92721163 380470311 206934634 699016213 363932749 994639523 334655360 360343090 686271653 246463291 88680592 121295589 285497935 633133817 573683524 615824732 11888125 385427211 266212545 965454213 631910139 702949468 870861291 940943725 239472513 539414186 59489072 18607227 982164529 743121726 993901234 881180936 193648374 36433864 473287140 68216805 275501163 279146572 796418595 422226660 943297575 253320774 10805164 901278196 459898694 25795029 946929477 303059493 1840438 177049369 165340089 962684480 196328604 695239450 76417908 161436567 94961306 282206239 461663556 417327405 968404519 996066919 738609489 763689422 659230238 262460024 664543193 683117158 85120833 734518769 429414728 583957494 224084822 722788559 201498740 326700143 75074918 900496654 497905414 837895630 510999908 872212789 979843878 807312347 965926412 170508105 489616056 234008636 711619560 852383900 230825716 438627527 749410635 619412184 852837255 174177541 708441897 282736250 16405432 482559845 158500266 476838887 642927533 70364676 266719252 497122898 664727083 32263941 96520265 728165539 312494462 629042237 398906793 47498732 958403357 966647224 214618733 127146252 447940993 282600119 994166296 493099647 468579236 638003262 67633552 533324439 623375541 961717334 84075712 284553414 306366467 600699490 532786145 503810502 825614398 709645082 840645111 389698777 370345774 953800087 76816464 323623243 869165377 55137233 779199082 346752835 748108458 870927185 302474891 447464109 230991504 240603625 403922006 589077784 833554563 938490157 722377997 529315901 95028333 869922508 89472468 642136258 874111628 528344506 759826405 113508667 263717280 761099637 647022982 235675184 387725548 275791657 909840494 910018194 804880581 897908927 503996018 711280191 680323958 189697231 427612403 797093284 111845780 486671131 408646965 835450469 158579469 985812083 736408423 146864756 364040284 672232945 668755651 327951758 970745283 901447171 17240374 900112544 585817577 676225869 364786352 471635236 409502863 623354179 436266860 715761305 942483480 84868972 964978064 21788635 558215151 368391768 579403521 323775838 699033847 573719913 970816542 961913595 120167618 455374398 644677931 609167879 388015512 331934381 949881861 672879658 485374482 373445526 170302845 365469991 518164225 405009297 224468561 762566194 420724726 430663557 405593797 23114124 432847355 558263926 189049185 227987317 674998823 427913967 524158567 345389730 375925139 540646431 778686179 436209323 524742615 155362971 638661809 81445277 288826433 233545341 53161314 183110073 170893622 225479492 282519464 106912899 651614774 939861572 171558854 729934463 966608237 154217298 106250549 910469570 764455870 629528634 710587483 595452480 476830802 38998661 937698104 345617582 176590137 460286440 626108450 427335125 361037993 614130824 864756018 659020911 517072775 861081016 730244813 475186330 550129782 230215078 304243865 785708656 641443550 787605289 245338904 138764454 343173427 496542843 611359914 547516748 219511500 871598408 797261435 50325782 130374249 88702343 92452357 863557384 547464810 532972070 772205872 530597960 282080622 852474761 844040017 890613206 52660601 834819524 785909825 86532863 148258808 458979554 758389157 253658983 897065527 982933430 919938497 408831016 987967724 279406031 31914418 476997086 337588294 434236404 39384269 568633148 371346028 564352854 306277933 291170066 592455999 379940903 149220243 264740393 13392651 562448839 909427603 358161801 821610469 794272222 511393990 639193465 592212373 85120529 295529854 141651557 680653266 256471054 987434859 598408626 543811075 546095148 986577758 876593276 855067399 10289774 339773627 151879375 314211248 343748841 660293597 757135690 37072728 198693110 740448935 218586385 13293687 858661179 443036304 134938001 459990575 749609582 387999615 924748414 255911610 19472877 490517535 456364343 414366299 499401309 744032168 226502485 614965637 910260295 126861862 701788367 939650916 772984796 625249054 709007703 82067038 338207904 884831989 32548368 904909532 24733591 354276795 301934563 860651459 839931157 427236885 898983259 512892889 896059593 237212873 342673295 911994489 483654267 345378219 125346511 291318870 336908829 808262071 704817600 451687431 669598137 552840614 634845853 360436596 807602278 462435500 78686931 168157750 132677904 338991753 528152436 657495065 904460459 743818894 243198687 703681680 858956165 691029170 856543973 553737706 624877922 450558392 807456758 936991327 329692880 454066931 535783097 658952490 255046076 928474471 517696757 604070660 335717002 745038034 709853702 197552462 666491725 557446237 1142263 761873442 987801796 14442320 998407548 841275331 854348119 465142269 92490549 605304253 128764429 408345585 537486974 275587082 104831156 958162523 317204300 261797664 888788094 907598229 503423981 87647488 789074549 829868929 208237247 793973717 566318233 69549029 738662136 61357405 927969527 119537650 60587 422365440 986325589 503553139 442347160 73901691 664688588 790518281 989892042 742920461 506969485 29722098 613268809 520566642 796438940 252275305 42623217 318934419 415521594 951386816 957931911 185868811 930101403 457526113 336198293 18993833 300392045 218978454 905073182 50154695 213728947 920469739 542991355 537571010 714069523 236703402 106692883 95379672 847365854 432924700 862850604 889774734 239616807 431757954 722608707 7938483 833072847 111156764 426757881 737597127 765407513 756511179 858104593 363713399 313357140 452860176 312829545 535955540 833313547 534221564 551059361 193349636 336406744 299276748 956994293 458322649 580394911 937288315 322586473 798652709 996727326 557910225 801393990 733859360 57455329 325423083 924078922 445322524 552610135 229414707 127217435 29922463 115058500 1005880 885365731 870977445 424705920 725997105 991236399 677878746 404396374 29282184 261797373 245900490 695331167 979457399 433557066 5084479 236735835 739402017 417536416 884238559 119572668 134521778 313876875 522781181 652044771 15104181 561259866 437176591 93047748 394826888 212016399 86032825 276242632 283435273 683061384 867090047 715292040 340442407 199449740 4841453 459466292 842840915 236390025 963548552 661133754 372305091 53320715 177412029 38110599 782298040 882355018 694297734 764901248 356614668 321028682 475234604 761860099 98474303 980310247 218401494 760930936 983902466 654485518 739420577 540548775 611237280 834114587 556844251 796681377 215807697 559057049 305773364 42895902 140061930 115907278 406504227 810836800 801687441 692988284 335038410 976052286 908991750 352656903 454303603 252279256 450633662 442535165 847338419 577237147 91216781 385988908 23833043 255863482 608733771 171845553 397747738 977494057 886518816 968002097 374049052 873685117 258142372 217083747 140064679 75625013 981945831 621516057 635013250 533445051 413137583 555458655 70281888 208136937 255341483 286180212 908208406 30839476 597656442 888424898 709548538 777796696 248231403 686639612 394012407 299930259 790015122 206399596 487283825 320586474 53544412 526809865 718909027 23819979 372524143 875518529 760295336 778324611 944339833 14434918 589456079 705831394 799609759 548685986 260925590 838690415 651296427 570986410 243006425 615214608 382421548 888454157 179712364 977440420 606914528 934912306 465259671 17771362 233695884 921987567 45818827 987117193 775520438 484587756 403938570 899210179 60895461 690812264 966673456 217329344 483905746 653142004 646592655 159904573 546439738 919690078 764584991 542081113 986831877 820061357 468531295 421310030 521351317 205977613 314595651 173632471 370231980 26500753 84614782 216787095 287036785 564425454 78258213 560333451 660521901 642459087 652526123 252838838 881153351 964074492 183350597 695769824 782313969 986127347 834805494 578373533 828375296 829006949 457426666 701812555 725313955 180271158 750737041 279106691 696883399 667643787 494661802 200966392 500123194 436934694 115371336 384896006 665568587 837870705 442788618 349792466 279157033 724555018 842651721 839176657 821472801 170115410 320665029 223684218 608658819 724744519 682624423 943013172 148045245 953916161 421960400 971591966 732976143 559437709 681198715 197168617 973091291 7016110 312516056 518266817 262907259 573295975 391673251 861755402 329924321 841269644 270310540 441183913 288498288 492349298 724775896 666843624 610026980 642274657 6905300 48455481 675668354 819985589 907269612 906275261 559978799 466237369 186526656 741133255 200174429 237389131 676658944 643754847 70863019 775006620 193027536 404829033 972536192 368471751 631924255 632660438 172903461 706942836 23846594 408372978 226541718 149053576 477732467 42825623 884622171 74550700 178341714 89908065 616464968 849325591 782850443 767380473 720008253 281118261 54367020 707567974 537365990 140111012 805269291 168610962 588474187 877817712 736233148 244319694 934177078 970930257 451531045 441455650 955900431 89421453 22523957 39694746 505091399 942404747 152605310 367652021 405216070 147446390 320298988 471290089 131460694 67798187 824679446 455322157 264154604 207516210 199797898 952891910 624303502 33085713 721095514 263747593 77804946 338835070 831470282 541035864 901570269 317149838 609001093 953520876 928768575 532547595 725624483 637322471 862383881 334125944 93219842 315147804 87313664 331322708 242725007 89983119 455548494 628130572 812625389 196795642 211354571 440307416 195370899 588571377 88976528 478235004 995923718 538563189 399796842 541063066 43309378 488678527 974596505 908864113 148403132 571485379 776931872 362033411 587528693 173769502 674990155 474428099 684213257 295984665 960858626 112112096 935250775 646944522 232631558 357492395 932485481 318233741 646085618 601494256 434207964 188433161 909394308 772111480 581540611 362251885 365225511 359469152 592504663 765180205 427542880 26456987 554108186 933112848 543171269 802706167 777329700 614842181 23367000 349561016 814814977 379831005 153469197 913068800 393987272 723895624 231963414 522454561 852836471 460963172 112803019 419604650 589627779 690055903 449381878 973521675 12056707 55139993 179941071 313464050 69372620 258113966 432957603 361161316 487821060 42495133 263432082 843217117 94587355 498800088 321156276 465862835 552259495 269325166 675216771 746203959 570208946 635578762 632369853 59775982 50625801 19994591 727596588 88537102 91111540 26553194 130059547 91308352 991996479 778595349 506190435 638816705 518183793 83728976 836241655 473975314 227032657 918958633 181058872 40606250 48353705 111883968 156375644 597420894 795298564 487925498 781722969 599520609 340982303 920202833 596463110 308444562 521274642 658239459 197474314 98973399 14150908 347389320 989894516 198889071 256475838 909522356 964207437 192881194 388298554 241415841 165139477 300830543 436153215 610147088 248300452 72940287 511435203 187803961 23010184 299520910 736452239 679870372 197936728 680282986 480199829 712418276 100787261 96808585 42873283 996100278 982114897 825647615 321037988 921473396 200444274 928727454 376211719 98422882 344158407 145937118 482460616 314006767 717312302 812692282 440988572 317287596 788166707 760874269 686258715 229505727 130721134 402391592 826719178 925552290 829473087 846616735 146156429 600593028 404656822 565221059 21421983 288993632 315341068 354605163 728747938 221053611 712448104 906200875 410034896 927292683 31697868 2475670 116675887 857425954 707095290 570633329 585551496 701475360 560254792 109520965 459652546 686788915 210158437 218713281 123891519 682902202 467307202 659025579 511217092 665887990 192054385 955022310 828191464 159686034 214211182 41684577 579614665 840142180 954856043 803617965 976867950 263916729 456435823 347163575 825908996 271399985 221846081 228729489 669808084 997415693 174160278 534636481 573824572 407415584 507570037 102864486 29587516 447212430 731928519 483279467 780758300 729236105 613286297 169278893 665215882 733225132 142754820 296834018 972899102 997352372 346846983 161759615 315545774 335949213 842555683 483195592 549488301 70924899 680706949 763057404 322649141 656199715 635062317 67084949 338899840 283022074 983978699 202769108 454566674 117121785 634921706 976211924 78366584 142791075 790387044 63091175 706120015 593364742 977499553 946871031 513800593 592271364 991467229 416055131 674926973 654019203 823524115 392367155 420483606 750640714 123031472 270849306 776556316 358677525 59345715 884342597 863447621 614385137 997494596 589307196 387878306 944258036 601502919 683971904 785188318 790412076 169280309 446950146 195167302 959948564 14316509 510125104 602690234 626226352 148066160 361024427 749920053 296986776 401244671 360219021 330955157 331055521 834532136 861508110 70869601 23824038 427891696 755546396 140629333 981655927 726126604 185533877 738456828 225944545 100106294 765193870 529143986 74408445 972330832 988617857 96070283 730772438 183348112 146629964 933989729 539247516 812958790 383091356 418532626 213854823 198720588 682709545 379616409 301728987 804495763 208447973 676456167 428990864 740790829 126717739 301321639 805174554 639764276 107589857 774873665 787400294 381932536 55422586 228663508 922535981 983282691 838897529 993999802 3696088 112632767 3376319 531221388 228028121 720332588 100197484 637694244 267927774 65507447 924219825 974521725 798862014 778650007 412665762 405138952 381536843 409050825 490698213 689775499 757870523 806499405 104891058 163754899 200359255 758212827 143875616 989972420 982118950 463313012 766573072 186691211 372922728 197848300 451969844 128361026 131210353 417900476 939624955 396913323 690468280 345969936 151625256 913863026 532942103 799428775 259620100 644613377 771533312 915804205 54168308 429220760 963602044 842750729 215689455 486891232 963131061 502628673 39887768 812087791 824873568 66985633 762115626 547057970 788972144 110393228 238049381 217146659 720090113 438557405 86351455 450602859 499932101 236076255 495233621 275527074 856040035 593799556 960181617 691384030 445223621 517007279 965243738 715600746 746116290 768896149 834196476 203443332 162471829 685761857 71934894 144046254 452252716 54925240 336228490 646228955 979296275 21208578 196529744 807881657 666458478 694212745 245847201 713018733 890965820 363134866 920871133 39284358 760134256 733073101 34608906 872681612 140708104 299075657 495546331 790477015 756544875 351473356 453475478 409295321 381543805 37887834 206362491 351455418 105803139 762999405 162245299 99413804 572844552 106329704 451175274 537145353 286919984 908363713 666688655 249953278 255406665 91434826 778586207 422149871 516221508 701656224 909623225 302470154 45818515 370997767 817370385 421000812 479734873 240795617 606350619 640175651 288455228 553297371 682699050 316607031 644337830 812410188 691047611 543024416 328955239 281155423 80384111 741163317 822585821 198351128 367049142 426777857 609095979 49463869 203896574 375424854 12544242 317395293 718108006 760974717 406339603 964215347 597917519 302026021 237367982 966108776 635772113 795807542 486553285 601644724 914892415 203424590 842878352 437216725 179571915 736526724 460608294 964497347 882373429 732420980 721827270 910830831 990241923 284717960 144659637 953245250 789681543 618142463 310390925 548878900 207528275 484011151 852386730 770253803 404941216 278605676 668020413 410324592 44312098 533490114 324732914 21375790 433738429 65043306 298387270 388333531 2871591 179993680 165171886 755069524 680872864 612204311 941649806 141571180 830877013 724827283 831317392 119700655 464908710 883161308 55732153 225139947 540993869 424775965 891254708 398152936 167778500 38415028 577284714 954886049 446872667 949372894 738313701 524528930 340733096 442262941 172318455 946009048 393563406 714111979 733997933 882617346 359599044 305206798 821701276 938148271 997810729 749104248 499125723 399420748 876126800 135538240 389999659 697650645 974703970 736943325 83116024 375251937 320264594 300823724 754316730 336535047 571722557 927123231 305782048 163310931 401289421 757040087 690395835 90399912 542528617 306206817 742097786 259603934 854560532 538483174 110484445 349033286 591597098 755628706 105197112 579740729 986604600 680187124 654394400 400356582 307897626 259844063 296045379 588350683 58763241 457760327 425680044 953176234 756134548 664112968 267157061 404386374 235849352 629628839 114039963 809356456 841590458 418405771 664150169 153309376 210037690 609885214 242648547 497714717 428665949 61018174 533194112 858671642 15770695 49280226 743185601 84619001 811211619 963748762 556084986 493093836 817311440 574949206 586337823 769746270 945127535 903517400 396180542 601540815 421988615 534602236 619461997 124007361 205479826 728572161 428522409 339164671 500675189 4036881 468100449 308448847 449696902 498053796 12962416 819668345 285012884 615359244 697919221 759680166 598391258 636193526 30355669 648083507 5140877 800129706 303883183 732347696 846871099 334620478 758478857 756300081 219345120 302404681 628446517 624028153 248149942 320102694 231576898 19712269 548507227 48222260 552739519 85374659 73147398 58935945 654615520 277595088 510851855 465996164 184809681 883680443 391114 116547681 528752460 60160837 672292065 677236348 329241665 253687751 324112345 354246543 309211543 26294924 503225736 992860714 626060492 214973305 700376697 776590258 811692082 858821404 851394017 329887966 339646227 967223906 616467382 331786973 663153660 932214163 831615553 287924984 351748691 895906217 250020626 333173220 398215253 25968191 415026292 837310483 460899407 445176779 401605875 559900877 709723555 340420796 217326366 741635624 634816735 553845565 83630653 324817021 115054196 80852974 736989436 998376046 626350579 156595892 474922469 444243774 660535986 238171711 962318426 16325077 585544808 327621766 700536006 965981420 447947397 64023607 997422637 713083574 218979954 959173053 189293518 255056147 91868442 687704712 543317839 702577786 361867130 227894192 21985169 278701719 399741347 582111820 806184253 277503844 18861162 507771917 121277465 248459869 752282212 390002464 938731914 330589041 594212097 289143279 333512032 390177200 186838297 614276559 947935945 116878967 92250693 667745996 406839376 329009452 208115764 183104791 288392355 902305670 2647475 946181143 168942445 44244313 975326943 399173877 238903767 142786950 969635403 240688108 617261277 416584730 983929076 306419751 941819674 186985050 443530966 827826772 329282173 922687664 845175869 562062529 154025241 711381719 41269753 808355247 335446518 333933861 458608990 811496992 403450124 44395960 232295030 763052326 978379514 595028658 456166726 779798709 947963536 444199973 858719829 902905715 335655208 416657970 365935382 91243566 240530353 405907947 400645111 175480629 386148842 477830212 514880292 813471276 273295919 231463629 87773680 212733351 760504733 732073980 885124150 566263754 42726479 122495197 647074533 946665323 779477372 542728958 314329885 513938646 834033163 18002345 945812907 767862766 339675000 341015154 395617278 686706705 916674318 637552933 511352221 932704012 206325818 448525378 289904713 51432935 651481496 576679859 899140331 820897116 584910367 527403820 249036457 671670867 111881541 261243019 160157203 711945807 347017843 317724867 912071680 748341798 573050425 76135677 762490746 533755082 473469293 617726603 760432096 721736880 885523782 511722386 8449550 214403763 106668521 835870670 765886284 60122573 530298375 361315192 160120008 595641098 628240646 657033977 306369771 986771036 855293325 181174407 497278407 344219646 459227087 447638009 209450573 672999853 792023309 342583464 990548875 168893151 762792179 915982101 842092639 120177688 697687471 709102476 697759812 947373324 368275815 853713670 425558894 377873088 317364775 869922739 451993985 312068728 257404727 482832202 562117316 601622346 66298811 28296313 916846318 376146606 138106233 726498791 152045335 901047153 546581780 624083489 420974050 351404349 118690585 886744993 896135019 715506013 178804391 983750685 702218568 304294212 228332678 990997896 656887776 646071468 391034333 785204954 390934996 293281411 413619737 116966034 94283516 920762260 401912316 229738527 475491577 757590194 1472270 534667873 13674320 693259342 120983683 705246992 990116497 935298086 145344928 619546279 960057019 545019339 415097403 716932889 492191639 400232050 451003902 663707918 414667352 185164628 901880191 474852599 599907366 795999221 202255805 863629240 784018985 688191709 706904947 928622683 43137280 733760172 280173425 155079024 796454012 918543164 927602099 230622531 329461397 655010773 781867698 326169211 195417966 846081675 24768074 722410428 686993057 881014362 181962080 957068144 123478293 627226016 27056214 488231362 169824535 802429526 706202861 516290279 864685522 148251978 881349123 488600466 922484050 716564122 632050407 385945440 624618649 351420964 145450967 201102854 361869115 125194509 298235605 668426830 750506741 938732548 537691160 38554036 821611348 259097691 520741817 191770929 19984998 736973834 952919269 482329459 810526240 631637449 528321791 508248825 650816997 266241799 176070988 865737302 48900554 482498155 421718965 621625171 173643536 696897388 930655189 666326245 392695778 863312199 775180723 376344340 393902503 879528330 277132510 1060590 498853987 861307623 43824919 506705421 923147439 826891612 345625301 35360000 819382965 668653631 334586037 655569032 382162017 259588806 211180569 322615432 814203074 991471976 66376289 539169132 656595211 842583585 607611820 611999944 728566750 44468988 131799445 296090859 887959441 84888707 652762133 44858066 589535372 376329177 996234887 138668980 705777997 752582021 422563704 784427092 210592740 268234798 647705886 513689776 394049818 99590391 205455025 531183084 688376160 15149692 195907020 227332400 429741662 276306807 943156533 580872814 266679244 240233025 883535990 398897270 608658988 492472506 383246198 31518487 856401611 301195922 215115920 665614204 342715421 379821020 57161219 361327703 30461082 466825543 410842264 902460146 851456474 32412529 610949842 678526224 954107912 439638351 726056951 600921427 347225239 140469160 258988985 172779521 618436199 521466742 240617987 675788217 696192720 447352604 868043987 936542138 242074376 224782411 85484363 492308053 561589004 419217268 788437742 712177095 690615012 259592696 652130399 243847513 926039349 666394154 255364914 861291383 345917706 497030452 430541815 641228019 293164727 28453494 47434502 156371959 126175671 208012496 482116337 76361587 448310712 745464873 111841466 624346814 176501688 267987364 941659670 625703273 469987311 83693535 222696443 582580987 69430333 309290894 309662500 150038561 152116234 657708742 477464379 639106613 164814040 75189593 443752708 173887413 485962865 611900724 57806741 55348542 767554464 464622867 433402393 134952901 794418314 223518922 706517758 347640419 391251009 116209211 699220438 716192991 744970570 465985910 902051611 247098842 195590276 429897020 568791761 321822621 17339612 22577312 931012794 606517639 575030293 707681064 161802121 915666839 828248218 780513062 75779954 399889326 255668406 189368846 162334606 577086821 960180834 861328137 961155085 788586222 262064496 85203371 882958918 940638188 434810984 688087121 600212375 903619486 650692610 375352022 162981557 882629849 860102977 190008208 246025711 806611306 984038257 653449426 928457724 515923407 586759894 653094322 435542117 911598286 160981574 268705187 845701347 488748905 543048930 179902570 320004117 683414917 677303837 61497057 477880698 528827846 824284006 263359003 401835238 996455737 679734247 245087802 884175228 148897487 672173131 80554 769921501 12551268 357184161 635852890 252755612 340692565 134427503 133352129 317331385 884596376 988576717 609155595 380649769 856900840 364259842 879487990 209647347 401445969 902149470 324981256 596167703 617551748 78452701 7851807 921315444 442715202 409190494 134800125 80535304 483071451 306261752 858858562 949726789 794408201 312652643 151518868 304024958 618455518 238116706 185702981 227776878 597479710 933063205 724533732 551819017 39428640 683788783 297842294 465563338 738270895 553319286 585295282 550175491 237542641 272635311 376408325 21885637 498561026 431254789 189274376 682343259 1136743 4198930 810938134 689597832 296260807 901676310 631765681 372713220 839600084 527996179 803301757 518146901 354044763 820499289 964245618 661945976 122733262 460491186 859767969 825405502 888431579 143952032 451654467 22936418 128277837 478344978 373633626 586165850 20614021 675815607 251691650 52202029 8597828 925989664 487624831 119545659 177754613 886425831 610096343 85397918 23431087 653425192 749597457 854199712 394853618 381098678 812926906 18521014 895434987 426029581 130491152 835173686 947669320 180564282 228418993 219012067 269609792 388944640 579322366 526718449 990198415 376759435 528272204 15960011 855436602 987437414 381871041 144928099 508938108 289587690 173002245 912978707 401525015 7253209 841164106 531594307 796989041 28069893 21339224 194400854 47704479 531953565 818589425 507932188 985924194 980981680 112846927 517614065 687558764 646092791 808911877 334914995 930828920 19691022 804548745 761567453 500015496 173598954 850968176 814879891 797544240 8716780 170148198 311475822 172418543 402001286 969229021 626363867 964126603 131881833 387369247 824046673 393243096 157677278 526212719 187888631 390450352 327704965 39343994 354109772 731734870 86214591 796155392 956662621 736564829 528849575 325915284 69671164 991789615 125025279 616736210 603226192 595295585 476282348 756402915 216446701 896480123 227032218 774774168 30112740 312658659 694180657 822704527 31786545 800081805 811542379 271673857 113314927 981417025 124038378 24344327 806828368 889762428 809631650 969216700 521057055 494274403 999262784 885648181 61140133 914768446 844059750 314496623 80753529 797448813 656358773 540695742 181829534 375430420 177744732 837322387 656892285 280081224 129511753 792146503 717523127 798690204 731302855 855183776 560529401 808422210 512474416 437017256 338321876 867455880 43822981 90888082 509451189 401600302 324942700 933054060 57394097 120402719 494760391 294311298 330257670 815985476 635328717 802822726 939847593 828530668 414193119 862961714 637744906 396898689 186151618 180563276 917350420 78197085 677749972 491486839 618886012 756480010 600948811 174098001 680922356 894014346 334172864 698436710 22592143 772221640 250731414 57952979 257642720 155341653 869829357 696429097 785667244 302238269 424341998 262007034 637591568 489056675 723439374 494518500 625201772 50648085 174906377 798009231 581363131 793231074 200408544 407356971 551736493 581218046 986441512 961095542 870560269 936583809 854865698 574378973 490227620 203727335 625048143 920718030 786417154 713099496 147994587 329735937 225838259 276088039 459272779 940417826 324894827 662542023 591967383 283241073 805078203 300362952 731064180 288994048 222318187 939206980 428526773 16332381 254439126 967743780 394344310 5844883 995971532 790860297 218418211 349673011 789165558 420031869 889011786 227649617 410809668 786852325 802203000 494829876 742000637 1862212 415016552 17830824 388512621 372754411 288867209 282400659 961747281 450660228 266335349 666349051 945653558 357608331 375392616 920419459 326898808 933345291 142009794 877746236 290528579 666346787 719086042 435171149 582364081 433190990 360606287 340179227 274451444 785791962 211401424 452140383 392751440 487946180 227823214 850703302 744679618 629469874 677374310 762834964 817674640 758853416 664100828 181259801 715419775 79453141 627144647 52085617 786618667 176166126 883955641 394015976 190237858 321206038 839538406 657407375 49592798 888683796 329109086 389954832 820223608 33730716 690130199 658569955 599652868 39388166 784511015 857872739 462895932 385960854 808037479 434659658 130642973 489857577 27747155 350371517 827237146 700344451 577540992 900566021 707272321 100034331 637782178 75886087 174344563 382566110 917978239 643695192 840048690 451579171 407342173 208890833 644573016 618854077 416944223 363673291 851736632 322925528 476910729 715175905 721148288 244672259 309937302 868794777 313264441 695626093 356689837 422306603 767329570 776539735 11611103 277453882 2726887 283802775 581754374 707811708 544786869 544615154 85158535 135579923 587281010 301610481 260823683 782778468 168607161 984437946 195303618 837955979 276790120 319967523 521241775 755458008 541588275 145611101 925624075 140524762 886899790 562395964 282436919 897438122 454651257 31994868 531035287 144686761 540952725 684716961 427903484 893659661 373694790 807585688 427223725 243087135 505881555 940790769 680357654 301924155 681778314 807748393 652100630 784703766 838502486 463425744 174085627 145538067 51962081 789967209 600142959 887304074 469594521 134032318 125110559 671775674 313410389 430101794 391228326 943995718 891051086 628877246 837373117 654608192 775155628 970973799 340512230 890210254 443634272 484280532 348367177 984579903 276782703 154897885 28288807 371326508 815002779 131702290 666767294 490963754 594467681 694534685 468363062 301006280 562187061 430668513 581698714 399511451 814777905 893419106 579336023 179193738 552104032 411428476 552353773 599638191 428504451 418531448 227168077 410431079 764458833 409447649 230449028 76867229 106590838 238684349 663636160 176567479 263560959 567417228 657923756 775195692 819370373 323519331 662532051 339259820 180167490 269420899 332236990 238265913 946320426 262263605 747589390 309468675 124095564 520213667 716515016 433608377 447039372 521786990 450359428 532189947 498095734 777249445 309602322 486352586 438522181 471152553 2577628 870405413 28512396 724462850 431788387 373639907 874621339 292253493 142549032 861808656 107538789 121347408 584371715 974876053 256265427 4952244 101754177 941976715 231517351 176165269 499053051 314119296 245423353 58254213 78169965 362526866 846551511 455373491 245155718 194325157 976553865 481916508 723032451 289466913 174111155 651155438 694503398 588765689 411502700 616507609 962453936 770315289 452597290 76427553 702865571 36810402 335638693 850628710 372991747 711724230 230258924 182828053 468044067 139400880 686980550 410276150 244168666 796695972 635851784 104850471 36354891 751592869 635615898 561833113 544161044 299030995 376095657 971147556 699420680 218971605 124573022 343362742 95186254 501001751 655854643 259245491 838486335 426556288 830011317 388295621 102996819 882735468 56946715 615212015 951618521 109995862 224232743 878516964 218692868 330156182 7582324 293223103 770223152 620980697 132454405 990821980 334467471 433115056 526445431 577348314 586309622 781186123 104150485 848600735 640766093 785743194 435798419 702913758 999655951 675754903 525976558 242960671 583227586 721001886 357422518 97520847 963910860 354792262 554843723 96160222 994305673 182775270 745749216 530186836 735678104 865623945 268796111 773653283 404911793 449668960 606228374 582169896 359631811 570663568 296661991 108898704 527401678 501336823 822676676 792909782 130447878 552159620 979964478 416707397 405079033 67000804 951341817 420784733 447134924 808015480 353822901 103651394 782852745 500395412 293773800 90446115 664994246 291321744 56619487 985084529 897880123 648329409 109120239 988592261 309634258 94607025 750986233 257289153 191852494 566295513 533418705 55158933 874198579 570117138 33345134 478675650 850865830 232625555 70073588 296865550 140888678 83498541 911192592 500590382 573302781 552368676 556934534 716999875 60565506 625788409 266470250 297973923 336031403 335552581 769995033 352542793 907961426 93785728 831858155 393922740 752347310 122312532 890299038 54941979 782831176 395195179 942051982 161340084 730782825 443041230 128607518 805914038 45286954 426245273 480173565 203610954 641508858 771885259 36780084 80959196 670790586 254778755 540582576 358967794 982092494 914315032 885011242 628512227 484163146 881533785 684573923 31150130 208704097 998261157 34837921 928215750 388937627 557635799 66857970 785651400 563191042 439392121 253562589 259289691 402547201 448824170 30528293 263841259 305446620 298374315 624524298 497269554 826105473 575026253 712270036 659032311 627897338 708520507 482866230 127542922 720705967 363544946 159687274 938149231 559757363 749276438 545416702 91001172 579175127 669664330 153692413 712376289 52888080 562739307 491434771 809683576 167638359 872679236 620197530 868579676 424263162 988501920 889330644 686505562 420424285 434693333 289838501 891687953 863943485 194271152 303971370 735963498 711648149 845318525 47933244 898647152 714906070 547554613 791811720 836610896 23464750 242944005 318080763 105273403 933177722 716126431 98507198 871337375 851312029 512686095 583482901 659124066 631499399 497906727 170216688 5556564 183961620 884652577 490519668 281765285 6169731 630112021 464180557 171819735 501530924 210187360 930307492 695772286 376915389 635441975 191243797 184186076 13752800 774462784 277937319 623429649 392319481 426814306 379985838 90715562 628889012 458814284 572072174 945920822 665853064 982159799 913528305 872926479 937050465 780846955 987688251 431867663 692090073 119452452 791065073 862435469 415700101 833797226 813597068 6764470 464155371 59069867 464013036 38142087 737099376 189536750 982843643 24521957 469740881 136003833 428875773 637254025 227322002 265544442 77670437 508138376 110628651 983025855 112140632 519416722 399438869 7615105 650033031 92113538 734539163 667466741 581268863 335494091 994477693 879729442 983463982 104972217 447165322 620079764 970160493 169990951 583473722 487545397 508356883 740642272 624384883 201198848 450767002 691393548 566704432 374303358 174340774 277565719 211603814 784250809 589473318 316400733 620442734 555865987 452689208 699329375 770377503 97699226 356214152 953104104 699466001 886409184 370171837 152349815 324896014 394528839 300582161 702949945 184326501 492585510 67906688 995023467 29697843 935805384 613390699 932597868 445844609 994674925 918207252 250030856 102539406 234841864 840956945 25669363 100708705 390489384 963500230 832173734 904023700 275601331 765117755 783516698 497512514 220115687 581326070 660278338 835719747 150292454 978907512 166538658 680999685 910124174 711605358 475400018 569661851 372240063 960719058 331505903 880871957 705940712 267009472 423700128 173682261 351664148 144843221 766213182 184465073 983943039 135236729 90709560 135182283 675872668 317465795 708896835 72688301 576780631 178123594 171111780 822112896 897791847 807462666 496322098 688038948 318556632 29736941 205813360 945748267 615825535 754194105 918074015 724464781 512014656 262873151 1615942 379066880 430103692 76817334 448763503 974530181 973640167 304665349 147809466 610289608 536923756 80890133 425163582 243570432 336171150 677359161 188443680 217975838 866739386 546979626 518465609 995237876 91722348 766640468 639499307 112659881 153404018 923908396 591443637 206136651 452817729 613817969 984042362 782587058 728465000 516577705 897864181 994368026 319498293 338701811 447729676 120850286 807173858 943064774 226639758 922585539 694306040 650378806 713012338 334472061 619132406 641782556 212744411 416254254 658256084 271137654 25018881 763807779 627563749 903618461 275696974 203735656 957713755 258871467 33959961 820659727 782433133 931190496 694062198 580635235 526930012 917123133 831910573 161328388 241618057 483793325 100370801 198403857 84476780 661604385 144232372 395032293 364046157 576776300 956103919 491981940 757817527 264795917 519939599 954428415 468402416 123814474 530360431 758545509 94357949 30798339 277277462 809320842 81480445 232922366 117656498 511447383 121794076 741420945 829002708 243886632 831210657 845449088 106290113 468067175 541226997 211667314 363357970 950646712 685798816 397011444 396265713 790114345 284324452 988609116 518465847 751369933 958608241 632155852 326613982 411433895 555938877 74063164 391284823 321858486 673080879 952354732 584473319 891169298 754571273 15911914 761950450 382476845 628230287 351146912 239215766 42675047 618182632 225809470 967273836 331781748 343256399 214159311 675506546 939643329 12983506 945066738 669052536 478357804 536133363 448158002 266753543 585604337 295841530 783068688 902724032 248617993 479771548 172781198 489505761 445866135 153325413 103598236 447193259 666295244 47970543 589750876 73192623 59161488 815055735 751925603 449056369 111672232 269569330 457877191 446723199 860072554 923066551 145882289 776564185 594584979 657449879 790049854 534661978 528959232 672095546 224139360 47740646 605146437 623326719 282598933 41907852 306965050 436684791 21918563 469614419 333056531 369195531 50007203 167736501 207294100 390452595 347078920 162539862 993471423 257896050 820628204 695616018 630700155 707865707 435456515 109635931 836267610 333279389 187906344 27171008 372142126 757716083 171935398 829476883 744799442 450933977 968862018 220280597 283882376 229253197 687033979 330302017 183421055 690469947 152176955 762147170 221962773 9653969 381502225 297059791 741449412 874381944 664741077 262643220 629356868 266891626 908724664 30395676 391180341 775900126 322610101 521660351 687646141 927460127 396725596 606366756 702348207 905259776 913221767 837874648 661574978 380123107 872377978 575304457 324830257 760761893 988531143 441227744 519823492 407665292 696270370 69746964 492680126 439708085 673209186 931024203 319577041 796222016 893559732 541378286 202319046 709528301 573071641 447976706 998376368 918139321 521362825 407375978 128127943 773468645 954101859 642934100 453101645 544481048 517552675 19149708 496171917 54266102 978738155 205731433 312725017 186204223 523016306 621015346 25994473 214417240 764570066 886316346 47944781 776924181 300290915 769083293 329647704 465999405 395765642 467786355 891156376 948842782 239332192 378871978 14640724 935268088 226719414 30127212 357761769 375531188 616941547 863473440 306968477 547291566 178855326 279651474 783342433 647489987 362841701 54935127 645947695 929164620 950971203 623442102 969609950 378928237 726174935 175206815 380872279 696609363 123956479 290389094 556172038 907667956 170977873 584730893 287310108 351128392 675372648 902724148 63434229 782504473 50154409 389780032 102259100 47898598 407221145 69756304 411087827 660646235 786453305 830483171 421033026 880840029 581562430 582540773 82973837 963596693 352425137 686219257 122898772 869254597 788465558 970826154 447585429 652871260 822611406 763332152 647867138 186376129 486506075 966123646 355163994 892540288 180220843 649485984 377157705 32552403 793040570 276270500 376292691 840617464 619277684 165982853 130138715 143189313 351447813 130221000 837662217 282830682 325822827 229009269 322785093 964690355 843986100 432253198 804246173 955523488 213802498 680341376 56315709 954835670 904866262 226107961 253754340 237202223 658658037 492263406 576388598 760637490 925647506 946303113 497620557 22858758 373245493 498859906 37525985 408328131 851030015 298963211 780073487 118651085 357019671 645825409 773189168 79348152 843653176 663173188 196532671 520614619 29388048 835688650 626616178 608331193 691488412 356464691 14418569 632667356 35664497 493936326 955437538 707745586 763813097 146748771 489760675 753725843 392124936 99670609 736318750 93682832 326494034 426073968 129885164 309961262 935887685 665518029 434732323 853521557 462953790 353132264 596142644 345228733 146121553 71195503 675813310 483005241 430015795 617323706 948281870 97957393 615324527 169677295 406234123 177290142 161820642 654064450 693927728 567431864 667163701 584311616 307834278 169982371 546974780 889175523 680687373 448095340 134026479 994171406 333962183 867005459 44872621 550918834 49857090 495912646 231919616 941167034 343196136 310527680 974933751 96440151 269498789 116112122 822955759 616797017 225922537 802575976 727734090 123679741 259234413 88475998 537948629 889101885 852181944 231733484 417739985 627989374 758829187 738099017 129699871 948001284 244390446 23501474 441747733 837817016 66196996 556392586 493886485 420347393 824095822 678302812 246974932 563668512 494385104 222752792 742590194 755439002 41224573 915163420 643577563 518473356 128271497 5574592 680676984 533401328 879231065 552859583 352324525 150168197 820190021 850566275 396573473 23807237 736807827 536188391 44798588 666177712 610768804 829728391 605489265 35828693 79382143 552210651 340989494 781714601 805122950 853005447 803540916 72257953 660409949 498120497 174212702 946821578 81115188 56122649 425276888 915550160 718184761 555752699 377728218 371048204 593368846 668104620 860218847 509314696 141492735 638796626 450236475 141649911 488990245 930828568 488107219 448723942 384140687 639428528 750467203 677072270 308897377 73541501 826884744 561993618 671958855 524290980 130759866 439214632 986663523 657273688 569822932 997369861 645735840 207879419 9076871 706655459 725691703 333642733 635364516 380669337 699666725 358819951 689614503 528245322 639014276 972559891 835140023 238699420 905209454 631799303 389498231 77717529 379164357 676116589 919916149 471341576 377343677 132777710 774794309 515407117 949394518 839396617 548495278 32342951 829793803 691805791 151264580 267352853 176773944 576240823 124486020 468602218 56126237 938686128 614132675 198077637 694978639 169285464 390723327 409654300 169282393 569235728 279157066 317782375 646302103 444043957 795483328 252424168 561853892 452291935 237142064 525516809 619181567 629525185 762203218 905604325 663186448 480213051 335559920 233234393 692212466 253141963 117041421 150277287 871819059 764052980 737641053 236224694 938376337 983073334 488105734 993227555 84803548 254048779 353799319 134300726 259166216 518619761 188944206 843155429 553300027 943838239 888083756 605710066 226074623 177815489 473287447 225856222 518066866 117674694 655189932 555291542 470844411 579317169 5074883 637714650 95729238 483376268 388142369 414467945 199715870 164722121 644958842 676208219 485887356 251392075 531703430 979136999 801042509 25764068 794418091 160689278 992918698 743812752 71730348 202948109 182910578 396760373 317572849 650642869 811079750 606685574 718218515 505020058 184063851 442400750 550693362 42149417 41252493 472365796 513824436 8993940 839871269 658591496 252984366 611932601 497100557 381417624 949697932 439966181 416608045 109979110 47385043 712857854 525195404 227558706 621983672 486552811 287808712 315435156 948758687 625516042 247566284 9520288 420753493 566972298 716364059 888810364 604749300 561034937 202792963 311880843 801456210 909141530 158726002 444018639 651067311 475080204 137728096 405959304 330300052 781333674 969298310 265600501 154947944 907168036 492382992 498376367 316357443 151968507 855300535 41151727 258379348 425751561 941646279 856739769 260597827 28745141 958579232 15561013 895897721 69385274 69632091 429964754 877213764 888198566 629311000 978330483 263628698 401984891 181182223 880082237 370409474 487219094 63070054 440459397 16257661 44824384 962854166 260027803 628508662 537628837 512617083 728819062 526737886 203512188 728928514 255887053 76473610 811315037 105825251 528488100 69058919 218359596 519341025 317838465 765047781 111580345 126112504 176833714 643011082 594693943 871450465 877741566 323457710 886232868 539254163 671239713 229248070 242148912 842893985 242458698 408206645 743088522 307879261 719127 982057185 200080583 163299819 842999301 763055971 244450 492483334 104619311 816665882 245748388 143252916 257584032 124993005 821028302 528732712 578890037 1271837 603691145 468551341 409408182 307707555 601426658 597403418 251148309 845729261 597572814 315356674 424871252 803018563 408729041 723813065 580267045 948226480 602399080 395697410 569390561 952289265 221014362 720874789 853504099 171197884 366148157 917420960 105604151 202711191 309263203 733348336 178122039 751605660 381197859 554090667 782073815 806535478 801949609 836174715 914334015 154364859 571715732 418007165 105225258 302693420 885744542 649000187 473947780 620402378 454437589 477785431 909655087 995488924 672786734 955077571 102727256 490758536 732588165 532707198 634538769 577229808 804883935 743660925 145890620 838041827 457313091 298321525 771700444 775089539 762350328 317397986 966688079 446011409 432747442 504630019 608391476 254803484 839186941 442551810 520227138 231568728 944832016 782265470 380278780 308998458 808611864 684195223 766979300 607941886 153021916 757000681 688766808 303859479 736583348 502014696 303078483 23590827 678285659 746819843 287026335 343706829 355962047 546919856 214701315 271286513 170986697 865282095 861403257 653810161 996557122 477408673 558535054 600780073 787991482 866713821 836257181 314320811 841681135 373762076 417616548 419556581 482442230 986211166 400395537 970036479 535182545 844713800 389640610 692701311 61000641 971303411 658554897 596849716 597625993 609626276 235772356 723552511 747649098 176033890 373995945 917200513 639552833 723745457 67466432 877424636 791955866 199392433 273253452 228749663 165787746 856073374 453818105 873792130 793940415 148801185 194574573 757234724 280513420 379527418 520418003 797430616 672379747 250861747 169612562 772601614 546077578 924162502 30869154 2716849 727903182 607727268 234243219 432257467 602792821 946627988 503544137 922495596 730817866 192889821 932407554 592559346 730810337 373569664 220453061 657747455 179380798 140094019 162873445 246744740 522071810 41539666 45662805 875686015 904722170 685125601 344275431 847210102 168038353 257169816 268399641 662738774 815127984 390227700 699560981 624316541 580715408 128532202 808422604 757335548 837681351 713361608 50671565 673972587 676587449 347134571 790611693 827748263 178822839 195066710 541973686 10466043 298036988 978090418 390600011 694410628 46415335 607271007 473657630 155360899 587480896 85010030 844096906 934788733 105219551 750098411 60243855 64173967 438955945 925222970 320093564 399913285 263643139 899482782 856902597 896111015 398129569 748373999 787447147 878152264 899007519 790493615 414197944 335619470 603462696 623610688 139758364 174775673 613160493 593764517 818197381 165910428 763401109 852053165 712296178 41282256 346304549 610775823 216242034 127323580 253206180 937005775 225220348 886207692 799130173 766361573 721856811 199046409 326598189 601657200 668695163 16704243 236074743 754562274 522535893 399263697 323547977 436056015 832854894 265130782 693459185 938414302 74918882 916412713 899571222 957741031 387979401 426168197 385584878 216073712 608819388 139217009 636790639 463129148 942690607 662623264 871852559 488727844 356004042 288909725 428784078 950949819 179465300 116910715 413356098 838965240 88430478 544970856 299652924 264640303 662494496 181847847 413155657 503136271 746774286 980047502 813828150 975206142 101103367 551507970 226072591 182463976 606288983 915934653 493622473 873032253 883753475 231553666 555234479 498609752 897228253 333980993 358081787 841655858 930291069 155111845 74342250 941282565 878173007 376474019 729097499 298016490 323422889 157214638 979505172 80131967 444302867 977196094 626005431 562524964 789953335 363401374 139646426 563226458 992417186 486839913 91580821 870772199 62141185 523459335 32630734 329865555 499871512 634457501 224683692 803568154 61789590 977668939 606897501 48351899 275574393 21239834 180933087 819560615 610422354 708095011 582226781 255939100 598615856 453990891 146193851 85919421 176579250 863043023 730762172 995728958 464277611 25843665 360560446 730990234 518231989 303745499 812480690 858326123 767549438 236760424 892396095 530566406 561200446 482306787 805668135 271984518 636844304 331342712 794078684 183226307 546405160 622147044 701695990 766475171 586638190 289491877 540441297 704390173 352103617 107718161 711299152 760696666 598527927 663679716 885674306 735752978 6776607 543103712 507997769 63098645 379065494 289364741 51788397 599501303 989992074 428188142 483765774 982296619 370719060 244224009 685619460 285387905 257810895 20745794 889002610 322180978 51288118 391541883 459757885 833324932 851957472 602159812 76348909 783279742 206755742 619921269 578498911 771198419 797970249 837575998 629824583 229716123 135873508 514688022 287543097 756350368 650064714 466681329 278300124 36731153 687602300 740426456 973310466 421729044 656606069 292623039 315714827 615970417 661189347 591826249 831234583 946009235 945417914 537595390 843129341 590999070 499898014 553750927 11390814 840454888 296984058 526706928 229156818 488162655 481916846 925401885 845206992 320103743 585905028 774942718 373242649 975458055 778436404 687426644 747459983 546377988 310918111 451290041 194090543 864750131 172690836 844621467 707631642 110891694 33005529 22496116 101210799 591571806 822890219 340929980 658542024 492889394 919949376 68679735 122141970 930509238 97400644 56115333 11489271 165275731 951075881 546312502 257921594 581491749 337320458 642960041 354877285 327840644 839751012 271958004 123422181 609725326 209758281 375433684 574063373 386036993 681599745 40195375 794026577 371581743 438976434 891534880 220273651 294621281 747556954 407951396 855144133 689104104 538752959 557091050 600685143 710044294 867213600 39559798 696506484 924958763 620047279 539904851 72630081 717614787 172253085 905981806 53166207 597470798 133369738 480001676 573951527 23315230 881175679 961843889 140188541 910987893 234586157 692822318 781855930 531687634 293332771 706883426 269508915 836568846 996558296 644985760 288706913 246227283 550415698 933550043 909497785 574026450 609361431 99338812 55245157 691149407 99166587 885637036 260629428 586354359 375113104 737107039 835351552 648677586 877922213 202403970 573966080 664866105 117655190 902093461 979027295 436076141 544091394 623186769 20074964 886676517 453433985 627020350 897054630 211702470 170321647 713199165 545062387 914951849 738043040 330092943 657292684 603361441 235763942 237810820 364126583 139514166 124996130 961808307 766299757 944578538 127232670 403051040 504954144 971388905 762140736 443202047 462479538 797103402 705893988 892331705 912405647 60168836 74118861 745461737 206262535 62076917 389085519 742336493 352758850 144064928 326735262 899260135 502288001 743971236 218925769 543386082 982708061 970135639 330460796 562383113 717486211 266387934 279446531 181542831 269373034 785242502 254776068 63589203 879480997 864341772 518666246 838547457 932932497 450984631 477864505 9671946 852694431 692211579 876853658 553404707 697303078 999364563 869762361 466260893 785585192 743440087 147140147 625021229 912505717 22881700 194612511 613846771 641906176 890575417 695459763 99204936 429035123 130173923 636800907 924125065 791876394 328627661 204955336 360100627 341702289 76093373 962253935 500926696 287538026 356568440 899370476 766988680 921579433 1312268 481103789 501117148 820573359 586137178 834000696 768115957 824323421 254569870 93362993 212477031 889562958 904619350 656925753 485407777 523149016 134758224 535838153 857118854 750785564 860900185 776330956 30973717 878143492 81252382 277132994 31139239 95180302 108312009 269858544 949850900 813534902 111878607 516411092 983424870 166455804 782906443 906718221 667880246 565753486 115385454 429631866 621700181 693554053 734841410 261212636 12203777 988675777 822512140 323598889 307176159 612357033 173154228 766588798 279469630 497307777 923973531 808252684 92258098 267397641 409764564 427051327 281514375 705192351 552146644 333696146 173186623 715851702 183559887 177367783 422355846 572861042 953501485 595058739 3895181 420240997 904077444 338107993 144842809 488574511 69076574 968499846 891247729 416915361 759083190 75353371 879407127 671992902 283689465 775801555 191549492 43216549 813717967 470019634 410848701 473566461 89460675 767265019 743547660 455571488 910013859 108072944 605129126 978691534 115727653 918817272 423330707 301019590 156643131 548299727 261283095 527142587 558299466 957336124 210572095 563739481 114821702 406774305 138661442 846338011 461644430 300777433 48113026 323171250 436539470 170071070 699817210 945724716 262755355 97403266 168301368 899696632 289385479 665556142 224681729 690270324 854802793 321884870 750773615 508508032 592445422 388856670 565795372 188506338 888856682 378986529 339559998 72168656 620104075 679563106 247067525 134707999 689330101 905686549 787963867 926788584 16200690 88598341 162960585 270391670 596158402 694901074 100261155 967101582 552888549 744401719 985951038 756487248 28829830 570785490 6399044 356299977 675076672 920821845 925317839 256668933 654922889 148782071 778310612 528854359 696767328 30449223 867288270 236255803 475392009 678372660 691843809 809863683 309607489 574427129 232207434 558390469 640901494 171329429 97407692 650659765 455647015 996464847 726459085 355066535 551557374 704757896 243188893 913482138 557461107 905519765 110781850 985872051 566625727 852642577 895664319 663764700 63900282 465659431 18865694 748404911 149163841 505019867 256168737 384423760 593081188 234492961 19350383 676163010 169089616 850019506 186497660 537295163 805961647 659369301 917635392 172948682 728743816 585152383 93432606 216476863 619823058 156188293 968650633 514726247 899123936 981410557 321166341 841251619 394475951 918376836 900036508 763599829 799793785 884615267 191785734 202698398 96861247 127881978 148232050 911610254 662392332 720887847 974008604 811070031 28155953 223340495 582096087 727730281 230044327 20884939 571987976 110894906 739111905 778500302 523081728 696951079 664770738 897443388 250419979 982552339 107053741 225482438 151316389 689527532 548524099 336863645 348074863 745830377 961450630 894800014 717325064 817468925 767574148 769707738 333152336 728564115 858880018 941453680 577162174 167453952 458914510 675871252 560571475 383072764 663539446 35463151 952268399 420964402 339256006 458897472 110310843 602668979 168810152 650624584 704377204 481544788 349451882 502588077 340138201 683305090 278259307 518078725 815405611 395651167 366123147 825258658 996134467 691703904 641776180 607673776 738138633 558020645 506513466 854171867 934216386 75999629 239977463 547461836 963510816 429396503 149955214 413088278 195500419 813864658 601719354 441488275 681606845 948560026 224281828 733869701 98111488 423709295 924598345 824917756 252433209 156017750 598026511 671733851 877814576 206176464 201455856 754611286 151960375 289727138 302557549 655677375 401301025 190935819 641990805 998355450 195321602 527843789 103521720 507917338 514566674 130676079 318291242 88076788 312866361 462143067 983138250 69404521 66234873 602017204 296830421 437456437 206957227 165960064 862374750 618436012 979530000 626473278 683351214 138507535 40779715 779042230 273769728 132456642 236218624 585522683 240404786 243644326 14763878 833915687 635826299 919875271 328853321 558019417 118252289 662078585 738327346 380245090 914583234 25289896 574026301 3467623 88778881 514898613 421819760 874685012 741180500 633312363 539233414 937698205 588653269 782271038 2859386 119811886 137248812 586579957 606676188 983043393 795973125 240439780 930941870 404785820 812967145 781041540 454928745 121075021 149239943 338065352 762692497 226790226 430977375 887279987 300780560 964152508 151799713 884245144 727434359 895939063 384286319 334554344 340744937 55667722 582462503 727616974 260166113 555702829 808736021 645283733 475200110 622462458 324864910 401066099 470764539 767593203 734005190 21866841 376977633 709737575 600614429 206763245 858487594 870756476 698582278 557369357 381675034 22576354 290006786 993929107 368404922 403545387 263685757 441474021 321289491 473897766 482529579 220867453 818232682 668583348 492517071 793026659 995813628 760359535 374251443 970848526 874283124 422788301 195537295 758883751 398154560 302236417 329986826 396713748 254209072 738497266 843830673 312353191 458075487 794322212 604883381 597658548 760535626 887987103 148254836 463173192 261687641 754089611 265847329 169856958 345411924 19527181 485935092 445637639 901728367 988232604 425180076 697468037 423974146 805327560 774771788 125726672 735198708 321629197 789037918 688804235 523206038 87260408 219498820 560028873 197647825 33856172 265020481 90024359 632738325 968342478 928161600 35601034 93870530 797193940 372659504 842804185 433443828 953689353 821785205 660801708 707432747 755989739 629604579 306934894 692730178 12888799 543142189 865338970 542110175 171070469 976974236 530412756 459972125 944842717 114737802 96091634 364031915 48025731 641839979 496172283 869551425 608876791 170333487 943729480 99527406 169330629 994421541 501798699 150304101 694512226 265507413 807447526 80034158 737905583 522983155 438370102 266372301 87989353 653007672 190421307 929002335 330149973 245782363 560309229 353509746 855676000 396911583 757322332 9227668 1597041 461812239 701640135 264921870 534801013 664663142 942890515 215466112 846255581 131656881 56708238 900061657 581157400 423804225 198843852 631553799 427903477 308287622 516326027 368870180 923417198 135216941 846644759 209812229 603315001 10911563 39798339 885366778 697661964 835954206 140840055 879474992 116578784 492118531 818874722 822901980 808031926 811243010 24649709 831364671 859648069 70862087 218082228 257587745 264078854 730085682 939254295 598829622 9769174 109202258 711519523 254199565 312749753 880287119 978650872 556211366 992750177 145237444 150901043 128064429 737877997 809681207 200474042 285959103 573663472 401390190 265198160 371425239 545988101 21325945 675180795 317656749 757264891 65120733 317353291 336530216 815523636 503805873 338335200 366332117 727409988 609325506 889619138 36164121 873820736 191549281 823278241 289071571 248845256 254629755 174010625 9646813 735816734 23117107 856980014 178148984 877036551 381294234 582718285 50855202 87912355 986932521 604280387 96373262 223520994 711612718 62986425 925816186 868325123 714634558 38376296 548378921 321509490 172675049 812372252 344790575 505636729 634244222 380262847 246185787 89756899 511306900 633375223 670899615 665114209 475634005 786547170 887941288 226373295 745488778 225050265 923611149 109362281 81262676 501154998 13045608 194723654 35515415 619939537 665404210 267018956 393288819 178367525 924885250 790524877 245462611 510912858 339247846 653066357 814033570 726403599 139689571 197625845 164149736 708957870 150084651 774115413 508705058 340779787 507682175 968500015 813458250 801908373 733170099 919278813 93956766 993728431 808395123 515853695 909808769 422764753 297981621 568546742 857586177 149655163 676837061 77175484 583478569 308976514 912942067 982249902 289669059 24692551 17986731 992710320 366027183 559508496 214258190 680437892 38489159 745419058 540824697 149387937 895956199 79896124 184192581 93516155 953128397 232872188 385827164 344886398 832346638 565463877 550013511 302860701 800077126 928560032 299590189 763084146 54067921 86577257 470217240 446129899 771202048 677335772 437134273 516857809 910561052 667591283 749940984 314447673 816325903 11992233 128976188 588645371 923807257 64288658 280726552 197659241 114780303 377939817 888282155 113816927 480688567 629603329 684546629 242019306 904628341 867553654 386676060 770707341 211263009 586545851 594206007 202177498 992012047 614688052 60175473 875873573 609012055 561434378 385725428 22834067 80188884 950400689 381851416 259824115 410829623 36361263 274148321 673885285 991423459 324403998 89402385 741144178 569780576 996527388 492436478 700300915 512363587 32088553 172328839 79089626 96536793 103881711 288633538 904132588 968893271 672220697 756827395 984022900 777041445 363329040 745572343 311550911 652834652 951348148 581038477 577375322 997662235 144115301 928676658 643485644 334464632 725477476 314048303 304731587 339318954 979346368 75402721 520160469 707867561 571436801 999212239 652066366 485145694 432438168 994434267 61317925 272805825 76637739 570152089 986087899 590810701 935177020 408718244 229045029 251587515 833479740 941356579 412176541 76045960 388649818 737350357 595323075 942312122 945288278 509299552 764679861 167140450 429958045 855021929 904903047 902252125 344888943 369948271 650705175 181487674 918676122 237342363 960953023 339584427 107822663 614594065 584653552 159336529 124811247 120809260 997527633 564645860 235291184 264918104 339456804 307610243 341493067 723813260 966236955 69330944 480150313 545807608 598568684 488304741 17121840 554991182 87305885 711833684 601373231 882407756 900793801 330364467 830877163 750335536 401400903 299376798 431097265 388935865 673064193 608216035 245812881 185221517 162729586 785576265 364910205 985090708 506878631 803194608 528953876 59047766 584873808 476281568 709517679 816164726 517028894 240933209 314080759 425895707 71001911 386841092 43478364 390657153 227072155 457367117 796682475 724154421 938864058 773655626 279600715 676373228 187455493 19127623 418509555 904584562 625036903 72082449 352347408 373500154 407309103 589229937 773667526 418690084 598034837 861264443 165585372 573589975 451758569 353518296 201169621 751604226 485169008 134884592 789568852 367368544 850078965 209128843 41605672 868277706 689247191 974330628 223376000 62567544 934079688 902589669 431646275 8122871 54928124 868683471 924166571 660986708 406271597 178596169 604239236 924136866 769123868 57329472 491576635 857568380 716025568 658462609 268207533 883531539 774947008 863774731 851013283 379386978 20996932 825544227 326322925 423540760 304449549 345991697 634890638 828674804 519284481 237882176 186046568 24869010 262581760 655112022 164944786 688358084 732188549 919437290 289715557 835518747 127598285 116454553 666562480 692091977 85769475 682312320 529443289 811412144 575355175 503441608 334771767 186896454 916429934 558626106 301147753 699831288 950701343 839841222 803810582 110225909 783637989 585278843 188811910 34157864 401224344 39120281 695174226 592194857 541367380 137963981 823657643 523852012 729918742 974114421 824207336 792720689 381313308 379304241 1618595 187582388 58601719 99540819 28595692 566993788 483620191 280774432 817329743 325499137 63935092 877746725 158182844 497478604 292983522 530877041 646866038 978003823 320357010 58385951 355788457 612757804 470340697 98962649 984753713 945742636 968021403 487105877 49182708 990860903 107597331 758376305 554989189 946497151 286426530 79139272 534633386 367968245 347863587 419155660 938295344 177512531 999606940 333281125 583387667 915507198 49719800 798293225 802281043 799539876 791641679 597881424 469518255 980843989 48400676 960597026 90428805 990096284 510344676 763341837 584959648 162844863 714952503 540674176 424995915 889943879 575964151 455590843 940588433 549332358 944863061 219470252 198817194 468938457 339888482 683910779 690342905 845323375 207178555 729750866 903449351 555042397 962063425 565269846 814743790 243041163 710167246 103791004 48895780 32481274 766075252 928227959 157735133 267559921 103434109 303197716 3715287 647333999 849941458 831597860 925407422 838958030 639433940 466934781 862108218 559787455 634444246 281080052 672291021 117195593 518426008 52900519 702847592 596951204 70203079 49696336 792403787 561198930 187748769 694846329 934852808 423186112 327698053 291340356 563616277 695532635 82725365 909338451 567448794 749223713 672452302 192902651 869791984 373814246 606577169 769918436 26305348 929505298 680658566 930775423 572066750 813944727 720453753 646611199 439959836 325703964 362652056 784154876 880359935 186527279 905249391 458264586 691977796 880158240 704921938 225042759 434904361 797568761 930032117 199476967 676657082 786366973 292896204 39259427 378090470 726528566 160588676 40975970 537770437 263907840 397782188 651132703 249706556 439677588 85576112 134815461 47169585 538567880 391442348 344451343 280604142 77746037 269873093 448568053 440220068 15234029 255433322 485573692 493493909 967241872 696172068 406734672 18284209 731873812 185172914 223609493 502210774 113464827 799996129 800001945 766809880 930952457 477533285 361680356 629474791 468030969 888794105 71698421 299840743 119936410 871461676 862011040 107334088 467054621 734241326 720895262 818620010 75255848 98513312 179667959 169274112 681033484 573308230 539881021 199895403 967882787 351358031 603786276 508676280 840920425 819296634 759996240 220265250 652751230 685808042 203927669 550357358 208164870 571280089 350375246 598850599 672512359 127926364 171684263 61116911 143791428 971738843 501595588 107760145 719635560 733659083 13428684 506981705 642230214 462342058 164653066 597498533 759548615 516219389 381064296 59392886 138017313 871474643 578694352 978542942 377016224 444094423 387703571 206207422 929424403 451694024 749472386 294684680 93351814 977895266 427063579 384800568 34893696 686083420 195546952 468819745 842502417 255888170 877599941 858357536 959257657 547712437 432357163 679755211 577510115 231997693 486220837 55700995 469646999 978656257 97439703 820965974 414548805 469596463 978739203 726544018 206153369 337464492 584855860 465783364 303477955 127528755 516417054 228978432 99867037 701455750 202438530 423083481 942348157 387416899 151524862 801411177 130715351 934333546 634852207 934840356 899920874 464014680 493207493 697290103 367579434 903659703 80412236 951860069 388704648 289415186 568220368 937621655 121968614 534147969 107986515 764751380 790423474 642198832 358747178 581395032 643488413 921586104 275534125 714218554 254404557 306849449 341543798 348389138 343564494 567893556 641780703 175890894 232321363 341564950 578415095 973048923 397782608 273270497 89789817 131483292 536512266 371899970 359968450 136783047 917611953 826596043 349904842 227906229 12842201 107375450 922355136 393947238 909083618 352517996 816394107 523232855 819015228 218426526 504747025 191168193 137432589 299776257 581639648 415957371 372528240 742543154 673039022 646867851 954794076 901415706 949475063 12950996 120816693 461149998 627150074 479295823 848839331 328504867 220672642 721994530 47123501 733925752 790913108 334460500 99097269 684513 631959285 237502386 594794483 883679598 469352103 460646338 361401810 208977614 908902994 928466837 448379957 807887622 10931630 107914497 699364756 356320354 697014528 792473286 632676328 710098097 896342537 349988054 435055689 95344500 113347955 347317805 120731667 671754370 389600770 47619556 866759506 467876574 293039691 706608817 130775676 138025287 906487555 2108436 891806346 915107745 453340977 14779919 134239901 47335219 479160918 877002917 153494229 528341151 443213193 710757299 122848618 129433936 734759701 130741789 755518550 939628631 24697066 562585111 162818215 443298865 472176128 915349049 214360951 91473807 242196595 411593709 763762067 963488976 331469757 333922011 53352971 472199216 761214872 257800552 551168182 476150716 837620550 993487454 86485278 354795937 995854603 492422422 610220236 433197834 178017002 785049607 618726664 888664965 60857781 840026110 353961694 29743445 259513398 929721935 917493005 437965679 743414892 375049836 589453215 101517005 329535510 245238472 486853785 384963409 485358778 876607468 40567227 310734988 144799839 74992722 21110152 949709718 551270874 174896622 322161092 775059640 937053424 733758851 660382045 653307472 491924395 842290743 453507435 963888304 351197769 151070334 306015705 444973632 729782800 200427712 414022383 506874982 716378608 746298266 354010957 486347782 948300308 355499620 658588546 897063440 947741606 651759125 212347641 250062778 429571452 895268739 168682684 424547549 239450382 232884690 307698277 276040215 100426679 125942501 284995068 451466353 586620170 313437010 611776975 374781907 711314106 585464266 794109764 613100254 286390852 881528239 191353072 836764468 354045146 529782851 428110946 877295168 848501542 830426009 855843079 816064803 409090504 31347282 130478258 613406252 206025046 258057448 184337354 814519566 980368539 690820941 551338315 277950121 512742052 203906969 576062273 772127513 677460629 495838576 769019232 320220553 967677889 74251987 164872878 401841942 655027726 142120093 244862312 892737655 51765589 977953641 552036722 559467312 133243667 165787942 420981934 162565084 16392207 156909549 63447795 79018782 456256072 187385235 221897718 899568288 438623236 533547975 103390489 874937390 46025642 59883807 258400836 710400779 183911731 988064225 671515934 769522353 789224061 665446687 83888542 689862276 469236290 705171354 466618078 740550341 878162396 851690274 104230220 159364384 259818153 440940820 802549913 762642001 979885876 551910714 527707834 159863245 49921187 891071051 250489712 762808860 705390469 37099488 582824247 852774676 787036132 416778288 978100623 281899625 436365620 910491997 435138406 246575814 83944128 699399897 314164069 599418831 632341345 845388687 135358554 662187522 114946838 797068892 898894023 108156875 473406764 488804494 481432492 841347185 368789389 950104466 843999189 185357180 45652137 69656486 561425261 798173065 327457299 318993041 204061637 982248337 834180402 919004694 348884190 122626019 190280180 464253336 97437930 934430764 301693350 770037743 795210706 820580403 115061286 665798498 229498610 977801286 304179375 246904062 25692656 78652911 811597175 479764545 834560859 564873125 888516488 825108436 298773116 435352071 397329234 877465809 124788952 549006512 64141422 269867254 537048078 952910373 982295727 87870762 866561475 475509781 892786473 887087965 237076567 617825726 881163472 975465000 508428218 954203655 396547365 991009508 693943520 837016774 126672725 701574502 753952804 612907388 294326334 563789290 449163722 815846433 668279969 762246363 467698288 735847502 237210924 574052168 172503225 431532598 268635262 781026100 733427710 137872876 988592256 572807473 643029278 404612181 972418649 846716234 143098792 188716101 225735730 972663747 55596080 227972252 481719591 495743516 797125045 103786906 544574776 134316552 439441394 860687973 30566268 917877187 476022157 150244671 331637120 368269019 731393776 816877964 132699764 12758833 423505469 488457207 540467136 347911599 572015509 407353683 200719544 78548502 433438403 533048093 726172342 533276253 424814617 21801197 626770370 264502603 307899720 366638829 896254479 291401869 544601542 163272156 609222352 366010921 137361941 383170733 120424777 697391026 363324438 169799181 936867807 970033641 451168253 869949474 167240269 602861952 627001297 679668564 537789513 692081839 490994795 883710094 784581040 127469020 567684794 558105455 36393990 444789182 785496028 967792142 923394965 484522908 474675122 913956245 728942239 370632329 709831998 870048147 830261253 328227193 430925898 540432163 846988579 651949108 883314820 850955984 738144739 686430899 803256948 857778066 205903654 892688497 830145797 180775738 497815241 771630971 385566975 790609159 119792642 784646084 956436664 637172783 450235409 245834682 38796346 959496863 461273882 335608988 145123566 125843126 822758551 53422718 184051862 950119534 322703662 432690129 21309103 108715453 258286837 96664766 405896001 688924254 547110161 977559062 79433560 362607508 512312824 473845711 397723831 331322085 445591666 512163354 622162007 892866797 566381778 546560707 969947034 947449507 961179179 577988778 516618299 108451346 475203998 3770825 883565029 321503298 302159761 829721524 671694167 114745430 386319084 370334698 862795803 559596461 970042089 356481826 43371793 190322899 622702309 356443983 356543667 380127328 285166165 237052727 517004633 663756329 138124319 409723574 775757156 481671491 181602625 588451900 468476725 581446917 605955825 880474103 454167287 678613053 579502100 588289091 713880771 857837076 681447563 600998296 98566241 146484965 791223918 973007239 103072908 192480454 126932201 908417990 793922922 19229697 465600622 43962879 827391691 322297910 638913876 238537617 622258859 889776233 389228964 559480906 811580013 984346551 585904464 220710726 226185215 493267903 799162942 443986661 206055793 686805675 789591331 142916287 785711733 275474687 895318929 309033256 654625785 834560044 798300574 73432979 839298572 478328800 583552092 708856950 515080568 100602931 562790382 135893736 390871728 10945429 731582367 429357365 5440406 958234461 938394010 365987239 729892019 251147279 422453288 211538535 602674111 495934626 264149667 522829234 185955020 947683115 961822404 938486589 528378458 708484851 857843958 913779750 403886493 678820653 772317723 101852418 542531510 47706970 654113577 202892529 639897281 950230252 814591593 526957403 217189088 25531894 132332280 810018186 18085206 718676287 938659791 10241707 638551913 880901225 706867776 903363270 102219856 597805447 714404204 113019080 985537958 692101556 466469169 855119677 350795493 554787696 524401934 434961343 264786445 685072519 603996857 868924477 856564361 315485913 569340967 461337919 955424958 378160620 538636028 709714802 747676117 456298857 630174060 625768284 841315813 174491040 728583713 666779880 767334334 877958090 658661944 7257560 116846250 972760063 548307712 364178783 775613814 211110879 669518770 165652073 506294156 729954369 876740582 696213217 979959439 424877670 870749574 595429962 858546361 120320047 865000725 316643127 316819729 260798630 462909983 314314074 317502964 813622351 215332387 985361847 789382067 200989216 79516388 52754366 131466556 20044282 134325132 336841089 273445908 804349577 823008795 517872157 460022981 787138994 22992796 673568797 303776168 530452824 417418107 904423691 549927823 799048741 909749682 694816800 988740345 742374987 549097031 617859994 687097213 92534786 463184951 263588674 22477640 971252941 365033388 659876235 285512011 439299723 112864713 176356779 588425462 243073379 862357148 625592481 729234970 200915399 23589344 812309877 545859007 298795830 441134249 319590137 718212324 704144298 126816684 239525769 392796146 722496545 695954330 193966725 231290287 798822314 454418455 857369640 98447037 327237745 989836062 734609965 566523228 798050787 77810274 418896938 551289199 217201195 529639333 390347352 31720411 9430532 911809886 313359985 208992123 381816360 518237249 990581139 832750518 218937825 71071091 437205925 91349214 560235185 37855805 500328270 557788181 681182511 610552159 836528364 357844644 129912601 188410172 420219781 593195105 322930664 746255327 236116417 326047871 884300522 770370479 18442591 878959010 955962120 735773141 244978459 214389167 146445665 901334694 53430567 316058815 776423877 445962106 168690779 700066400 725398922 982846980 513882762 264760028 734094446 334122943 248753353 153700762 685354130 576771705 37723162 368201205 817270159 492776886 159989591 625220689 858892046 522498410 200547085 492506889 743031198 220982257 967092805 53437049 892402342 652914455 431721861 622378466 354103189 450375940 899862968 377417796 52645381 171595871 295791438 51281087 5762493 695310583 997242727 21145038 24272014 221260629 882336458 925894636 461276011 161038480 905485161 175533877 231850576 250088239 603063279 114323325 116063183 222922836 627857795 118984648 485803777 606726734 653402825 11291279 704857563 944843787 965842728 119974124 64327589 369204197 469807949 50275931 197652758 780099624 849952712 775826796 895941376 706129136 617654049 229187072 628607931 666468039 435144970 378206526 583423323 850195427 2047633 314856688 751250687 93225654 229563717 236677048 34818243 143231254 29178062 102028246 615461173 3657847 164168071 657463980 703186434 718823873 286628265 391300865 821651694 434607069 925719606 620841994 342138014 85571150 355462811 466598344 464216118 108071579 626182927 179693344 964274179 861362157 381976840 855855259 709015348 327780286 813894365 478683110 223754181 812718186 251451112 605158186 393423783 989898409 939621808 843189560 896498176 791318190 779943175 718583199 287400701 900876444 821522563 231937736 654338154 656361182 384193569 126011066 49922217 185684726 317769121 565485813 486930610 389549187 90653629 925529762 463884073 356808542 291894969 157737919 228617270 311335259 782931541 456922254 349248870 218324777 683119186 602078049 558395921 968825740 668452944 882033205 596172453 334315537 261498915 518281477 374181495 519294424 120333168 902212276 595301298 471385748 308325255 193134846 901150241 177991617 176113596 663946561 747756278 778397955 730854063 348351321 164824775 155665509 271395959 830351231 52831077 343420571 752774967 242304201 949360987 293659158 31582343 255217188 72170305 953029666 421055927 530344526 442698191 678551583 301886481 660183301 85319361 718752046 965301756 538574922 829332954 561719165 695927106 252963508 26577671 945211102 140503474 881863132 591526284 286796125 137120859 577184787 159191079 795188199 306455610 78765586 740134289 220630496 805271983 490330966 369767259 676809837 363877955 683877336 752427916 419622623 956122078 418451680 898636317 688421663 246065153 314255166 908375905 816893523 116927098 661270927 384712784 590920856 473010381 183382945 177820199 928145684 452911993 634420818 649258858 629776430 842045393 500838598 763324862 788174077 86503995 682630757 181003651 616749334 55795673 156593693 706650636 512608722 238826334 10954805 76447692 95515748 17663453 427721475 360247795 944153890 47076217 282202991 746974298 428289967 527951622 808116498 131515226 764871101 590406050 455189335 834638411 860864048 599247632 256727135 752778964 712541941 572370705 680070688 544464178 244217658 324606292 235782900 625521459 971955451 573685462 915068421 561185138 241027795 99117777 442905601 628471018 110490639 114108739 914746625 304029474 901436298 577076222 456816724 542400039 148333650 908969106 952285713 887317098 343120853 826715543 919197454 13280309 926536930 410230652 116726577 42755047 53467973 456273347 440663836 985625948 29491002 838604597 482616165 313587452 367719793 226920760 961945689 513076431 621841839 43702712 726103331 172607541 344610656 604262792 124185725 502100210 852416575 337669478 398516604 429718557 280460900 466082309 503839466 458110228 141226190 699183369 42859118 941664788 147928033 558800648 625284199 464364353 831131132 554363933 526202731 703584921 21070252 424825116 71849949 351610439 889742422 224761968 392203620 34268884 52654675 431681718 480905842 58115264 790491862 603016216 892836733 913846701 1283747 912337628 176619792 953811533 922692733 85245916 356859925 96856303 305793316 603117415 688195965 890745487 107282435 432561160 98520564 779538813 25355511 644164600 751860472 258992646 401477207 395842947 207173100 888330561 932406373 233630662 890292163 170491397 377327258 145438378 466601703 56245707 259459016 454297015 510390489 254445871 73091844 449045528 324222610 424249310 858406246 50746286 189504165 384261027 251906787 667584946 473692128 97737805 445647147 653171982 566464161 461468924 148879173 450865652 927892634 511819755 737425385 971577209 503464420 478778096 896756123 76151630 503225337 912047716 100145262 687520542 457455232 844668171 711910977 371398479 795549381 662020213 398854987 939775368 427744234 818728633 986724316 782763726 378477271 386005271 880165810 903780741 335326030 799628901 199111159 142544495 371355090 116539455 427242054 127261589 381529331 47469226 813005516 403886368 983777003 823392804 276247955 184354847 500673205 944422800 956082052 161352097 120704150 246969781 952064868 653836396 197573055 217085436 832367109 986799207 529430947 749533126 260735341 609291413 435165235 4874272 495577642 116001633 299301246 384956110 928176870 665377235 623076172 319690383 568498266 181551971 560911253 783211257 750577705 765183434 218471882 777655827 186662947 366676395 631746401 372813405 313318003 794414798 401651118 247496316 641175317 329815166 350953467 711343290 548171536 597575010 178644557 26410295 692556472 794503855 207589941 672827412 256985145 221235858 389456162 23465007 296285450 925804445 821190023 384262824 357985091 566650139 998282671 422043055 292013385 315222839 247674452 986269370 912707106 893924493 461075256 128198079 384288779 1818285 57352600 74034349 194105033 20174461 150314199 249900290 685248228 72231601 253775430 376278835 712949621 134166084 652878281 769006820 993895260 398704866 669715811 547175347 422156360 717980230 599020990 863729504 214485915 165578243 414932130 968816543 873667798 293529221 913079311 369855097 645152237 170605789 924032438 604831507 509776600 826023504 250938163 459024591 790635053 900012279 692515129 215546251 313447986 935999945 368620298 407339305 480855060 300210058 431225174 128818182 812184985 627805587 449592985 210896725 61588207 131777121 406927249 254158383 33452194 28765664 886882019 143783583 32782593 342302380 419230601 788743964 960710954 727615268 664095368 923137456 179674472 621237093 758267879 877195097 671818628 197146592 631705894 850573937 437918132 63164535 829942565 320358068 534589603 174232148 719832470 152373436 974628121 33267670 526346305 642804442 825310684 512240932 261174855 865125612 537335578 485116310 976607844 696017505 183898527 557409227 695777254 584155685 663176248 458664752 876655946 530921093 563843878 466272243 895728208 987706033 987322633 41113339 575562552 281602005 249268720 437610386 624599804 273783222 893228475 270440682 696318926 461570287 9641720 477760525 815331945 158772368 179643730 408334270 703671848 348359612 747500669 396238116 632114375 924328471 480248900 70733187 556877112 121797486 309675858 925212661 526228708 89265663 985003880 974206356 908960315 957024289 785386855 82954105 653924069 477781436 116999909 830713192 294692442 164498244 258451983 379063230 494018575 33134848 474005408 202554676 557776710 13001268 630640390 107468807 206749116 462599923 493631889 200285283 648379340 595348981 632164909 103929940 676250596 213026247 978317730 459112773 515780169 642301890 603186605 8667734 510492585 729423679 730653309 524073291 591903188 364478319 731433219 164950904 921980099 303868791 54046056 737911997 99195832 399693697 738928826 20180855 851442399 188994769 313199896 603673716 22186572 378844879 43078207 442208416 69151092 102654128 912077750 209059522 496370990 608985869 10535563 846889011 365688534 441897990 786459376 694360043 750155139 284210239 624071147 219061822 795497897 464716521 721708697 872178155 136478669 303934782 768717066 248722559 894844603 447891170 396873646 169301045 855261606 793179664 902119902 246130956 332905073 58951387 225793980 101133666 882737969 320323745 645292840 779115733 834461771 715765415 219948842 2244899 994286033 648173630 307042563 861098682 18734291 883870945 462653195 422699981 347719115 757533045 28312171 422174863 945254025 410027573 897280641 339782787 308397190 475561077 342172400 537575099 606094443 71404405 446798104 615779375 659820782 317636046 168499438 199047909 575153596 881338972 562404773 819819604 710849906 131911075 203131657 405327983 828436135 878569037 727966506 433511436 945783256 143996465 226837670 745374700 186927682 645183499 301410923 885832845 98016138 677793147 424988030 729810979 146071839 603120062 558567715 755570705 268528378 660519940 239381153 484549006 585206315 519584650 277860384 433461450 236951029 438757729 103515157 373502722 344884489 843645545 195785885 765647702 131268556 48743666 590425979 115279130 277432852 764342536 211658216 563175967 899736413 329061199 961500018 735884792 985083304 80454049 668290301 307532726 423799582 641110206 777747199 563512051 846656773 783297036 978447935 219840718 338490051 318243172 50521260 267176214 915579061 793700786 542087710 433947465 727655298 718375046 828471739 334531060 706503299 906150524 270072770 387799522 120208683 525844519 540594533 537932922 233853239 883042418 672225169 874900923 87164831 82056604 743345409 68171827 145021970 488813471 71082697 598860035 53826693 273355006 63556320 620306833 11851788 843965291 513170664 536641729 796626706 91440092 230216713 736222889 193630236 403392284 666310775 509870432 753562220 473981889 650204406 18124301 774030882 307778350 177510776 514426792 442392833 373432615 277617815 104725405 909093167 957362234 948119130 647732255 607983141 251925275 751110291 33591758 18003407 755913516 750659795 220035620 243054979 676540996 541005564 915126139 699833690 271687486 170011541 938995601 238957028 435595277 520910820 374690076 740557558 869798056 266863886 678872881 118641289 374280976 55186280 566027555 141518105 986168114 98038348 331498774 130009953 966538337 737967060 816287999 355971596 424441125 535401831 962458185 429195501 834392193 41757182 295171840 59818602 714630464 328989040 183818440 948378551 188789419 821438390 221274715 97454311 256631641 171156221 910333277 304013041 801004755 356224958 340330104 617593722 628978344 738744641 830590761 475856696 885482121 1630733 578301227 626230969 722657650 703066536 52875633 664827331 568641367 701099865 606495841 126024146 999696095 191868341 102277001 753259269 733567515 232940189 50320601 573033964 190753826 414212827 326221498 546156904 39721630 368435208 771808187 360788907 658126922 359271162 350893774 460394261 55356940 690020355 775216746 401645224 165528206 317462249 805178441 775230960 854256740 416107595 29352013 414793631 633645552 487773680 98012985 357030246 307053347 336694345 741836795 874260386 531628757 748488131 973381004 716520263 192277133 140578448 117430979 332153010 981811737 636905310 335780365 978928889 924370643 996161541 225947271 596843533 624340462 619162496 570050023 192820142 432740278 319766692 787826336 827472028 525684908 825386602 594023100 361915650 849325969 475724324 787565453 176058340 975498891 518654297 310690513 793228567 390630531 711435330 399879515 308317888 290872477 78329303 835570830 56595057 559187280 800264311 819355167 410166407 524170775 421388728 615303235 765622709 459748282 215899429 370591596 269161230 72282369 199915008 423263995 900696438 354436528 790435831 283108241 502572113 753661481 166014242 468400805 641425051 246554213 721144991 85175050 205621097 526876917 632232594 775297192 950895155 732028826 82560745 539534230 473196995 526920419 193499568 297752696 9413321 212650012 756292774 620890223 48028874 353175298 849388851 361643884 650184717 105052222 555721958 420063801 216790043 826799687 660953356 914811492 300303222 655590990 514006331 889502185 385159966 130461037 112905594 215938554 388419706 391719421 918218780 926632994 840117726 918127342 386715323 246063720 406578319 409783815 43166200 880949790 659477595 629705953 485189346 943709484 498262020 685080930 936499730 824376410 822596035 700215205 490517615 501226547 511150676 299809264 201099285 82269473 359090205 197513455 849741421 36998192 74019821 96645915 22627679 789892150 941285299 225545496 569254914 595171676 977376801 297126752 766418507 866357714 79121151 500617423 875267221 954382388 692809765 825660929 493827055 345801066 335687336 78130990 538731361 584241366 910780999 841592060 502567042 479175677 898961703 444318384 356968105 587538244 145353340 121126370 74535204 973164006 671873362 933147162 917413958 36626351 190263090 581322820 876689795 693281948 832086019 362741943 751942951 776890152 208157901 202982633 17911869 206850269 547870042 965300810 140674458 597136576 805466309 895508395 803492959 403236943 917103680 907409736 598124590 12127365 689503767 860208431 527109344 534031953 806540021 785688582 824113068 64841304 600752644 72581224 166906202 424447617 871493018 697816576 461512926 98099605 389868304 4544550 835349619 413275413 316356844 668383945 719153557 609294142 979885843 764548412 699864088 691224584 752514338 385933158 484447965 510398974 801533431 221475680 405503354 412449112 397826965 280487679 642531637 112559160 967559752 767035195 560532498 200314118 606881911 520467762 106643052 977657659 370937758 536929412 24253982 829119140 340654494 762252282 493800252 436873408 66473403 32360739 625454705 587859368 39732681 902206554 560536992 783112481 545692588 652633511 139649917 903184565 443896190 171904166 447752228 702553343 729762161 939797773 700944074 959315867 900490841 914177110 506894550 20244434 283486687 775684418 869742087 961669339 230806115 950316091 47919736 736602027 272397276 719850164 897118727 780696695 185551598 239103649 560503974 975841419 705406795 671454845 320975457 98984227 572509917 749610510 123141675 801739881 2612556 641354064 582153630 256536125 705620249 940878245 767559323 683185357 721375861 120441211 576985139 898805703 18071795 767317894 986354453 802984295 210974143 747837754 947632642 720107298 357277399 742978568 921743755 435632286 240605331 240679253 995796565 622970840 899956442 48007136 678080345 54455421 563785972 514856018 831553225 166810097 422718755 947439642 488137842 590212333 779003160 432126851 766537539 961812143 566085242 176843384 948018945 302320025 37365455 961504969 560512731 962532555 298724123 345071882 825705231 816314278 201262859 422904737 65953854 718746260 260412717 223738412 19757345 604936350 982258548 302604287 561586162 921246981 220241230 41504178 679746639 804277992 907761357 767292588 160586574 65334940 736192728 757821471 650541517 291526718 504344120 23123736 424234097 391843285 825232806 489587663 563981845 415819017 438135730 568385441 230177431 786029773 7170695 95427555 446172883 812583411 544755875 965167090 907214393 163293083 225776180 106852005 781515149 25719899 244753068 670061495 468442594 174309564 113449082 219133335 239752986 443389049 604560105 387244835 133453329 374757739 265854573 766006057 562094231 743950986 901627686 759194071 768556181 165553627 849470283 419221163 112231144 981955287 888322044 831891654 338800952 755304910 967611157 486857410 376202317 568072864 923203089 429489886 703724565 122648974 428973242 942697792 337901896 585114071 825671727 896061629 220026406 652595838 554602739 117141065 387879393 524149549 535619660 292527492 578170680 727191082 905728489 636002525 309511683 781125317 913991728 205718349 342991942 779806225 291014478 365488356 300559801 500151072 54365940 928913782 856056822 736623577 348602675 688403080 629946363 20459507 863084527 883388967 626453654 2228185 518262410 674202512 398338274 14507027 811328292 95220540 175264264 972515071 862873350 500818752 536214258 941209866 176393858 77577056 77083480 427777325 985796046 328271633 856743496 843371511 593777738 558524975 434470018 57128039 788310744 673391362 399707912 638054645 143839999 385092093 505242356 71823614 920914628 14069163 657980349 339108748 570206459 495377709 609360469 598931898 948108519 535446908 276717940 310115593 341567795 56309380 491655665 947142327 128846366 95111762 535610159 768342362 223920527 558006573 378281769 547400918 121252350 948703849 200739476 638981381 361265280 396911271 136842004 17329538 712170992 733589119 528297916 609082034 753695149 393175950 656993209 917943760 664972430 123880333 689913079 579238332 95449274 454706648 945034591 452077644 263169655 452965979 508484514 817318837 835240598 681999987 750454678 584402866 209417281 828151980 38612154 907388986 541625941 644150782 51889335 714640885 846251153 946636376 719057997 719531417 56884429 426788092 31493383 255557381 853967430 820569678 323676575 885974275 72516834 257480070 749988836 177547907 41583367 215307371 203142190 173674476 567341600 853456794 89118277 617929143 829479267 95171691 326019568 374834974 989744616 923083296 14004889 475393556 826934307 675523294 919414231 265279148 980769460 424077475 324505667 398515387 994123232 130608685 260708743 362180391 381460664 207150377 409159303 961631436 678198151 443287557 148208049 672203296 71144431 857573935 847021084 599749463 423532630 943068655 768174007 755026601 537154927 244189969 568968662 565810251 136764443 951896647 72306149 843502756 311238763 684897836 591826401 77726840 36997494 173253079 38733406 68554210 583845888 850616282 587411551 886751316 64308874 17424286 924386066 449060734 811689999 696966310 668762110 155155992 179191599 240423691 883059405 758048703 60535632 733594313 831546878 521344147 189539134 859450694 202825809 90202348 414534357 609229751 46272090 245049004 27106247 753865473 48260861 584015184 741471632 822649184 813450326 536825282 423117247 484549382 85155208 285877418 189772853 596487417 976456707 281500851 790204490 776031578 594984692 239576580 396573693 948775399 395488071 132337080 505072917 925905367 236002149 120240103 176167630 178916934 805973735 940812772 509691738 566340730 944190373 409680368 738164027 921950540 577784993 722648431 918442422 106158433 491560158 317219307 184303207 349829227 910165054 939212179 667716372 778211927 400816531 745545285 849083428 209937233 783091359 881457518 496967123 450319930 685681991 6518826 295385079 133617509 751704994 129795647 81971926 82775419 824266196 981984150 482192810 961030107 652770752 923345110 502451266 744894630 900827150 671006096 340077474 625580675 657357545 588691263 859913881 583776342 974226677 73421329 441809654 593998856 948137458 74324410 176765248 970734166 88705323 664950006 727165506 883362233 702393781 144514762 292253993 675539185 501189806 234991827 813520228 224720128 792971396 206105050 894468759 189455188 842576788 928043658 15084244 661547497 650098236 545863832 791175523 523642503 251279454 735644217 738233814 802005064 715881407 74061612 921218602 347801609 256646638 14715667 696849324 625195067 759734823 61083968 354337555 423270972 344507041 948959512 420337315 874155763 870213127 567558847 847889604 4512925 599435318 934006693 80559513 339502004 176577610 43151037 172824203 985029123 507039701 283239002 248864013 535967984 632193703 860644392 929052378 784467605 778547082 210972799 70249183 759028413 201545830 292449698 956302142 74455888 288848621 220352428 922706575 430134151 311195883 701303675 705406800 298934969 722092985 491597483 218317273 427100990 846813778 274168408 941169242 391037542 83826359 846136682 955714235 388305418 714147009 57220337 35181487 871061073 884968967 180611178 197335338 596140299 673223340 128894864 342954687 777157174 654658608 873478609 361666841 227363683 44909824 945714351 654974900 10385697 63133695 513119717 967853257 280901960 277441786 847456739 537194563 118236283 633515582 938450965 846567962 797221338 165175890 396373595 684821172 215355518 63423470 955256593 283326776 984158489 988740887 703896755 159243892 284445835 297534276 599242757 978489415 838685631 274040864 458457532 527085229 747113494 889295081 285187035 810399378 868145376 905576971 471891595 363862002 336958854 200921766 56689461 577433564 470063726 368514594 716671643 36800608 964327596 418136748 468248262 673522820 973222687 697421330 196290435 187975846 514575304 341193406 872362430 314043027 686484279 744594964 524417275 193877822 247208734 825661119 141376342 313102621 38284716 871252847 444459200 635530160 930480849 339755608 314923503 434190751 556838503 106124522 200114301 463512123 663739491 471469924 953235101 182698034 271965306 349306830 970509789 27891228 583807446 372688240 695157802 849108681 741003885 189956795 975568644 168416070 11575611 882614102 980694454 471734626 857480567 981799561 873045684 689453060 98321202 483052656 234827835 176802357 893500779 678289859 78225376 41964186 918287038 791771937 644719993 498153364 241015403 172687282 78146164 455697925 497975256 13515205 10868700 990588475 23833728 612295974 959480737 941044864 657248302 401219669 557035319 378113456 637374271 447436692 426882332 357753098 277725215 682504711 94795979 697062466 892581222 689260301 163769332 325796992 265337486 908251489 652316470 43381698 895656750 329904502 327772410 847756431 36381674 332749587 219215970 654563942 988446436 393213970 464473251 905628587 259158372 491342496 883908739 916481850 183536332 238922670 148771323 792564386 406542511 926061611 489905414 459370762 220197082 629368933 898692057 992723150 524037844 371064884 936084393 186225297 171095192 957698997 449388298 243682577 39789538 551224573 431347980 384682877 68665013 192556481 13318863 999284513 822375721 124930012 722283350 741308824 890302754 399395941 777671142 708279547 417021114 894763365 100343127 801544488 219293973 560373643 344508968 927118457 738897025 175996055 614261057 23822746 697421907 540134399 111180467 238910774 468603472 373694074 326880519 268231390 733390605 230895963 676565674 588222578 303781934 630816765 526873086 546196061 830378122 613269411 118027270 937499370 907975682 456837501 433977378 10149730 678676400 284496357 922022116 883443170 735514732 661225649 426557791 947336923 119035108 778455143 193640755 676816116 915078426 384877168 950843201 19950077 660742649 399285046 587265696 115824362 27241776 725230710 931568848 165297189 786500574 214614559 722878080 753509933 673581365 459885070 637970546 35028971 77066330 668806095 557021636 886423426 629004837 609940589 923753044 430250261 771117346 815429401 632807488 241083444 837311032 908346202 689791206 586984515 206561757 12435721 926345985 478561440 683958357 339392610 494429427 734243676 350953499 396979301 1366224 254874283 962527459 59348107 762143788 135573944 788927796 36468716 360373406 914989560 617245388 598722755 454340039 966871521 770227340 8369645 587424769 150217804 718870029 957312022 363210405 848125033 653586389 320058203 180461795 107097151 548891868 212871524 289504672 907219336 861055080 968547934 521451453 360993930 245892601 420028830 525748239 471840309 268071123 880747382 846310481 410588939 695036477 292491217 731835079 924122393 729871644 891677466 300866220 563702440 588387571 45828307 43487308 250837169 738010131 556345931 836022686 496370833 356611850 949382963 498546993 476990015 43632007 615804033 725109382 75542408 746458327 101780544 918066019 110768184 325995045 115154556 327195935 469842219 864539498 345027813 101322513 428136025 648692598 562246825 487867516 572263899 307304487 56940485 145860052 426781442 704300079 234184234 242635331 897175178 306885087 796663869 231089584 585988209 169555168 602957368 121343233 380839649 433320765 937967810 593617883 385465318 158559371 87409722 341261018 616596787 29313257 187560335 903776541 328532435 668613916 956763570 353383151 858697379 276362033 652839312 144855055 503108562 964084797 317213446 970524482 853748675 288660379 412901193 500952837 664046290 100398742 195976450 456952497 810493402 599843096 811618677 661499350 930866971 66415455 82249228 13647338 185507225 234805270 21215922 758225240 413661890 514223514 516031899 65326901 744956132 502229424 387037513 670854227 323945805 697974657 444725267 844549500 69707063 447186214 39875210 834115259 747855807 959960712 806810865 964497291 172489142 815844875 701112669 894019869 723375924 823071274 823074647 624410493 539493231 20014644 926328963 11091701 604541739 121842528 866407336 295517140 365065663 886050657 277952827 351674077 979324408 389350141 78412571 72378860 634429337 361742158 267959511 257811436 341985725 255728016 972359121 212469363 627559483 74134420 738565427 646777977 680970265 165365478 141756613 599013774 804167743 707314274 956859066 982195611 51499211 463517979 902474948 145968632 113091434 599473157 171465617 647877425 719872021 475850391 872570412 838155672 800966237 282477817 944423992 747063469 700118391 89269894 97367191 520704752 182645645 353286836 589987619 231511707 575477060 189616944 305662742 974586083 386608303 625040959 585995995 567131013 206667720 861771797 928004931 439168311 588982430 560356382 868303810 547773515 958463121 981223645 152938110 61667046 461237898 975502606 8891385 256929174 762818444 251461511 661614787 424618531 206163533 776141010 731300529 881563500 273455035 874061488 539268896 605197484 811794951 143446854 385341558 980249212 436518898 143630469 4882895 111436890 375813713 938090990 199655348 84255958 766152232 364839873 704029173 579325037 752374619 93603803 649350959 35577518 490887278 425470135 48850493 67251016 520795996 889503307 7532457 490226406 134190362 989930022 273126259 724746796 554416713 39730095 965196878 18106643 256107834 878131543 952832562 339806876 138222144 174318837 498092295 625560965 504621299 572125476 347719341 416576267 216534959 31039375 452089960 238297295 275099174 556655701 994924302 608301922 168622838 270362398 592838245 612405532 763245541 163296760 279436846 533904997 791395058 891798622 21737135 817788715 268780169 565113157 74561384 616396108 429837874 828124802 824077471 198284734 358429823 994224863 100842110 39582918 325043893 428257321 937956402 794964553 466546762 292177789 32160409 180843649 602822544 486131394 121305541 74208618 504814773 983029180 757111132 139464650 507279342 776639005 806821598 757481727 756583304 679816519 5094105 605569752 987164671 248896490 315376811 517818779 905412059 141435423 341591525 703358514 200673944 333718811 989938754 561443469 239190233 870646012 574017739 232534352 246602185 987978448 604897410 550473476 128015264 932929257 450135305 813076960 286032513 528666699 56754677 854826703 952481297 35856123 144721669 992453067 941872969 18443527 602139475 893995071 859021737 487743410 144079607 586260323 803823918 81059932 430765900 657438663 35137435 248053363 583737929 670196385 137031068 315343957 883727612 873988341 874305964 641866223 396651567 883259553 604856639 134198736 788170460 485057185 403112156 274457235 562009559 177038533 120479084 284694386 512346511 434248611 22371812 183092925 997279642 380813067 620777251 334358328 360186970 638185955 65851837 812791463 250205946 925744479 380103680 406336845 991171163 154178 951772446 64617855 296305761 228013782 732587146 461370690 759933825 452359770 161325501 285270658 725253029 123792290 855456558 957410694 101455342 167054059 43647557 833606029 894924620 446577490 870504716 904274606 726888159 230224160 516024627 593284596 346605617 342957031 362809983 555119749 47057403 206899593 298113708 78430667 952034368 488932975 687755027 860251490 683583213 599790944 749795003 176398158 56832624 539414387 395903132 818747480 156669178 854399936 518848946 708633067 439977985 710793263 380362445 654087710 485501385 133968035 442879727 323907649 917193226 475885548 441362849 976685511 804967424 91535911 451497338 490249165 513712342 369908894 998672498 984660508 721109762 959714524 169795830 719009589 261396454 566640138 809727991 632153355 844394588 167286425 412988437 985403963 790340336 134552378 856793166 607781884 686199590 889276555 682094963 505810308 549834067 146864655 697508063 877038588 971155389 33820039 13724384 157812322 375605516 464906089 412723208 570267162 809161865 881102645 48728504 720931550 641378380 884534082 499227784 685815346 898588657 188892806 844716494 899328052 576145819 530008539 18230889 491402778 285136874 524456134 623255429 396403588 485236994 182272358 499794097 529259834 419298008 483207479 176758869 389225763 416569535 75985408 76045317 210483799 949730355 815431624 875442902 987075304 385635874 631048452 89377165 186154317 574334648 113584212 418221109 500553986 363206826 540240022 195817640 663099434 435667388 725518810 697332208 480005778 806787772 942864439 725829877 639820512 519552795 222281083 843459421 180458411 796681154 794627976 232626767 549434536 630129699 991291717 889910861 778386013 568456576 299543720 833517700 754407621 971927979 362290294 824067194 542507918 809700599 295823756 490069360 950790002 414999221 575851992 267614963 279186551 773830288 585880696 152993840 342162853 737066673 796557822 670788302 538133911 906448830 535518282 840603302 48485656 334805731 622754050 389645506 603426093 85756208 226204669 940723532 213136970 390795772 254745811 786797775 683641385 604021528 413408512 477597299 77056003 532703336 441500689 651879687 347378052 961542117 437150578 221825904 822835357 810518480 338527920 380598202 724896918 952687865 873239412 573956309 748152467 671451806 515182776 867298224 415525681 544670598 705074194 119583860 200481832 435074868 520038284 426962384 97138085 26220310 912895120 766749935 550494481 156863034 929919776 348419271 599579613 960108591 349307579 498874070 593299113 986549150 921349318 948015083 772019874 333226373 947517983 513450457 315798206 925662375 871202821 373713299 658032002 95723197 421932939 590427493 173160171 652577229 350068564 626643983 751518720 939128984 153319789 205696551 906832065 940055836 545146873 876640350 990665149 9889810 954818912 495547720 395554924 541634314 450497998 694428843 925265163 442740234 872653480 873068131 678726589 124776065 103398628 178656460 366766355 874183316 383918604 5564151 536991619 393032047 625130794 188938948 650714666 214855220 154763847 664008380 928500681 453443408 766540460 671811786 626747096 91320076 952978054 292525760 662537920 685861101 872916699 299051593 202406734 423350998 650129050 395035462 630605003 318378175 564087956 766803216 334808404 697200164 568352145 703905956 240110531 439050951 563564564 138360111 219234764 340295159 933091224 718942781 362187760 759363023 885898194 645427357 676169208 121832675 965596416 250239408 658518659 656387844 306317917 177012348 370573744 858159483 435905164 284069460 4340458 174510294 419054817 683439498 908366005 698108074 479454610 856738746 52230074 408237885 117366584 598040422 672043552 813035964 122966301 434755195 69231218 67932527 793296062 297246639 292764446 518876408 256527800 507642089 408031792 917328778 305979853 693345807 157110872 319292401 468486880 132852543 456406358 103339742 225522660 671542016 521315133 319729440 213880960 315471177 557991495 232794673 232185622 950168048 887423141 600108503 378147742 738570688 32918054 750001999 63833561 144108804 174936101 131689228 20607972 740726717 785365641 345388235 261709947 74880911 626867138 886130023 625961275 823842071 166176683 107376698 483457831 486921842 766300543 983881042 650908322 954225989 929135536 856899251 279265181 607113860 200406496 247236043 259208946 530916352 492052118 14409862 99994157 214973720 710001656 248938144 618688575 393660210 952517817 600808403 635021863 548112349 217655661 289941788 734705498 439479674 497616512 199002795 123723486 595018106 614307972 838944528 758565907 401651511 22450331 546201949 399770224 537979015 990781421 156086034 809701584 523571281 751982864 31500786 28442645 625025249 820455830 109518487 288744388 127738909 782437287 940154251 222977879 71033083 416070264 609870578 775137240 259024439 979701009 615570745 461334022 259236813 608516565 480201125 815065414 318534390 533426793 794083777 336963476 1709944 117518719 207606250 368010304 444639115 289928979 314222005 335101309 826505993 624471829 786727302 129189259 723084230 159569422 766368826 956551714 74149905 747695353 907377976 787544606 560163691 82737761 857572392 356819139 159834358 960583680 866715860 225950211 37486106 878247548 665841545 200332690 679277993 484523486 192211608 520366511 981645522 898498733 779292816 315484526 674994147 242869211 713825963 944269229 558094672 678085813 661148044 710125901 266401733 194470243 132626606 633046387 113881282 378937478 108193180 446543002 470089517 454731013 657871705 36760305 356435751 672539988 83913198 658089905 633615223 589315323 700243238 648482564 69891434 172402254 629478212 523945692 700393710 702141112 677798279 811512661 319495257 997382987 542377070 262753042 997764792 379523814 704920244 735306891 440969638 802741789 765399415 853989114 331190896 61681234 217030887 193613004 75948108 757057414 389330857 616051684 623097000 819089071 157164401 864712504 989565224 705756995 439434604 292729000 369854761 862649084 509676188 890844238 879398716 800514670 646920941 454844871 155266491 570663256 403786422 38268885 424091844 847764324 402702717 413917331 893966148 504460476 213766512 526048991 623916971 602389845 506462335 343673192 300252014 37557584 284226083 902988536 860927157 202939911 751767344 406157679 306390508 297924940 567713402 306116052 289363749 801855546 982127182 536632705 395760627 506589434 887766643 5529544 495908607 620424911 681613961 797737685 449170372 80174591 205043631 161696095 994052912 991636195 459755772 774157275 876012749 538152458 884321387 965343101 277848815 220615871 397383170 962674257 623124742 718078769 90418984 746289057 884314254 118286068 600690913 849579465 677631393 571474049 70065949 836889058 626044573 105595798 961670144 900256591 984550948 690485313 511730633 594842437 173808982 368147570 391558106 19697840 419196529 794300821 168209992 608988736 268712388 431540225 747850691 960803683 111981828 556957215 894076335 179188312 742192420 690361188 585483570 515222570 7025096 735116667 201600386 808458859 367804873 849874372 978188326 626382925 589748615 190511606 797228412 676060752 250998374 231765861 94520923 856430734 979445357 833144461 559300521 540811739 334155331 558101788 908277919 273354913 352751540 71362821 941310395 461023311 189711175 620961790 573367190 346938103 899278777 67857690 959700268 517875591 563184677 648892900 683466467 26713754 939850459 435488840 80439479 362611659 980769829 930158002 259580052 343795285 533189534 844423244 509278473 157843311 524475202 267165606 803374441 841336136 576170696 357781725 77542571 63473103 860144118 204892055 138633029 178326699 34074845 627752734 939149093 286067693 947174826 15825893 410844487 615512338 781852879 508001073 705806725 461744765 608981508 162787269 634372201 784032783 569460019 303375509 22473008 590404537 359902482 790698317 358949356 714337718 51410827 264283263 486683736 476930920 332970314 314656475 73759308 388205347 187408446 253973327 742518391 513882841 509138471 14669130 554536327 379148515 819229178 270491487 26930312 635062873 119261134 448495222 853750695 698330353 338960992 603756990 562456494 796126363 874483667 210679455 819425768 259535188 716372672 483598094 743764441 482308722 337245515 498486946 905822829 689158697 705311053 512032297 466411094 236087580 450068410 360844824 934056914 680366596 210805312 320052452 682148700 93321755 519066432 60122295 813679825 870745243 36269636 548862682 237930710 898010477 26847226 934469354 4108287 807722326 257327153 662314757 233346384 971761862 854362601 566917391 827384922 73568559 651728681 52488278 803094518 215819438 525104792 519901078 555278797 772611653 123998387 270397785 480872446 97649811 248921889 684422217 648596450 119850017 906548102 63295229 177383379 90399702 289671145 834852224 979906680 507417503 649868199 132151504 589995501 358995955 869049825 90292500 649186219 765062152 293657159 604783126 421611958 892492836 468822192 498268640 812083402 77093168 821889926 7726717 929549613 680921072 917675012 694353199 945459895 690755273 506718966 232245854 242620767 7872864 253874111 970313769 334739949 408769389 945031232 89420915 473892252 337714734 885458420 461375722 84272961 751584857 963433079 828512386 957986546 539791569 519040056 454329835 956761808 984671861 815210107 407742961 610610649 601146359 809787338 749108735 588075174 281494974 108150256 744382781 654112564 764997753 584869068 743306403 947893671 467390732 814011222 294207241 784722451 248514188 427934917 30844425 816007340 844656765 789591150 29886317 183756610 150432459 625911403 252074628 475469314 895816043 840073936 780509040 114161208 975642901 752905797 716004621 678533336 742695059 160603414 375279118 612171484 941497008 702488070 832472868 597642830 646330832 325169357 969657307 506602526 440373917 759888604 449242498 35727980 803207158 176144854 809728414 286253296 520451994 27641539 432565772 18594951 225192618 667788869 231052464 54159453 833319586 35840571 701952233 598798831 610610522 933079898 654010177 866843567 601303542 980837745 790468767 501228287 822329177 536736437 259554236 131084794 171530530 579133624 733988805 613955547 556104921 274231318 36378575 904717951 984107900 872891420 800729919 114611491 439573031 364412929 21414021 340069228 395132086 436764182 410586618 856169946 510102962 248791533 777011448 66358236 577240863 135258390 692045640 542736985 111418026 285515685 880360168 417431181 333825784 360163377 344944949 37516455 359097499 965088115 946178275 533036470 810917422 858354010 30364123 816593724 104928432 860817923 495151442 898239950 829331064 933799814 106003003 275254031 410925339 838544831 740539437 482378047 379520763 169342446 15734701 322942896 627354100 534995592 662542136 193153980 203996113 454937243 770695999 219651657 251481825 387201390 301937589 730094227 64444690 43609289 844536256 262953651 95871708 939418256 198572167 889186736 813811690 119684264 815696413 810133828 401410797 671405647 67006112 536178625 318031014 894272413 491840040 322579143 372188176 917721979 89699225 478510404 774780277 691291749 209034994 915070464 203627716 572051855 596605382 122239543 867069815 389306702 140964047 326055118 605132573 658767308 390623440 217500507 393848979 804022442 564092588 488827073 560141490 875928398 703458144 402317267 321103177 256038002 164430048 312739787 22103820 980817055 246250881 475474818 687311625 657277845 310164877 211153214 525263429 512362966 412396061 549751177 748226283 869054907 628177196 823088860 328729980 474693924 657830682 690293128 614339186 631560670 36173172 189524214 176883580 585508372 876925636 58228448 266441320 353376526 194128112 213960681 506508492 374929662 426316183 640747200 921768236 320683929 915043685 66804013 958594931 371482204 984932633 344411930 43595314 570074512 876571941 641778042 881090388 33271944 923957192 449491489 787999988 550947485 226383035 40720405 562458707 970341711 517535696 312392322 492200026 323548706 191550848 1058127 668947275 774871359 615845785 265674409 702925957 27437848 779327095 644487104 896557199 476432432 272621762 69380775 515536780 980289699 501685386 527718383 389951949 29023378 450755865 688701843 659904325 412695069 35211563 456618862 418768164 521820505 94057615 847058946 298427210 603000518 310950067 10836504 202489943 189523596 414501523 612208733 471910598 973283488 277480607 614436850 118616348 673456945 323089966 533862376 82766593 686189646 764608624 395101662 584216910 649067664 237644719 69891089 206803867 200510077 352759322 924719649 118437539 298156811 516743206 291995116 204543265 556399085 631552950 215977325 864972893 584131305 23812769 694337933 495343321 577181039 112368063 875738650 526184622 528758792 461232342 701855201 349748957 533527304 910352728 467755018 545201939 750912820 210103969 541080758 937230974 932860596 731562802 214026005 878102146 488349992 534714200 969567628 398832659 182072954 855141827 374673021 929231307 457402569 507471158 122616070 768472501 382378307 570807292 524357748 246888810 707051181 374120966 232745863 385726038 388401559 667815291 705258248 46929341 816415982 296873727 672206094 562300664 295724531 561792632 317290078 517895868 924096763 840936830 617587597 29693635 51739943 795893029 6687284 443395200 32164594 468983261 423689282 317317317 132885959 798331344 670598023 500175883 868512579 37127181 958728362 241707963 161936556 926262223 662398994 447817731 394901674 262316852 963521399 656636031 737306123 550767902 462829533 458840222 682511766 741540568 876929952 509231345 799624965 697010856 749676921 84367861 600099838 683864238 513705543 430753027 801202555 286106569 309035465 970293038 672552009 602403425 435501355 80194024 981910917 650014762 292627018 451827474 715752360 679868045 123802441 858549162 60482882 247458579 895587091 106792866 350367445 453887182 239468598 384576065 684146861 386787600 935547123 180050320 608937843 201051578 708785035 425261021 8038962 989372815 619896228 92679821 776814714 769287956 113187842 584598351 710702409 53363367 691624012 457944456 523659800 905686914 128869895 201422435 203400276 566280879 613869656 77368271 844117834 353279696 823913243 943187047 272840293 643082327 148028239 530195318 655307382 911943111 314461264 21887801 821529139 906670521 169718841 665993503 764767332 852062824 584224454 486579777 174542829 884818466 486842129 714810583 588747662 695057325 179013840 649442493 530524350 468958221 615056340 10870857 840638853 334897670 5159604 83520636 789891638 208421714 118478610 113773995 473454788 523332078 821775645 671383313 207077107 766807122 126781240 728079631 220680228 425644926 218238365 406915180 339932023 421624515 546538906 964721910 228780505 679278150 243263463 113767161 647578860 408617880 518951029 641317507 626810364 924634754 412194679 191566827 123461798 503757030 67719843 980392116 927576034 294972403 967540641 918150243 10861206 951621035 661758103 436110076 489406100 702655835 57848659 612016504 796489969 126937855 430796631 711716290 334963461 530632072 519605072 781278448 848567033 215392212 608983824 33398200 891912910 370319847 531403784 975902899 348491814 177231558 567773560 91454268 824043546 836483127 986735933 288351995 299988934 467952458 31726603 545195902 161675139 25580313 583116065 884471733 292263002 347462122 923222298 150836108 840475380 161342133 505258719 147224994 986930311 98433553 925721794 638096702 900001464 227357831 986482671 276566148 271445500 52879959 334621989 374823317 186130246 145326932 493608900 877469935 532018064 393626216 224341459 172624923 592691171 905364707 495892308 369077121 552495645 241410622 822968984 439578440 862060857 304544822 472409308 907545543 254520366 253525577 317079926 273904483 228999309 195028245 259481500 902331132 287846033 490495194 290874679 24159310 691952799 665682138 767286510 206910040 926432822 79906493 284000637 242720115 641005037 873390980 594717839 909614605 364026830 503523284 944734402 661065697 982598802 570145290 359935238 164210891 312568816 648660886 985547536 362409699 345606870 522031505 561373762 821864008 732221764 134539322 157655073 451665299 584353717 332343932 71457942 367318212 618116589 226669290 716020926 534864427 385919813 471118336 31133454 242969022 252928808 113132156 347623044 522842234 433798638 394399269 652037994 9359621 856382616 750262544 465805615 608911778 550450332 772952923 57356365 562357218 108375361 551729891 570015307 804854029 488249432 61874672 806117391 238867940 953385215 243154749 512665204 949203579 936811016 880472986 801197580 654111536 551604950 825325336 191419197 797073880 220357722 290859325 720824339 184115093 592912260 62621968 68584603 985715914 313974042 172175343 326667598 837311334 583294709 233061270 601391166 532645804 235607116 945300293 444291892 5675022 629879680 292191765 846287917 982826696 885082948 444525112 520666351 720844578 487195648 197643174 100053715 723132235 6566948 846185205 355376744 217651048 205044892 403896827 88029346 576946340 284925412 449753358 941512876 252429402 153836553 814725020 95695580 59636776 40869823 887711000 491606304 381069413 796897817 147448020 754425616 390984139 90146737 312211243 275339339 987259111 49833662 548838442 390920573 538936033 259744480 758517716 85871975 206980762 243552728 676842031 103279140 175734345 841896616 972873905 48966261 344996037 854777027 439223055 138283219 906072148 41614087 238646977 557620216 433296194 819542553 452510205 698922808 733193822 429348098 166521081 665977707 414602591 903710553 137272447 896080893 550864852 296612489 286278417 530874401 458310236 956980947 483258740 767408277 165260846 971271478 951267681 283151124 519174916 869262170 621266492 42880351 647186020 568532374 986517233 210017179 108228264 203370973 727545199 962685386 43400765 354097657 456416437 426691293 586299735 218518840 977270373 978818182 896234448 270692469 307268993 460760323 497447909 170432742 919436194 702090609 600502630 531067941 462565449 167008800 440611880 54306463 931372073 38083966 101034598 463228192 664081999 975515827 507053092 683028227 779927365 147884904 393281769 432332728 726430429 76340414 693652013 295538698 453231850 681683700 68423411 981925286 866871283 208942678 431300629 831015695 311861500 631510800 948554954 581090863 687067593 924335763 940761908 532487382 703763310 407920684 727001105 98478015 396244029 431278843 641196348 874030660 115772176 321800981 534621042 172891967 975975130 332942092 748444519 618017185 157265339 610353277 550693481 120263620 324319907 489036602 354345786 95259140 541321519 777046179 414217245 317800218 477645885 93976101 461616064 567042015 354251442 147472839 813244059 753306498 61889083 887362127 296479220 801146721 402107785 11093833 342280665 30390702 960430763 865535106 469145505 974848071 166526111 423478294 51195249 481798033 79464980 878978544 977277798 432427302 851435797 332876490 418942880 250842521 563804628 149433331 299760543 151654956 991366882 97281507 379253704 262736745 442435419 536673310 820132944 141714962 80632938 45695801 921186724 677761033 798641083 85363012 449323759 467461939 98536206 305430068 63244154 55405641 479865547 190539625 521924668 643570086 940159459 55517691 908518276 807558693 856970512 435372368 280651470 814754564 833466528 146888819 162481680 908266106 509599196 885029480 836444627 908594710 353475447 392676004 285483246 653205179 567081495 400216303 531410506 345248983 712888454 396758058 221829314 239605188 720700545 752987127 87459512 256420809 373472672 211331160 757456955 656434642 927271403 695567556 814246154 60903505 910022772 585736572 777189997 73199375 877223560 849575204 966885074 414492568 108359961 343307612 607030420 388679971 683663975 827845535 569731234 867498200 679357822 319678908 238521396 860928043 83011073 481356509 392931371 477264706 656624170 981233833 67060274 322473518 701813703 393336026 461475261 294550853 91014420 394354240 130426489 695830556 800741866 746902982 809885314 628455530 568300170 900883947 102282916 694458452 694845891 402663977 569012763 757541513 272353202 365183470 101167041 590533586 3746147 998194928 38928805 945457194 479172045 314510514 844395082 444160580 14503240 690082937 38385309 241133967 534113891 867720190 238962479 867019364 539177025 51928515 663432160 174905577 236097917 691592562 940572823 368603853 209856489 79432459 161643519 391489432 435617430 130248432 588975844 449060230 450988884 715900698 95590654 370076980 182868605 382481325 284884054 357880167 162390677 313714560 8630212 976428633 392601322 533492297 187735407 461909014 230286249 146761911 726461972 980906432 763178134 849451997 303395084 928934540 753543384 115565761 726219321 546570634 501863702 881405456 715191216 534328002 310181095 798878472 784923096 423109580 813237222 131701168 603349109 284213173 552458764 761871059 229213415 489999844 58753527 809212992 389546285 637547250 202911138 189400603 812691439 491290293 234199374 679148377 963817874 763318569 173324328 581728539 746850443 435084105 284580399 726595305 475013156 968789535 958009290 510054481 840463487 921695237 519031941 80127480 394328915 962382147 740262711 154300938 949522338 882037111 721715329 153683225 392559652 610013724 681838446 336211293 596182759 968665734 419140972 393374198 880246883 887797715 910580975 905644977 178229564 762950082 839348121 159595563 907598271 267816085 132810403 483918190 132591455 760150156 191541762 488499214 621706939 889821642 297765838 829453514 13334840 989761058 91683412 274090147 579088204 477417988 801354849 683807217 624892183 743742310 413520113 28573953 157288774 78603711 88854477 482817826 556647526 508959179 551015088 750843695 310965846 486705355 653562466 452658333 5597185 94285304 339223873 53375176 738164374 258579831 518581546 900091124 594387623 564143900 882181610 846987131 669290565 897128030 78335376 130408068 591598626 115837286 696515769 229278760 989981366 861451184 408027901 377593651 786914150 816647638 507874333 182232760 5857206 788431846 579379966 496519954 358690064 21641582 875176135 517122981 451669787 580173485 851523216 715092656 563527294 552557143 551709070 409706123 724460320 128587972 866240354 929750713 728429083 943647271 331860146 882932649 366550170 183803566 734695996 600696548 1857987 832877047 966915593 941387304 706576395 15895289 946858407 41685617 849594133 308012911 618433972 597026724 65321070 910949555 127556270 64069766 796970462 774277022 118069275 490543071 460883483 93918474 94667540 133673994 66149124 305223777 226890563 688697829 843775400 766831381 818431935 406561178 805479633 363355963 632162662 703941142 492569653 975111756 717113353 155149462 630937855 977984996 430109751 615734139 496638178 368847030 426213075 332680144 664365428 633925343 94356519 586352504 192818661 491148792 234015126 62029531 240337088 433080770 966596617 978223507 303134229 30001093 140209587 483975248 73116030 536335369 128921592 173834452 479444382 91846860 875973166 634631484 276861837 538168847 23291123 5149815 28786527 54155556 746582666 546140647 90352774 415817231 645048705 930089055 94008700 98802140 852664064 366175095 106813293 41440549 826132286 794764435 209847203 756344448 35807308 97312371 858000903 889677750 25438410 30936795 797543604 893527916 791286753 610460465 592689936 437132782 953959031 398761836 919723517 360969512 376073591 47838892 201532943 858102998 891966109 642461428 446829479 140390739 167678057 129951093 698911433 516133159 258709734 726301135 81317482 172131061 607624908 651690810 752499564 542578441 953836924 907063407 291210697 526999270 29889481 179732220 654412829 421851921 853470922 917260246 779789514 509679663 637863177 526937507 537127682 136104494 339589301 740071453 31421579 811627689 527441272 853912132 847348766 237649478 811070084 698193772 499986407 29779696 718667216 337875091 915676721 533241911 725434930 959095824 338410818 857323380 821497523 670730264 815246664 244821862 894895635 924101178 247582162 993632756 339421017 223945869 995399832 163118851 532911975 257046630 474014556 230054843 896444541 344965098 376355908 675433607 941830796 412809012 902220312 308312238 548548337 748398548 525692296 616397520 461530563 893762872 799377588 82373674 18213227 409368391 85428813 817805678 372090902 963633949 920539631 68651787 627004694 182265821 320946801 348244231 321412897 379893841 222703701 506433483 517150773 983448204 187354505 180241109 674137538 227267370 59088821 619054396 915723093 962268185 104200051 517992239 852862696 114680903 465781939 91192331 506493008 708456491 387045158 529473684 775148658 649562495 43511948 659691299 755395199 606725637 802588064 641853963 726471448 834869503 903583414 615097680 286839193 3332998 77002708 499304162 939351856 988347853 110510003 632316910 537581748 597570500 807973994 934994267 517565618 653436190 620166240 613866436 266304316 630012089 562092694 781599018 287763689 134371524 500161874 825179287 92053249 758962878 841439302 575942293 749606935 398517254 383587257 511615213 587589876 641774530 239305150 264577234 267515511 699903872 797252767 172441726 964905488 801045745 497562635 63863001 200005983 824354837 845750810 611510238 610881854 38465098 440858066 753330446 180349354 551932929 779496818 373616379 92154974 505550767 62836064 232917901 842546817 422167719 181526007 440319318 978038916 764797047 277894244 303013318 874768392 572239119 358704219 806837183 947658671 282355116 94765634 754163385 571005640 613676888 768453998 398603449 671933471 978699750 125602004 596101276 766726248 722173477 30878839 403672871 452810946 808486442 566201422 302877462 119209802 540874092 886738103 222422400 999266118 762896143 349240825 267965073 708917756 351037034 952512698 8437136 378087580 588235342 328633548 536901057 316748976 612184611 553295013 127890705 338089554 323394030 403661468 996554287 264101984 251554782 885684635 97733288 685507113 791014913 366377152 965161372 822782715 544210213 728076174 150094575 462711044 88106877 788506189 975805104 323201669 124219010 613709082 373008438 37034083 632579087 82417459 856033128 859273116 794348953 858339733 830602161 449591874 181925750 792016710 692462752 821166966 301959781 380526498 212540757 926373035 353525911 415497843 439638236 845124481 918793375 803906435 372249418 356512624 336175353 715831205 181565572 623636907 107986714 706558386 717058060 180527084 741925151 270254393 48460811 832557369 773447569 142546070 150992713 848441459 518168403 69339957 762029409 359757330 132074964 117217580 701351150 118864582 406730859 114068172 993840547 865079925 378906642 847099750 79922336 305755482 953907290 320944667 447686220 115657555 914815788 307774992 392046773 268815538 971301217 103578663 303113359 845800375 638911669 652866771 115723797 324211062 965020049 259014770 899915786 891499422 12060422 959856979 45930268 933553621 35155400 975220660 712521703 250379212 369693254 39781468 539856061 437784329 242384974 993220978 697600732 702843781 678924912 35426234 119862597 746768214 91374829 396680462 493150116 341354085 951098880 414207451 575360602 758616358 351131355 356849231 575475853 382247104 252931350 732367984 191510756 506489485 181695094 680138895 320767563 748141239 880791352 35017160 429109024 466926711 187785529 292783532 667763837 498803 291427029 413940005 56629717 711188108 22874096 363601670 8661736 416237652 712925918 700990483 827843584 988072982 427548 640177352 117516193 185129111 283175508 925104742 266793068 473939078 689735429 760498172 975240888 517873217 999926266 726585561 515271277 118716167 383602220 169159917 962606645 105607048 853346108 902682815 260935800 806389541 631082281 950856415 436711104 593124055 464164750 865625226 434455344 820192176 353164469 528095227 445464458 574968423 494299114 855789738 135864398 371883928 334536952 224221802 208246574 304956221 11011126 928148468 132021900 308621368 579757408 289008851 90157492 845620203 656711275 765624002 731526344 144868175 151794893 5394394 111552505 232511751 211890894 98334977 535861183 905531474 774387355 863944702 394816873 962688503 291787188 367992557 489552346 236547205 786865219 231581324 711531824 224611308 482101633 879714884 118648646 467758472 787153414 162071495 585536509 468348449 128677684 493678031 951659991 956290394 130476175 317873436 787538083 553708310 121827851 568548773 452270608 517412595 785887325 457012823 537340196 788766925 154719525 535382661 250676935 82915809 758826066 64515574 66048248 172208215 883204839 995032563 646443643 841887653 436271584 944675331 851801750 505490485 948899276 408309470 485624751 111044642 540302949 706357086 855355307 918889802 582901352 101217611 76821219 335281891 725300489 152015112 377202776 544552838 338439441 824215953 883519242 710385359 146729317 546665356 561387203 2704836 786165313 159451828 799908910 822548498 671979452 680449510 642122511 442337543 724700667 251406815 99616335 535109334 245932974 135980197 667500762 304763912 827222978 703903941 275934228 677535831 593153998 849375211 214590062 802808987 74776586 526000165 773032092 156505628 680749223 21806090 73030698 616230079 183075204 533651095 871376050 23191756 172540562 992115759 982469294 576038963 2378726 933645755 716672306 299034859 48731238 181636580 389792902 979094475 83182840 277500723 566941473 272756691 912812214 190938787 88192116 454392486 347409779 999653558 856666073 574458136 731785439 688744972 316454687 647398088 466802080 254464057 664616352 60752110 883914131 588841314 617283937 351024131 342278856 793770148 214643555 794847336 715801232 852952253 979366688 464558815 574632467 41879350 162988731 916042485 143281176 842786232 724058721 800058308 16301618 165652244 55314670 948639082 880612707 705729432 982606483 875530747 60662308 165684294 650190604 399310607 269706991 889050554 297457158 931896728 640593433 717849432 679027206 769723959 250409053 298515768 682748391 986046516 15349207 362409663 434616971 83772990 662936208 549480404 413671702 482320574 599486248 674685098 220695313 759524836 691745231 72435971 318749613 582807158 545638692 339031475 770550653 668440205 245374253 13463016 770530710 838235073 461705027 518567865 308478199 99727102 452330521 661527311 40633153 572075234 387544004 166852316 733754800 619242676 625590446 338566016 647968425 746536684 509918259 297410407 754737287 817797355 681889066 966059371 790420561 22963586 947042137 786616417 905178057 627136169 384627137 476478322 482003918 596073221 39075742 629969325 108530428 617017394 917170725 366332121 387769362 570243743 378287848 808024953 353761464 865290301 60281689 391018711 654792404 783587494 927255892 948626791 367144278 26595363 68173587 140846916 633590822 546181735 928873415 33954731 858162677 839393540 927763746 473767125 66952005 362129444 141569262 54522534 320516147 13350128 39577045 302777250 837055480 745973364 646667572 578664722 125106464 541215577 89353648 551019748 559519247 594994937 975923117 713386694 504794331 482875281 137149395 797968437 561609255 802201820 246092263 131407052 876947268 352001666 524134116 933653447 723749933 127684336 864018309 395151795 756719226 71274880 889079953 819757917 341602711 748196053 357569194 540158533 118359863 250314116 971649970 985742559 861302382 262763450 57525362 408231282 705176415 530790843 195278747 243623717 384627109 656393896 116260692 545982013 232479727 77175120 515409050 90425688 422884469 920928489 145128926 287622769 257673276 156177656 287128468 678988134 693800118 451522371 991775584 9152855 191057438 439458460 77839374 510873272 749514135 641441982 67589773 605095088 847947320 205879701 259544857 357108689 202321288 383534351 169580710 23292887 351420830 770269979 691722233 846882845 477133774 690242492 954447286 221613134 273424885 305261678 346611930 587185080 116203853 464663662 656197933 947748945 450007479 71753982 699761004 99886898 285996517 135860358 139469505 509869757 18405749 63696447 688237185 329385736 344367096 167334774 131387735 9780323 325285853 416243247 725486607 442512566 173362377 750007858 645195012 191775163 879315190 385031495 431606113 174059734 925695226 874045918 922148009 786974513 759923374 709179257 590120948 518672368 767056256 61835338 751768410 149362924 372464291 596212369 741110975 495878216 568166888 640028863 921372468 488025711 230932767 848572255 710519182 330035528 761800293 319829053 734691356 488302883 336587515 483939095 660828987 995732192 739476181 543682406 272469532 60128325 819626385 554402849 436069137 667713262 681786635 378067922 873129531 252760063 52977067 98730045 718656559 994832682 779780511 755965777 320142871 121168797 673203554 338726652 517233431 253793134 730361075 526923897 355442855 723438443 52067507 827718077 370925740 586434485 157116148 621882639 182309623 320540523 977590504 110835010 306421201 800797981 580872469 998041343 558340359 170162316 538825453 508430394 828963115 510436539 279860587 6376801 846213208 421611423 764187660 376501715 541058 728201089 490761381 851306217 254986864 222097227 412819805 685073118 22276539 341716706 230228572 91211473 10093777 861576283 936053369 343254190 26760163 280549495 242641515 91043833 877899899 717863715 450026730 988728493 656035373 520068408 506037036 48102561 614996628 185555665 969547111 784071959 388849492 664074320 923520146 53544056 396691377 918308303 372034086 712229336 791083999 725326238 871360066 462633186 388927375 444932690 394181936 851829410 962245577 841469505 347216073 631396829 645456964 748479352 850319139 383913663 380656779 157008319 780266852 460080924 721861971 767516992 108284840 832507929 23108796 117736420 463277255 825954764 34257271 883123593 769747126 60627685 656193411 251108198 951526449 883537027 913673758 447118847 663711998 418805300 590833896 353052215 3503166 583661955 782400019 819310647 773693038 398334087 179195070 316328603 904274646 51592133 441724196 509750217 239624555 130241685 609457988 701549251 147897553 658590408 688896519 634301913 477698421 175480632 907278535 26937193 299535040 268161134 108873764 954401042 851302547 7217880 347725582 628874242 177753991 926300901 748805007 782924542 933658964 296864572 408979202 163590366 41142292 31992629 612909775 656907884 687808693 924211271 907483836 429872492 989672282 716355552 228339324 351389589 702130028 301235486 672811790 583116859 472414117 507142753 291002116 814109439 142579632 945943348 764412215 2938199 342235982 667421828 923871487 399949416 493338091 476412953 704530371 198887051 690226298 897691789 925658958 481224664 960387714 987787358 963540420 872949418 163029052 184801079 84923712 237222900 781995614 501131208 943650013 758325527 303090798 41889561 189668772 990506631 585314101 368672345 928202210 844316716 733047337 360228279 543386829 819032922 653936674 69749246 136246187 812925499 744506446 888968174 154775751 795986856 714892938 973453789 552652289 361517954 838356247 62693576 610462913 984068003 13007611 517890516 376040365 127091719 508394170 457605934 835921988 689144742 601047772 868154142 426832080 328345791 235946164 524266511 574094609 184684725 895736840 85094990 911876763 714298034 67078001 324115079 775717663 435307279 948054097 764596907 91630608 465770183 521495023 61792118 652737644 117794641 961568491 238917344 670782400 182366611 691363153 300054730 369712367 849580453 768358459 924188479 72204321 189168268 189889505 773278418 504035002 305403552 415898020 946581810 769425823 862717973 246750513 999030927 934561260 609774413 666826032 205033900 58380922 221511081 990256493 62431749 174654074 864986559 184332853 586256231 571707154 280451370 681889185 707175960 475195722 115726769 702178962 728352651 719107141 95654461 127097941 220324142 669223332 321930253 520723574 766664189 680574029 216843307 111944786 516393221 797144673 22497162 790078092 984217 716077262 928296448 661294133 288473614 726868421 658897262 444865917 692880298 443030553 32849417 884438900 570079390 521260657 985669478 492870545 9758890 693591130 363910281 225104142 98727278 690036315 440707618 689074748 347194732 551329329 536397489 844107516 493001586 294079961 227038723 330664596 668822077 877201196 63397556 969492019 881268020 888293086 677595302 979853995 313132229 136275212 384217965 287689108 491930183 530011067 399386401 38224636 417512408 41089404 148321616 487455616 537967506 214113842 921882583 476711624 959359049 319923320 799876119 270259552 184609233 637811079 732408973 961947187 118502452 355554670 184868482 88630673 867044161 142404062 813972290 107874521 506684323 54261743 760068463 484315997 910749602 856305811 883216700 497861692 910397672 325131776 339118746 285949144 136120155 895397997 460384280 173606416 973995197 511823229 963599026 134844338 231859435 905823477 263946686 903896681 510358472 703579711 675146256 683908637 3323436 8142900 867071874 728258100 471339111 16518497 806786911 714867443 292272367 561291120 650987203 34931371 449640043 805365366 131793507 844827494 638536180 829562073 165619966 687674281 652523939 134974468 193486363 508997588 657720669 707412515 898862056 807352121 746596495 887687124 419207344 337498433 769472111 103834027 325068547 343170294 957150741 574536509 532439933 776625430 338750263 696155921 515052400 516265587 925362388 869196358 23900618 167020646 80002120 884200040 261114761 463769931 772196992 913679830 774576148 958339981 84474536 232020672 744618955 218727300 629053872 991936578 3734985 115247984 392512195 554094320 779609353 538567003 384946764 745578640 149258033 539041479 552238399 348686467 999890161 559985318 832838466 184432600 776549200 34669435 227912663 427146443 668157174 541348637 969061648 905968092 994228911 517701276 400897153 391610764 532964899 455658057 153947007 675641359 409183022 657693521 414020428 590933455 511012303 813344080 331150790 700157349 668945779 189095152 549164982 353330269 9853919 296284757 49259198 213211796 976566694 245706191 944149347 644974332 243964579 321641725 182989461 476019839 129004204 451518810 68227315 35712753 72486906 150672371 477277995 46205292 569684007 243811537 141321337 584853520 4652141 817540029 842220384 165067990 673263693 568761219 114315180 950641975 406540318 189498545 197767330 807631212 573485037 504361472 348802773 599087980 520686297 179148957 856168690 274996284 786154605 618684843 440153284 608254820 488525631 250749601 388623098 775961662 694980448 277360041 901625426 538861424 709504730 684212401 612387725 653252086 94032752 892961972 846241945 653021401 992500645 282846644 80036658 888535205 683653412 697516049 897611574 635811004 316281724 557340860 817594523 550085851 183517832 394895412 615603806 551876959 384874757 751406678 932736951 135121191 280111609 453498833 534908471 612168856 153081881 777073884 502460620 318214983 671225095 605174223 787839524 390077525 495245807 650345320 169822203 138128472 204547327 406841139 307247500 539372518 464960373 432324819 543504837 776831809 836673328 523121351 463333533 390238420 573220278 730383946 746549766 343650993 468269133 204900710 267058351 343074112 620573128 734027510 999068931 203155254 319191938 540151838 732493668 797823416 353886767 324516611 620456964 373289283 770755803 236344122 269297778 754395250 536407119 579710107 470900614 39653641 197102383 87437045 30972576 296174921 593028660 839168609 217696657 268945698 270670289 359035058 952227294 492298149 907737776 888367096 665101417 766565199 620827361 345960790 757202383 941022272 583624836 919125243 371910652 685390760 145857114 947246632 499293623 396176408 531835055 192931766 274407916 757568210 124521958 492893595 799215097 397716092 318854783 446977368 11837758 217793814 463788066 310075679 15549 600427991 535350413 149574129 475729078 877529811 750552244 702466639 469461661 651172793 871046437 631357237 643989482 230225521 554831300 98802877 339095430 875815566 421066809 966931283 80851742 515440462 6243875 808250214 47493962 811283913 940419200 936648876 388858692 977471546 74442531 99402248 34655769 910260681 348488403 670643126 99852288 922971144 853773392 495595535 773554054 285397576 323140978 679335511 949259292 190341520 34316862 802408320 844194215 885813984 653525483 676656014 692536333 183017677 247203975 956170425 772992155 966151934 132596502 49870114 2278021 490397110 27052043 557523426 545984218 872190943 150104116 932595092 71802810 898121636 118472011 38308218 823687320 197039721 837594711 499847673 283630721 837309553 409407763 172544871 138222988 23066483 678537976 368286322 408267670 282594253 690388196 138170383 848592476 675978172 240119961 385698889 660982968 763204352 903643012 107838819 15048167 397858147 685228468 336606216 244829868 139419140 610751981 720104042 23511825 402674892 389853399 127186640 623124067 734629195 326377432 786132256 129261194 937398010 866716331 147147548 286185708 590095715 654220264 677224213 927840954 628819088 894789454 888271197 425587330 823852670 422298117 525778278 695231435 510723737 234156326 538750668 111560573 409692971 616374953 447523776 928595733 342962607 874472140 432490881 846787625 750348613 296579155 135896466 843914460 751699995 507619241 614784223 628698030 518975354 169434192 59371338 332010629 152067450 758480084 365369513 406318763 72737278 999093288 146169332 242426904 955075758 170312572 906412869 25459598 954391343 480698732 454507113 723976354 849012720 239630625 688297672 255028712 122110646 795940682 159916021 359624650 955481277 9018685 659064200 629316279 381224174 331529450 332975806 805345169 137588526 888380748 163089519 92935746 870925883 786466676 302410291 977761206 832087102 45198459 475293419 63958198 572640910 224768311 160135523 145037676 874050231 174990858 86013015 107772464 961889151 233354759 610120083 908276246 982981936 655778117 2491145 528422840 112813873 792012382 225355032 993792372 59779266 133790688 651829499 180991116 170789169 77398177 488842204 999587759 77504081 583957603 727831788 638667250 895189327 472537186 15566087 442013365 814048370 972305151 754862775 746089266 958424534 502774280 327927735 756320449 162026555 81704466 984518472 496978843 677403245 505854922 793094234 169628584 662557618 103884746 563745033 712326939 759114510 390202957 894574361 488990314 403280833 517517954 279813259 618189706 487588755 507313516 27987601 894903812 724349804 771190424 301780619 996534537 519403337 806003976 432837009 6899997 648107791 706644050 637879062 734963346 998538057 109161592 579349769 424099158 748351666 616697111 320605114 501462026 880987523 545800609 227567126 825256967 486941124 832809030 30846025 882765278 801756186 424080411 563307799 485439734 566770099 116601144 589175498 173057765 519389742 75833224 957725564 657708237 468935332 856571134 60852442 278964648 492584183 548239959 668361615 148981895 195483573 833131905 592665319 346416264 415296027 295585693 201437129 122087112 701668704 420155635 874934972 709247783 71395980 554717417 543221858 380026535 517588783 775326422 332236889 121057107 294562104 962369320 323037705 576195273 307955333 72129191 894772273 342903811 87846600 690195303 266596120 808211663 318509881 378077105 819570513 134067351 856928373 236266816 304429619 901380524 20979446 572467056 746338103 5608371 180200766 740816540 601384999 955768568 652451154 165551566 25286164 678765318 29602320 420787285 729999774 792524426 188799917 810309373 321350665 569398336 636099875 338740946 356543380 96541969 924521424 132001848 859220991 389202381 1102226 401090807 146314563 675646926 814266474 973721820 735968040 391301898 435003425 195960964 999292613 152071451 414448419 748970188 423973864 731556595 769705592 240254494 582486655 326567510 526169394 786015737 502903170 254596837 734063892 670201207 944324884 809677101 712083258 88161353 807207329 745395798 754888222 123076370 351310292 501921162 357167722 192355714 817041353 261527506 637174711 220746105 265641532 524951870 129228832 336394065 490367608 631377683 945931870 735406881 23242642 151708735 753641357 628151810 830853007 100025172 804700163 559186424 132538493 346433907 33874836 85950096 877920955 286089147 546142181 501485966 908773528 202115499 63580445 140416106 563140294 56546178 908136522 105619538 592653561 685446535 310360969 195518351 677937370 503535462 833397069 320885400 855531664 123752760 681316115 968149497 602241857 597790351 881765512 161796660 917842878 937676136 69512803 758514674 603375635 371863007 851874559 320691460 529614964 891909401 544213494 759161058 861053315 9078958 138457444 871046415 438651941 541416214 800733195 710629135 678176897 377685892 979173692 66870895 722713756 672915160 488844534 762342995 732876512 284827714 274430656 3883202 655194079 493581358 948113826 831934760 298256822 191403181 408359788 688207400 694862228 747136431 902022066 364805686 473065283 118166927 763407747 119299263 482174998 457240967 647364592 184803287 98048447 908138283 320065233 21103873 705345644 683199555 486570001 997369096 150072558 523695251 111782664 256968080 339462888 101145113 921496478 592734206 701138763 662137147 329419807 125014140 315309329 282082925 34037292 616496674 311634092 933858795 308785294 791286103 185449683 295444074 727780903 234382342 463192556 59333197 620473823 211798653 275058634 577884541 571188421 300255010 701918059 981170225 368261895 974571724 40080371 558158711 458316915 603655731 262589348 407992986 13793249 748772077 520973076 439037443 272633560 263574925 77458339 510997617 88833721 585179707 177660999 12163663 299910134 966432754 482603298 552729434 956459192 234970300 946419975 726999775 378891034 444014189 752673026 998728346 439985989 206079586 759983838 544866207 550446052 150106038 316033722 907578386 637956543 753396193 237368358 730646916 492067534 51649599 895036113 613401802 713667733 979350733 439670666 477123430 190668798 233078727 547618124 250442591 314285880 597282282 452010682 124327604 894963135 652065531 120490000 921855320 713390524 889354506 215319686 930157169 295230931 921336557 120068706 872284865 729546651 960254567 193425491 548561873 351545525 578662341 260503791 617291444 919011746 515197965 232469183 796035767 461057218 90156584 594451693 79614218 819300546 850266517 51628611 9754629 701447163 602006749 440312193 661301517 556459781 899472883 419220466 641471769 884102405 518865548 863260359 624953656 784490237 114303241 432986700 269229818 10734704 331700513 194874927 413219709 700245761 712304728 513775629 41118242 264294586 497152043 307469429 895287802 503023541 29114678 429152512 750814828 994761912 814089154 997582508 679472598 809798869 231954531 756776121 213578937 34236648 72519432 551129554 785145035 790258931 261658269 665530244 211073035 917279751 688332181 655917607 144545438 520693898 912890737 901211096 81757408 244380719 789207713 738374438 405345875 349828792 750729346 820722926 91046519 182094507 540720749 336590269 292890187 763201571 881827219 675314675 38173132 728414182 736649356 523158315 339918129 708941251 268169238 922340197 597631546 234195103 903657953 43101635 259502292 517191528 789777289 295177576 281952382 137410288 813191352 825527914 398197829 851983174 436369188 952552603 355914328 887646457 997145978 543081305 20103369 722038031 104145115 41325546 917865700 718270293 753719924 130343373 605064474 838810952 167445494 358998373 525664129 649635797 951629385 162250858 209691873 697023976 493189907 395142264 717480355 258838546 901079937 975374860 7718519 688070561 595099544 746303123 951109997 745581644 300006983 147285451 491679461 377782720 595097978 162916878 835741522 516477031 200751209 497583747 743282512 983620044 684055223 176051725 501409173 117827801 514274134 747132189 227686935 34224350 417100908 64762684 294194077 767394350 380693666 24242493 690325203 664388384 963164889 185209796 316785154 126714001 662287402 993919860 810635049 719296220 983476573 26573229 953166539 509076642 139809710 745859779 181018480 115960324 415808375 231572961 932970102 741489559 535271812 505131444 747440737 634899163 93182315 902908305 449705373 278718192 506784917 448959473 898714338 455990474 887146393 49746825 557647165 55359155 208633265 16594737 731804518 863946877 560322626 743657523 120363384 212859059 696153643 104523159 739402461 476852022 863184136 230680652 399041671 654275512 791219956 721489282 151613540 979847974 338629438 292909495 162082029 964554401 622639347 277534630 395647028 68554299 191413245 128350933 690939364 851121267 457708643 249063919 184433821 23078651 52759073 940984344 952945764 607738387 963113854 123339309 497136416 285273106 642493241 290955868 211408711 796786570 306212316 111470627 155900807 226437213 810035137 455191925 128250794 736364881 448893550 903761885 911231879 229734737 528161705 931275297 501768410 639508956 235616456 180991352 847664349 809270074 747686410 209777182 261626340 709454463 311190642 252310180 940215462 524901174 137586171 215154438 624937297 596195030 316331452 298647100 204438728 531353569 485846677 334729742 376743617 387268414 348766382 404342280 883372807 107660025 309427536 549781984 909996002 245233610 503190766 287183531 950352357 723778999 85181583 183320763 129108328 624047647 174336780 173058992 549622072 397919508 695023487 826405875 42081431 304686247 827985439 322948100 389887960 45657451 42000598 989169797 369449162 543716421 119133793 938616254 238094205 879203773 901742378 543397829 136383209 154932685 857856688 706588519 430119542 745078232 215206659 629334262 458747896 732816281 467881554 888172565 956146632 749293552 508789523 849796274 719564259 627610101 86296499 840629059 294150474 399749319 812048193 358256214 331087094 723013159 64464222 8198898 584705969 410856589 563328754 372898594 788365449 564813388 867496444 483730418 426491658 405983014 802175591 913598599 848426819 122181457 950460571 179124504 324053004 370765204 135560554 234918405 532925302 511278991 942975735 66699204 953680121 89605252 405840517 559737915 12870145 330529913 284703555 614848009 63720854 199017795 496682290 158918660 851334934 820555780 391977257 902617949 419738268 215022778 165949344 662797427 461051267 223172422 153174694 872116708 425277953 339244 264706573 879193440 652818063 610064706 222236326 7984963 973089522 788241011 777977838 572328932 983818157 68118123 218809079 659260384 62048194 31795503 647905540 332086829 897785642 677724607 762834854 21277627 234862965 410543386 760581888 811155163 778781783 175429304 215898552 774088957 881637061 989293733 113034093 892927744 466702625 889554246 263664282 92494088 824722676 232821277 868281313 977989135 528914067 528183956 959503292 262916480 253505342 449620535 457053401 431336881 583229725 33643768 182646847 393236199 598521620 445932220 815980083 747965474 182468816 362231492 514507426 995076335 936598883 769251853 302778112 108684705 590926739 902237213 839134876 725110769 432401525 882305164 649163900 355675760 206034940 944337652 600501100 10294567 326402608 257769978 933490550 735164242 220113686 645960589 403817807 301854082 808115219 598456905 730574360 981833570 929496345 427240248 514037627 222019541 584414056 77598104 604761270 407078142 40289438 947465870 407505795 63040700 578450597 992760671 273612081 171461905 408523499 432659143 40354899 158550057 33618237 167956473 215063295 388803707 843068810 194073810 492601951 629809640 722297536 126740867 809896035 162497909 822451688 477591648 564148232 504590099 562860463 848570138 429420688 637868785 409874948 176567983 613322085 769273417 630024066 907020054 334683234 68929870 940891558 990820422 648542954 305781688 759442540 479113676 572020766 221825760 384243169 59178242 196032330 810513077 40025653 590827118 798888634 4573974 4095204 54981248 789439424 911626803 845420299 635608184 939054885 618219966 684606834 719283698 520464833 308742860 747077619 18240343 451955349 816238726 72539808 780490331 859686031 911230513 753778845 135971537 892625863 538126059 718373509 917644201 659213237 488687238 396084130 740414222 546106981 116004107 877861448 770785743 164559882 3055770 126451205 933180135 534688795 450043759 429560079 617558413 812986808 467361482 352182495 72029876 418742768 281069208 295139784 994635916 754769549 241546069 116510909 369477418 817385761 664560097 101791088 477242356 776718274 192127243 626826163 88703558 782545836 854434902 306680005 983371692 246185632 77874323 790585257 314277366 504389375 32510313 15739413 755575926 383827042 499399557 60682035 570379681 356182418 221894616 88114313 969688877 435500969 421829887 351278337 322587970 22509654 895990140 614892158 285226072 413782362 552631336 499564979 551850823 356583281 561847368 771709668 987566184 861866339 44909111 723210417 943863471 765099695 769495264 184907368 29599757 209577752 706184831 847335334 94646524 555539169 706395597 947414358 814931678 639210483 447479938 362391227 902954283 891487784 99686409 865521093 176822739 716410702 725249941 196384256 449310291 923422571 410534531 20304973 980880226 806181868 447555247 329680995 383600220 326245950 606492717 510068650 172862081 380560362 747933957 959408380 229468408 494460813 342386779 535493762 604538413 511968239 441807669 149790307 592446782 974316213 74449527 505455517 821676473 339503763 371465850 834782165 592988104 533417266 973196734 225773225 99721030 261790117 823573713 237205243 735615123 870726437 68641754 544772066 705818277 972074808 590001115 893323613 350498633 334155481 717373447 266632156 374283217 881005263 481351011 224180849 718062025 495090122 873369819 490285569 115808022 243380179 652878806 138646022 133785403 612224504 251494895 585741751 787720327 177279691 909428788 577243848 358851728 805330641 13767850 681258872 42050783 69789271 370574493 726317828 879801660 205540167 375589524 598537600 274812649 327084039 944941218 121382211 89714187 395627901 810306616 441850119 936523003 760913762 332536931 790177057 991845362 606290505 971469522 994435101 387860365 214511837 82942112 624643546 633748427 330120434 284827682 624425892 837784716 237662966 83933707 773477493 615046834 37296057 582550472 127069338 137251551 993524564 546772654 877000455 800363774 607886712 815474018 363488564 478289268 445749283 991868363 203674018 611549544 561181664 112548058 794003860 409720549 569230346 443469136 97934463 170757365 187004604 505230579 42179777 276024136 379767252 694303561 594146654 862838626 890994679 242308344 97166856 658764945 37230368 807936165 668914973 627409919 881171209 788173613 662330778 477845028 243516185 370387003 100934714 910653499 31983304 541014024 217514201 197007392 488668890 577798980 750157741 633051364 270765430 571881236 540689263 732352245 865800126 417708095 25120636 833247086 140131493 679564298 481889824 45237799 933802067 799832330 198285743 130752440 818037620 14294520 323707189 672735807 794674028 663532338 36986090 787351512 480206357 720628161 454115135 849602966 333770531 323015984 777104762 120178283 411749297 434174312 65849503 551094225 714022749 167742534 123745949 669583118 268944923 572246848 193193910 969121886 410773510 429861461 839152165 134122353 999033933 339734009 276918609 495791806 509692412 473303876 491270248 365875851 166140380 554855875 378226507 82331635 567716044 997419769 495399410 268966105 33864725 891975653 927644186 679553246 570707630 927601944 716901944 335459515 934244105 261325813 196301049 301463621 455381220 283499069 556416559 527462579 854552484 430291760 337091007 387082433 43799609 419972766 884196936 621932034 761032443 961342228 51201689 740744019 309548664 816979080 852366134 500895416 178933963 281925079 276273514 233490294 358282621 414609723 183012430 327902221 185766360 753532109 73076653 541508669 499575156 387025003 495818245 634984503 627941113 509374098 420354318 881080612 372029124 932310407 957127925 65901612 240033007 973810936 212552369 775002193 889736549 818685722 270715375 691849003 718342209 44368708 400566330 199140138 488929159 846540037 955780051 821542584 885637997 665065219 268834673 578357098 257197358 792728444 34825721 826404025 427249808 673590861 637545511 970276005 516706248 72823863 358357678 124139664 209198138 856941749 844729753 380542144 414392775 763852404 233478348 998563933 827155752 837726295 172448260 467051308 3524930 306769137 684947845 113781101 576776265 41240076 642560656 212469780 554593575 187782563 224062118 869977940 377750909 691174892 164277810 23430592 950426724 417787221 196993518 564239868 981977073 194275830 576603778 502619534 657581942 69179229 103696716 470968318 122841363 591095311 880775047 956645349 812959088 705250720 814845909 406230880 790672631 106880515 992508858 318889965 368836024 76490306 12811855 601226145 899873210 650282336 317905390 792207453 894397765 693214905 26307735 221945752 790601473 644151622 448112300 301808399 674186382 299097089 929362558 701058983 987502600 526515669 560997864 889769981 527292169 734122746 63265552 164301914 725451698 315773433 136323341 820650291 292602732 197026506 153871301 420587730 117696647 680523954 677644685 389857360 936527603 442544242 353758529 774989086 711551469 19955246 355303098 718829968 541816580 47270274 376022104 983300782 957042088 181048958 152538018 278827852 186239021 45943825 756058176 986912915 319152289 861810979 860324708 583336300 890724553 232176073 210157695 712179872 189528125 646353064 854311068 399528550 278637564 601002787 661536331 610452824 636371397 909927206 669872608 822605029 290444227 918553481 657208687 668919391 949963794 204161991 461998104 404914920 942894937 28749541 223282123 249203953 640126356 219224347 171061113 959413359 153516396 490126603 89157905 66153782 267383315 79544850 726585269 53804690 912172778 689250405 312591895 94117498 194188049 87102200 503307040 70411893 540050395 314062206 649130860 860604015 625251696 760682558 997707068 104348131 184281331 727262751 209892524 713603433 33797758 307479757 957356494 379768730 941362507 769483249 859151051 301193668 529272069 701864115 242822618 745399107 395157090 511138237 129139697 55767485 304860357 247840917 662759482 95028972 480888510 576714481 595296144 827893150 432281009 330834891 27001141 411765043 95452741 95218435 359647865 422967837 603832385 252435146 805768259 512834106 345868102 174732813 343043496 169459100 593094063 549108204 847910020 2811827 564914293 819803227 364326944 905185356 534030782 656656640 565638801 789395311 761763728 423579291 349927970 719987720 180871278 190767040 24111684 628150123 856406291 220168607 65891113 728432593 584771135 54610212 161995785 112895702 168689947 742799952 900898457 433517493 977714824 957710992 443522773 201714256 599863692 696602046 155236771 214572526 999156380 367134930 123922155 871504968 947909692 414283439 807494399 933564740 360253663 138552770 567129872 718196943 870342733 473538451 333585714 61273863 850834512 841141475 9910148 646419690 599451285 976701504 162328157 623193677 346880919 296912869 251752913 808937019 758874339 837069817 455044785 232441420 931561989 484786077 445383452 646115197 405603733 379155157 780489622 14639145 16699175 338217284 543702315 4980091 624535075 88344495 874191397 738092420 677155185 479996144 876604385 743909654 89075941 692407405 216990341 624662345 336602 685872351 823440072 870455797 253819528 872787281 612339394 553626253 458730752 173945287 464493187 745108452 700408007 944255752 348372010 42536600 597562645 8519818 683449653 48269403 306564280 511758531 118527978 804912200 285974760 549363155 981445555 341233041 335585339 925845498 904507619 536920988 358067044 276514863 457713156 932764442 27782827 245185292 661467618 869684528 599657746 308525124 926019790 277339059 681271276 206958859 203139151 388436275 822675417 998276808 485119278 683872459 31402095 93773532 900802895 549700267 42546939 917716147 398700853 949821860 427375970 660177061 590658233 321828183 478419430 534023525 510961813 197682101 804692196 801236052 741067942 352989270 307490506 699219461 807487041 699536963 184783794 557767281 145216865 927978716 867516565 55405948 459465510 788145381 369791439 100251022 497199166 253721529 295880948 368527789 820195436 187403777 684442976 994261423 260930101 412196182 948560210 496386640 144257041 63158686 356328647 82015119 796334857 828329949 401361395 457277599 572944722 676221744 721453498 248328831 84224364 943983110 676733101 436547672 921872483 171658086 853857680 469732705 216584435 768962928 841784642 876680524 568415463 538551843 384342220 699674606 950938144 216512710 19686953 932836148 195179437 849591066 84382646 118647216 32718216 751024455 866099513 516449527 57413626 327277357 541306754 615824216 778666654 954028206 504324350 368706336 708791366 318477698 473230837 999838161 665722080 837565611 654874908 634281420 193704860 495005061 537898492 760942679 974071197 706913022 119635106 865030974 393835008 937817414 240342522 393756574 684884108 948648177 785013402 612582641 268200163 505886888 294845083 131114229 308634275 27354992 765489664 884395109 688778934 263243539 861089421 453154840 255804030 99945916 600664612 613865853 137624718 972914656 941704429 816605905 571679100 134094814 383997996 966732134 215195077 714874356 512746238 799338912 774312243 97980551 661987795 332204678 801616149 339126214 298079763 356727990 116353647 908506658 794502820 225007495 773495832 4107913 344053805 721747882 213045814 11356237 757247957 354750987 25947577 379112780 457763601 436268495 46769932 262804262 763621172 140971123 27445196 918657267 432731545 204390288 858732223 653359905 847291998 707228102 742642656 670089580 152189652 694034513 829769282 610787398 520069874 105687453 296367649 518155934 763934080 327930859 21142287 83067389 430211758 759946300 733289929 236202243 673068450 731524598 798436336 996321180 862936327 54523785 400182573 893348144 283845818 721822847 72606111 143067192 247795025 126515709 402305905 723918439 151681222 869931022 424769125 952800441 894488357 765976132 717508950 968044613 303089716 962866310 615588431 334538025 645741389 276544212 911954879 672283208 398736098 875356159 360069081 880601998 786791959 709638176 948167681 791184606 412048615 515949082 120348366 940503860 871760176 573443960 949313562 461010338 843453318 384464913 782715470 660515709 79763897 45641215 869323882 822276499 124247457 29083829 886173731 531614186 199011526 359908815 54083299 604122292 812623596 739220628 397454175 257828502 580912184 829033893 364133760 987027719 233770927 831964323 677152673 166819748 638086957 993349372 722826815 243864831 23671742 232141683 778563522 751330517 760157838 159911992 581639709 54811201 154987673 929905344 105302483 353067827 520523955 546987815 104538071 446411235 192603524 868473721 46499474 274142289 640003547 809980725 64384865 949264603 122034415 392977173 351158789 79378255 16746703 222037951 327368052 640154457 40603915 436897435 566550727 668960806 741059016 59769849 319206488 947943046 675251279 786817039 13103565 346916411 660697107 522111113 559916980 486077305 863714406 200879930 989821470 420577784 508008423 757417533 469548781 253812031 234041053 229600624 180954734 991991104 433896906 286333208 651132512 229421295 547015263 26346177 386533273 680157907 439998723 419416534 544001402 996530984 890611096 730070903 742087966 367361590 10978809 550466696 207410128 736921523 253263441 13304633 317775034 40834182 403181306 238633971 965140378 228266106 353521103 261971432 509156856 598563293 103231816 536301576 763790371 316242306 918591121 464800786 441038285 126489049 143338381 771430043 472746273 440224208 348595831 734067443 471643275 355476039 757888919 142900009 950814210 863813424 465125261 604196113 809771908 707976919 341956668 816387200 452057588 350500851 9627671 964756756 905315209 420333270 109748725 896834940 929233645 449797293 614754405 786514936 909391835 560769210 602900926 825661940 618459431 76552783 243102395 885275606 738236254 791903234 734535041 651609056 936774579 761033665 813192113 359929580 315577443 664346863 158794687 750547881 973343422 821455332 607132645 486204282 523662989 305289821 314414698 78304866 340224604 469054410 96560892 668608503 716318658 74559346 447593385 801818099 278755209 691545637 330991720 465275437 372288275 7950526 672157885 396373003 569436407 120732382 732873352 118999318 517309271 635784983 775839285 292576657 653685859 638127660 748833951 617681598 920665245 124903545 272941328 72064045 763268040 165602786 982970426 489257802 819771147 124343597 207597085 83322221 799744669 787842709 783904823 13931611 382318228 286215390 727470862 63854561 277067144 658899787 131952010 200902570 792347137 499550611 87251951 814741686 592715058 136569990 128975606 37354072 782671331 811305135 115944723 654664422 797239737 736299864 100365158 782141480 814073513 602681934 508346137 957765285 24970492 207790240 271138706 916110029 643244421 968742653 900812247 375225330 54364655 487856455 570361743 204017043 872077616 359692870 906895277 792972609 408809832 897924958 183803078 310271145 102994815 908112108 885094296 176331150 648105155 878528806 314852043 626950046 313978362 754745356 851557659 715413784 963762191 421295307 771468138 828191431 406015192 113491642 484634508 883469428 760754269 926212463 348856287 410996071 850317589 726512550 337056075 756301160 530202830 678622068 922614428 461667329 907540299 527518811 650008677 568778234 9734125 377956077 331067296 292890018 258002587 516447341 920885268 569596921 282577230 833175064 668326230 993765217 189057592 444060996 470698776 304338100 316649362 857952330 245570108 31355987 848686662 932264235 987782029 73764817 338005925 113926953 683858591 736904243 760523744 105093390 622081466 138727796 608195621 435684535 367998181 3681529 615250145 231970226 585841039 576000068 111918563 558163847 640174247 721442829 940818942 575296550 951907405 241874601 448719756 235589950 323860944 459892376 653030620 527301487 812455358 251693239 275044085 988139422 312936198 323917413 223887785 230014429 95126868 268806695 651793551 402708010 357232286 978642333 921251076 206264978 326187169 790042118 946880986 651984278 988806713 957976328 113296779 500663528 443054 876148868 568799616 916409421 920725033 192694993 206213357 497544597 22752758 647781104 252550871 682664145 222066388 931988686 121536120 166550523 926260870 683518903 585582105 32479133 231170070 104033766 13119065 101716359 300266941 206833312 627790579 28304067 274794895 436555905 188534985 647607284 800268848 866848748 792043569 516938753 483805068 483773200 294752698 211309807 738296023 22903024 976160352 277142613 662962945 749889072 349152871 289901510 600969820 274944180 772144090 97053163 221465850 146363552 631414196 335376959 742791142 391283834 121972867 808035718 575039366 540810540 129911980 495262139 354184405 933336189 522445911 239108850 254751555 898529162 912845074 917349086 472063823 643421632 227606495 393792573 746901529 637338066 112910825 215754667 252751996 609525161 759125093 827973782 982488474 731148970 358587249 909510422 853855234 682743771 644545832 411327619 291975565 114334709 753939021 588123718 782275072 756010015 420600953 483469326 672421698 939278706 651225954 20078217 858260841 896015830 2645807 291213326 623507315 114476874 195234291 339254821 386500611 747142166 955524120 130879203 891474834 664822762 467279746 784510254 739530645 221197864 630969348 13794938 613648919 477198259 94215495 495965872 461509138 973763748 138477228 806099860 57519102 554002281 569190194 582014958 123216547 50014294 287865173 130075660 961588425 897496772 612772812 565146677 769562648 805155819 884130455 843201374 818561170 988790101 156721383 27055819 538113476 196289253 527453891 971710188 458596504 477437536 860458433 712961305 768555564 690770213 805193132 914252005 510871595 172757495 702414900 273615415 463216817 325123076 5307151 723126501 650969309 781690352 467088957 191249218 290246105 872964445 374019918 853305416 214816996 361301664 766231570 209536533 737318082 350078579 427541907 627272941 512327659 223287706 214563831 585311812 89249341 562479169 866447523 515813307 721339766 67503804 410025355 382577558 726084808 244793204 791410055 384287825 69601216 113751191 7019368 800700321 682922819 881693017 355457338 327114866 959544886 572630919 59468918 162095448 566638895 192350547 189072921 807189678 467579734 25000642 174861904 664284003 419973104 142788549 812776435 377315389 581914578 671098385 368893379 75809765 636106188 490576523 777932805 701107256 669511860 820150042 16450114 801874484 125038442 971523771 520760013 896686508 236535827 781251109 578799028 489307798 481484013 244216518 504414787 255684500 193761944 92314329 319561046 804984773 946453840 613424892 637121919 406537034 282559220 645339491 129751605 233209348 904237390 589425723 489390592 358799639 431468808 34248624 812119593 404951013 397172913 466146368 710416006 920978442 91830210 328217891 820007493 981686938 71767810 174660692 85598236 694288828 547036591 657585871 954226516 193757587 464248061 587517732 891323884 560626505 917815837 638531437 203924394 273562988 468016391 126693240 103135127 704021891 895991919 277702986 899007068 945109190 693936383 509612541 524516019 791618054 862711594 386402667 107876310 573154085 539249955 196507381 24429282 40201499 493590798 317288551 33639592 755618029 614844467 6266500 60240633 311169246 665849808 694904726 506853744 38048794 876666292 981981073 950116423 237049745 601740315 382250334 663304507 364585024 17556745 406618750 921290786 842067539 886659348 374717382 390171960 555951074 182673792 864014098 85914312 418228547 349823281 182388456 227444756 606824463 976696764 519222395 232678231 282379403 714505324 606860521 604719463 775388256 866491083 733642960 239134752 487867863 989744849 492270610 354910174 55001923 939717636 483019810 863742842 932636625 338080709 983056367 109365215 376588304 616812740 282767602 738674542 844942604 200986118 133680774 284564036 747069833 796886875 172343135 587338309 380558034 499652536 465483998 956527873 264715923 94238072 90736529 250489527 596125313 464073400 437593209 797772442 93072533 198171077 499839238 297037916 508562186 362235236 81587728 277784761 930655851 628163710 787290168 450897691 406204698 285703558 666969229 398308465 825805448 370712536 941981212 285151083 560091143 301822315 382949960 311881195 533555991 630989043 870508258 506591333 637060134 542334315 104865327 285086857 725584197 617420560 917316772 105744508 362506886 831867275 788554787 8356320 231348035 282456517 824120446 355992160 588657645 406283014 400767231 595399076 81471783 420213122 101613153 802024477 963985552 371240628 840331220 125320983 887833836 215584588 647726587 95540955 613283499 748899256 123695431 987976909 346468080 571662539 307655197 386755853 167666910 908767793 540715207 69250604 95410092 191704631 964511193 364571574 358198207 998066540 646158174 343901877 994154529 938299145 164901615 991369265 421772585 997713764 206315307 640245550 13683290 357216601 752746789 302317675 527108363 91692555 661601879 764642001 569793550 17794648 450628074 894785914 337101143 831717508 519467863 962757622 453482729 528526137 264958003 120013491 298749664 646690467 132460106 163488087 391266648 296130495 807280786 577705078 634262103 868384397 858748532 58192406 873497609 814064385 237104830 670976635 708071243 588067461 221667981 179780032 307126532 148477373 354284030 955610987 209026882 736277148 490532193 283576244 290818581 923673355 2579304 935478204 391138990 759660391 368892917 635158718 829992590 536337201 639790102 883302262 88675361 247567962 348170184 996278422 356641482 136737184 847553530 790409423 775321884 298254421 50199688 691643917 190096576 503849399 394855954 852827921 944848393 880572990 310470543 57498901 90827641 45028644 544834627 966996284 792817335 484006298 101709186 863138716 442282087 690898959 973942475 564878246 893887561 151454672 56969156 205593855 43351401 569542598 436576389 357087498 224703988 763051362 136220809 964182328 857524470 135879014 293643681 973680201 569110003 337491436 435610394 875785912 841932086 810648081 754614704 715214601 754838132 406859445 691653390 867643714 608454698 795923993 490404029 741834462 718982359 698979337 869393718 818708307 521954395 686795689 335560652 243704161 443225840 78845010 645175526 848987027 756400573 718679538 331650115 416845411 293761578 867901709 840410043 118928845 315126426 928889291 707367006 513450038 784761098 779807147 737283645 806579278 587012372 969248356 410349797 753132591 913430492 536935422 915003807 193165871 754769157 210720872 481145440 323737621 652469986 802340681 58673432 777399777 739061672 635401883 793256041 927561679 849025206 390113873 613076873 831172358 403499776 995099288 358616122 32054655 906605681 469998295 460832522 978220284 914661849 442341627 178939699 687021926 138076420 266694711 815359148 829773310 407701328 540789142 849228905 180960762 69144983 20308238 27796687 771135633 625696778 533488110 864318943 286257296 883635832 536107057 263110907 855878817 379004808 653481641 421798199 822838656 581200283 274870803 577206566 457323027 811123075 287084084 176787059 818640763 635373301 512957835 470787288 196284861 434696812 95207746 135043551 392026122 38485276 103202196 625439459 890541764 292174813 551690059 751093492 994977157 957870468 948967033 922184132 869450921 790036252 917385691 216127605 485918014 151913551 425858856 632163329 293264277 751842281 966189333 272267723 957023213 303616817 795254826 625737677 136658174 569828369 479493074 364695924 312388128 147166036 999712106 633234415 564422612 839630539 178440218 870528013 443885113 232288298 209137009 681013695 273466475 481847646 671682166 387917100 543171801 792590619 984129129 330753269 320865306 85715113 548837633 372385739 271833140 59140426 221274852 129650473 360029303 794644325 243589583 119867782 808370198 227074700 626908467 821317211 794800166 600471779 541097514 60033930 424509318 881234317 942425658 520846154 618052741 855181878 541009220 646215755 730189173 572916589 554473847 870233129 904668864 869656138 626878231 720662982 459781478 680073849 318889057 590811577 168444115 9724607 777897186 845862510 390418174 819353816 146147776 105830569 332413315 78394107 380252431 48376973 624103061 599798638 545160879 767243039 648446988 77513608 99087059 423898260 764036913 847862063 493509567 751890122 447705413 10367328 914928448 674140494 945695279 354834599 105188863 281947501 274498902 736458286 825099568 148109235 464172508 264937807 959070414 705729117 991664569 597870563 222270389 162984232 12106847 558332685 134530308 852911717 360663299 759875803 42136174 204241386 552303011 827852597 768360643 5249614 885032136 54324452 391846509 958023333 396408178 440440694 701500923 312404264 360017957 326637911 573498095 672598364 828902766 161405405 533375903 900962237 871086702 843393097 732129111 248288191 445582722 118933396 255365309 332024931 728592241 184990757 620866961 108077481 573947133 86423630 844884852 11755550 498188926 385609112 372415499 118136272 982419331 947111842 200991502 207768244 69074055 724440330 178672389 86498824 18938188 488554070 661566104 812153578 511945540 700903356 877219317 198229396 198925634 152263307 617952981 568985667 745124096 727579718 559386275 513778794 881666277 910730545 635771709 320296958 923876082 350898823 383339475 759099824 539231679 951298766 164961355 389030136 1472285 108017292 900534061 406129098 911332784 566353966 678871115 715203261 396570388 518331380 473867334 641925391 264607809 851593958 9057496 690995690 366404168 867341153 756715288 25727064 409319533 626550839 453832908 101441778 200333817 340263163 811449930 876461061 863866210 593291430 468231361 963117650 722092295 288289901 943814789 520899378 907285627 439343089 167013422 133594842 980414083 810356443 497122821 95577858 910885790 57509993 851969760 653441012 323449334 964847443 337678723 493386018 415674819 944136677 131225655 775680750 531482757 422623140 808140579 201700686 209002314 478579792 237966296 447022895 684031992 392885404 669039207 434922831 238910048 218835133 474431900 847648628 635331783 484395461 613448510 953623477 92147630 133875911 972666448 179060895 520482322 867991327 80005446 485729233 679928563 983942954 604594958 526635690 864217619 425004902 834080532 892346827 31370457 224173644 588401361 654253935 68208807 728551642 293555088 58214843 625524745 353947050 997396556 920253470 433894863 451694152 74524467 223753332 655663942 793953076 509878139 933752554 842738734 27927871 191551805 403045806 645063335 55555219 97816627 216221920 975044664 141146692 813024399 623221352 399619426 9459070 697815923 533320892 712355606 148859685 77424392 337608874 698656051 296857825 471207815 558687591 694776325 64342674 388397931 286884671 697279588 901301330 718490660 25060752 662421320 42403325 311665869 143572294 47157787 325695339 864086079 10304299 710462919 117861767 945281513 284027863 833600535 288846929 830795352 838157021 826205785 685003440 369345133 251362320 472311663 859814248 10938680 799549736 20937763 489103334 675942805 677747455 112944875 997948847 736106347 422830887 194028444 376456448 969962987 922511767 333689052 311848229 322494659 908605355 468234740 65675900 684791986 783943210 832503025 100395730 827795747 116373677 502448478 177294961 790241235 847434050 152979384 951953102 293631071 264369113 853206660 520064520 982488661 648106970 847201216 83927699 873286788 52519801 456387928 342997474 354706666 26855816 67440763 130447002 990887128 575719835 997659383 542096785 477107340 137732413 55903029 816322982 259519179 75499197 726521860 314763637 554769118 682744030 575237857 318958416 808700731 848102154 35247178 588855490 488058733 149371412 341746530 94008873 640465989 726874661 781920971 577274237 815152367 792013137 330829346 382120176 541504646 132534764 424816189 40858940 61626834 179488159 18205012 835367518 998751759 868351896 305974709 283831171 907671556 432296414 665054038 561285846 697166513 462727621 791757653 850398541 526091165 859722470 751825649 757461334 601387690 117036350 102302127 777435778 8702043 378084123 386997451 13158703 722529353 179974256 233546815 46817357 74576609 190931963 41421552 718511745 475753480 330941516 827979826 308288167 632131784 118184651 91647397 216380042 516574679 765418158 525231874 137801632 390005977 643401889 408628222 163922217 902573294 996272125 47664863 609619877 342013454 679962461 420637081 237886840 819815526 3771936 861034029 663427525 258716075 588676926 689266692 935965004 118678377 681732453 279280586 445258760 586543837 591183952 707478492 243211813 755578998 94642436 622556828 980023537 584812760 735158895 435170066 326026430 334984163 973988915 235982097 675529473 210129707 292633381 203861551 409084876 944556361 382474107 475323567 187284721 737916779 20916372 865149302 155639888 821274898 670866489 158204745 429754168 940692063 147338035 164439517 629476095 174050668 664843697 824534121 717448643 767258228 627672988 698826783 764848834 346591962 492959438 777492304 662400289 578664145 962786476 614685621 182143863 22950279 953314346 73157678 195360749 584178733 919776792 38948346 37256092 821010156 520998871 828001928 69237131 620408839 36933210 645626332 20341393 669025985 276084789 764735381 780021831 638880787 796593601 553252898 666504902 159123603 882434001 459467382 341333508 672547713 309108225 604210573 8100390 254463148 196549100 2512022 405341935 234639063 734331721 466469973 879904673 397261405 208927666 737297289 672393835 507077314 532442326 585589872 499971235 468879921 642167410 14989875 295309836 457247664 515244633 836465497 228262592 685711966 124868205 165101115 366485919 314694286 642907507 186245097 150060261 265487293 250008054 520199490 678689447 964856447 72341481 666481387 504886914 801798943 661715611 533532388 37708305 797687006 352347265 32718700 599035776 820172382 276930616 952334576 999136887 309516733 381756446 395380653 357452361 127618697 333748601 539843812 519633345 472625158 782432160 332335047 852662944 564903165 255786013 36335637 678272285 565513219 666870437 315423939 905273442 337420166 299716559 28740485 722381773 631432488 939427718 834338559 520234837 990962268 933931907 964386043 376693391 234180732 771811183 687194209 268276009 301174134 39890883 484188095 870858353 354259673 55735722 287108896 330721893 99116763 530153905 949499005 752703963 721175126 647453318 826348492 893943261 774026349 980511408 385619775 593534804 825199884 410742158 670955929 418905815 888936227 879484347 721990195 895177426 26994011 823823188 815182011 871238615 133235321 965997107 42021547 430527015 72819618 425812763 97116075 565283443 439304697 258364496 523700847 797638896 393102986 736499285 398116028 970953410 135619963 485533204 345205221 431175176 220481830 981993775 554241186 127621992 501347100 226446865 768345897 483594017 30153305 507707653 402544010 745444706 479283510 405617688 766467063 514839725 278117357 722344300 300685057 84122610 19066544 841176899 963005664 185748757 981525537 489714205 194056508 377359270 532887016 644858189 547222302 149764344 544420130 552859576 258295790 923860618 973205957 195769312 712200722 592736595 453778753 439078781 17477859 587761715 196205346 75295450 419122788 269368747 759930682 462094630 895895416 983502040 385688891 407677180 582222528 716617095 286718004 394170199 406803719 641775729 818461296 753363895 320372144 647964825 753504540 817121085 582039691 741404217 398930934 679372247 576088179 647205047 929456075 468479631 182269640 76160285 130976924 162762485 141989937 346902602 134193642 941010993 937338764 880073789 443513056 613059178 111951811 102744808 538837013 707242238 105331142 161475768 534362659 981884583 675134687 646442466 216690569 482059305 812308575 981148130 901846941 729124817 987245966 322209902 414634772 348795739 117490154 888077713 164273664 114879128 924317622 528327448 994129785 748029424 765504337 687900181 6984439 305126995 887783322 752027184 594007246 199033297 535520728 588118487 551355523 188626105 596901102 974215154 204238851 511083745 894548240 889556750 818004698 745154205 804324719 592225799 772219758 343545058 209546471 817173820 989183560 140703144 805637479 868709282 279989171 980993948 618378371 424360484 832409956 196833791 140867714 589314487 947299292 522934065 22592311 833959223 206906586 111978432 777384551 857807836 238800651 5126124 947406107 886958663 808340998 410226433 723863460 594741008 217234832 803157192 493396520 227364209 777029665 223836447 286341976 507874102 977477143 210328405 840471214 485535353 667440570 878222794 171473049 138221481 411978423 310437437 986080392 349972948 652020270 269081891 356450863 624694468 70548049 133801744 135118946 197292480 203253342 642135505 353190580 707913013 140770744 981546350 11430111 340600300 428189939 239299947 51576698 340585853 828654593 999821328 27964517 157329723 843126566 749562189 13519063 578193258 743928857 509848318 376420022 478660477 694186462 478205253 618565920 322673701 284574679 740024874 881712381 20157558 48512554 998431728 265660707 51659910 192465751 474621119 410773515 279067890 704375271 887834858 544581054 829832512 106979953 318073350 780803451 937244013 525249798 137851363 550404507 330909694 236755416 394726445 473980561 628598471 568698853 788324638 776103467 288969416 309992574 5951676 762204796 184958673 631471995 825703919 618193442 652433443 82414316 440689818 891897449 585200568 942091514 594475188 598030150 93987609 370041378 830710155 544322148 853818843 966482072 226104269 445701860 355877773 506835312 883900649 888430094 424452273 661495315 112723438 90345656 89463779 718825346 60903014 91756436 246214673 441638536 508155465 161231757 411208874 106318873 371212784 698921881 488246937 371852628 230880298 963140075 312293177 348037728 304425295 237321341 772910477 317621827 877014831 839425537 423576911 542181141 517076474 874056593 14937264 770333779 787584701 705613741 78097640 462469517 539844075 492494230 962183285 374463903 250392529 356618436 238001692 913986980 413526495 461286691 227939725 292155715 384915982 422853530 235729432 228298629 597975444 196389290 180374159 872089828 290532301 105976048 211540767 362159479 365586238 758856135 522024939 746256166 52536281 527391854 151258076 491279899 461512561 744361379 877718629 684028659 732149510 16015803 475393460 50642753 734021107 289965935 993913453 753335266 820955656 114747254 617380747 132863275 258337023 853382612 8369704 856993107 206036828 712408519 836033812 429222670 505664053 87895904 236974514 375981278 845697074 117206006 916129930 276036514 605121925 584889015 408371416 424742420 790803422 984114417 622188428 189325997 561476234 98489635 526325197 489957685 854217248 383568306 508386598 411184749 152449487 162619167 679006085 763469371 37873245 192973404 806971505 892634591 122995764 450687162 150070747 247776762 721673164 220330381 425952086 577238554 420777174 801190331 907376253 396944099 223473926 85258253 225638059 67458567 979649504 484237402 2998357 740637796 72093981 959487373 339142639 741696521 911143695 890835101 677379691 979016772 139649644 318872686 708492086 288462057 974954122 921260129 3504380 621251560 349769419 441637348 819808136 29966806 907143567 52551993 975430170 780587769 981134711 179726044 942776766 630198664 858383541 269633580 666950041 322118367 312108355 768911660 253334144 917905821 667760604 891332707 495548718 300130714 732892710 693329683 918849657 640201137 683828906 829330787 683836308 348297574 190851430 948466941 46181519 14571914 136813353 810874086 59047609 989418005 79999084 472204865 343857823 87860025 532062799 604129378 745099407 585513126 483339575 649405675 640762566 453554735 34167824 687475886 826490072 540687414 98973654 746339554 696138036 827108104 316820857 240441745 790779171 185038410 975866793 770314306 476514554 609530463 506171309 644298003 428298040 756467166 156245577 534486945 415066760 780186991 950312447 336368365 128517206 252503344 965552611 953266054 688114916 774121931 560109692 40812730 54072929 118232180 526923130 567935499 161113180 880244336 273302054 735924461 239095982 369858520 343678159 168495227 806906602 845976257 290515914 632783141 867463579 867514154 469643207 829108084 179630420 645615109 544029473 127197168 482344738 949260582 754340499 11681081 71022594 410260734 145319356 303643318 330065118 824690490 509745127 81168815 203277135 707435251 862611812 620854541 596522942 177700135 601593368 449885349 160785241 42269291 71966229 879168350 204927457 169909421 442964436 293659442 820113806 250186133 658314207 244756732 750235382 997042617 274377576 59517240 609430151 584742697 122542423 256005727 60204815 612974977 233031212 129281584 523395253 171959060 955170139 899023011 972615485 599884285 365607430 306065104 601411928 505657394 526774798 988897856 299938255 328540098 170631234 824084726 672050911 649308959 446978728 491535555 241459089 663654587 158113029 885931546 676134841 157637476 364439411 911697266 56696394 560249767 416617989 514502956 702033562 481347210 714658354 954923727 92274798 177910651 644059261 697439194 93085803 767839921 443202110 889980585 172332754 125679354 52373047 730828677 509282893 17993694 147161059 999899113 327192548 63609971 300674645 485000027 13191503 263557763 121959374 222157219 705952726 642105918 483480109 916166624 221559143 67742770 907680736 774235453 289783905 408662177 735352344 116148511 201538380 704829484 994229318 46327667 924902078 86322840 101469112 140899113 243285880 469665745 587988901 253646203 676308613 346564068 992647868 422596992 329012617 531171587 718953307 753567652 296413619 269499115 167365737 101688442 140444387 480224406 259418283 436332708 435118062 61960577 643974876 822110589 127978173 888894187 866805154 418147769 319538078 542748288 603382571 956775905 199579170 476961350 946544374 1163714 356632964 601080312 561780842 505155132 561583346 206504601 303365099 650214528 114584753 24174442 495239291 330470218 361227984 636734949 681121108 188231848 300060791 273891575 865481537 887235523 850667708 769356571 251323180 794959209 7208067 658249715 354887189 640116565 672362452 752509725 438578851 772905226 429246750 312117766 39212173 468189945 63781582 267780957 48390119 229585617 632376722 694871760 89094228 138323256 914743280 889755374 50906346 148638320 175190226 423112002 676320223 767741070 458886675 42911895 548570815 709809224 950692014 990727280 158532182 115092958 53265140 78728496 463606602 238701518 534221262 888094532 180550385 845967299 947657610 530060600 930151508 346247665 279165189 643694989 912794123 436139889 655488457 625733811 976159908 369694607 538755536 982929159 500063190 75279527 11603346 950249918 441134003 879621137 606511916 408366926 568108884 730831643 536194796 905430086 248824079 902711143 193822377 420965073 901837414 211481379 830092480 336664787 854506333 41962076 886783166 129651818 169700445 13238949 517285377 244991860 753288258 282457686 457033402 983909082 639355171 113583859 346466879 119269024 454138025 975255944 897884862 507498637 190313998 299351459 10282645 775685773 607810106 582031625 774990979 330960240 409131892 364248605 490289012 827612908 412145974 265786022 335471358 117561056 865953584 500441498 640733418 869048561 859282898 607423672 263656444 522114120 496272762 229037155 823080760 76185611 51025810 14803558 88186658 719643381 652692383 437522763 269001345 399954943 647906380 470421364 280565750 70906855 901902938 581066054 253917977 166898033 838201895 636126683 983164838 846954652 675133416 636892991 353377805 140251488 464000904 496831929 567478301 587630531 21871364 514615942 807566449 67767261 218354424 231097978 471341951 972964245 450681019 976711640 18816583 769974472 616486607 770609118 684087454 938106197 495903759 508595839 723326966 220197225 99747610 877154461 943531343 708924330 398859234 161096773 929904351 505476438 133308400 485187858 872291492 995173928 674810937 856118428 608314837 491372792 875615983 755085497 962989442 644220461 161339629 836332492 514790063 345632756 719972522 54240465 287500248 881232135 86216217 752311546 112083523 942612296 353381761 761849296 838819568 445761358 31055565 714255243 78343359 878158701 263203157 174810410 842947952 340795994 17873936 41259557 835060299 153407330 987048222 435893516 799026740 972265085 710761754 459057184 516949141 257502467 401654434 360172686 943637955 855774607 698220549 689172007 242538757 594620726 788519424 437590952 840775531 359749907 685566490 607920954 426709318 443841588 294344679 431601972 260274241 708463261 585954092 274523157 169059820 794042314 687438953 912725389 549153484 702703214 318079414 849046230 920725745 85969626 278353933 543390717 205334676 728926901 473546573 324238149 394856354 462060418 953812515 71832328 647651087 526035042 734629996 491362845 349241839 417715511 861978096 792839468 934473872 51324743 475919757 93176191 861101830 476245557 254727433 630497781 109703915 490214073 457489674 860926094 665842088 62616127 117682218 756483072 154646545 520313000 309910974 608183678 37637756 254954063 951678010 238363297 371302156 738106172 608671700 190239890 66203078 418581262 430263613 162415992 536852244 71571014 54069943 908688123 905510750 47394528 202029152 818742331 420205728 200021877 85392556 941486260 650445734 442135933 810468271 37060030 623169460 215561642 719430487 492085132 915730425 529201880 272493567 159469542 340586536 222055107 57791197 241852194 137604055 582346301 598163606 523708501 738218628 601401160 33316989 122253654 471360181 980816318 390299659 928110551 426626493 476306841 14644046 274101924 324655876 373987313 132379813 340533432 822823974 605831981 38832596 907290836 653357908 302360058 555620615 678044496 456013799 254321575 180511482 195304 413903905 32652099 217445618 214123743 920271464 922584475 597702784 931825388 604140112 153595913 130526176 939960495 185740492 622996109 678182340 104756382 653342958 527808336 671756321 75463701 594237560 871132095 159481791 763807797 472424696 765237880 901061986 381869727 975506924 245886871 689176846 717611744 87890244 17289397 543927876 612747435 958021432 187140888 555201496 121407914 545109309 64797870 573130968 699815919 883136340 818852917 498915456 151704961 837372297 455876687 576249481 821571802 12820379 10803030 538467220 954592101 691696938 652624503 738624318 164001772 362689411 193291342 380584667 712988891 779023553 195749964 243036811 502892591 508269744 394283913 455368119 481803791 694891917 209137977 908873314 469676076 467302201 934132921 317408161 145668152 241644716 770881201 240117138 268883792 850156852 937243402 608620903 343389799 978402330 266378656 367305075 910234592 858436962 138969826 303142106 712172343 351883690 950409521 457146567 197952610 608691449 460987886 122860650 934830054 810710467 2048583 764842763 633641466 446247706 623674310 474423535 321325342 971266461 919056976 73530723 954559167 720969515 646215104 559832243 440419735 932076719 29882519 203545614 739948463 318909531 91208533 620425101 897884523 14579943 825156274 423129940 592924011 221148586 13735076 807297409 163228222 994965902 935491771 49668327 520547432 692214480 125141560 187667040 523683848 279091494 675663818 952314077 893602667 857976432 562584517 92761651 336318792 428914106 934152457 120764136 346127130 996806369 317566715 233174999 333343102 608695987 498605616 241691782 481672279 425451048 888449127 823631602 292680836 672972228 587997567 772381831 468951505 603847020 30319101 211488065 694250380 8664895 964063259 710043405 672249521 381757073 659782973 557930671 999950876 696060851 127472576 350056872 753540630 692852035 765353164 680708149 978316725 512084811 305727012 80565371 187697470 186065734 143160487 721924154 639284922 916825280 170280124 551285560 101679046 398975926 460805954 833174517 579496173 307579568 272887798 988011178 795253034 327297703 318150041 653953240 927860702 677431495 553519364 878021745 503469632 261517542 674757219 222269648 940942341 700703700 434112500 187679858 602538305 663430545 680532290 391035210 591324451 569071802 839635256 537522555 199165731 979701898 716770684 573329153 732056167 149766029 736971428 361006388 487266021 862481137 447815894 217432406 69397229 732034870 533948531 803519901 677153602 744853507 263232247 820579137 293018701 230802653 584260786 937845533 544762322 836593957 726809195 755208169 754024714 911771704 21905813 583899079 678514158 488136335 463179900 557807784 222980314 781246546 124422924 615479034 800149680 890692719 587217111 790647790 399846919 176157569 886787214 571093948 91968814 893248276 491729140 64517837 275451717 365328378 482106368 198554204 942016435 954185861 590284562 232470115 335635800 495502766 153508005 67116422 753436392 825147639 37593083 438878308 682741475 418318717 730186004 21523122 316983409 564199667 724897980 361056769 660773432 970677292 18187101 226277029 429480780 858248748 803732589 30864010 589245908 482400209 449964133 572984764 387008802 766915733 186185841 755768263 967399743 922161721 638386204 3066113 163487690 800027120 394963992 622245301 625283514 367645663 670172960 806541910 819880893 56444954 817049760 760498688 269269311 706597393 465130442 594184394 662818540 502095983 356346696 792622102 764821921 811672731 218010467 68632876 972737649 604057347 439736398 78788225 627383887 179018387 506482951 52810620 537014293 403442648 1064362 528330929 370526099 853783128 38026330 346912701 205428121 735771788 335254707 179899133 413634561 95532562 949020528 905046102 55356071 463070494 821371393 736907066 508746027 475307846 908259414 249782995 287534717 620244536 230108189 956818965 148326475 594594525 325084471 633362382 166847118 69415649 118108472 576767985 600358492 799890579 182764489 488225038 540141979 657191043 266803743 289841987 608638957 358450118 822179435 457319855 289517503 413316663 517854243 526709042 361429453 855414525 84397670 893624933 898939923 528429516 865675030 127973841 514763416 306755593 640820308 672996283 533848095 314879548 611193337 48633643 641921623 780104756 452546430 174776554 601867318 961523929 341449256 987061767 69532715 363661981 393869235 332885166 731729827 499055917 565904722 282530471 196282770 869048543 899492203 422704547 382553728 861172001 64186488 76234166 288399585 753202349 457854182 144140188 441488980 86566343 282188045 742186404 623191216 407015296 365682144 400885618 186714530 185135882 677368355 590380670 139618873 530113514 616414344 964771503 797411611 129248009 891531568 636982567 355067181 101868766 87905250 765406812 71661149 114355682 753956435 400201662 948197715 498887369 632642578 955004663 705414620 589261032 742132909 577333994 646409779 179685216 122586105 872132359 981124976 948177126 479334904 35478629 84844661 807239794 671829820 997840357 858711658 898786736 78498271 413536497 509063939 197692188 832044391 431464332 860628801 372519257 621506851 776537604 496687448 381922912 765835717 122921167 981459816 839918886 152610244 942315051 6643910 196765497 749696069 183833360 224679101 780038133 530643545 153542859 199281229 703044626 415733976 845191343 720462733 882640635 10816104 600363100 82472572 345282264 394701746 124226240 535653304 886477897 509406522 738358628 454481121 674528217 115107383 126448913 467846122 229984883 425754582 359102731 53432869 576777932 189665993 29860421 329122356 909495842 638792356 108889372 961386014 637816500 277564348 820032911 121292932 482829403 860113367 421840926 988016963 285185459 181252098 729842389 548070171 510619966 763415182 18295207 180000147 429277579 23642153 322463440 806059897 982577453 732449085 420133886 448506621 629895991 394215608 738152915 880855029 17141140 686233418 632755698 316863698 645623872 456591175 814498737 15102864 361112650 571083032 634267691 229941991 220538907 437644119 23859022 974667933 89698416 266348622 117747078 709572838 659326636 971234241 608251511 522260298 850175269 340106478 177541474 430321789 961029106 384617748 360509135 657147719 438627418 74773513 492657017 38923314 861845500 711822220 172729458 961119821 922025918 369425432 125183809 412964422 749511925 696391530 10087012 535118560 496825789 729586181 121431730 222285879 762234607 900362695 183714955 35098447 780723950 291872330 766331856 939856272 761378708 602334397 836328646 836553282 910109397 716863812 769707139 890868281 677492961 592303332 844399842 382227465 230684250 829299097 98283637 766861121 411445683 956268853 803281703 481423493 208520629 798111138 388920044 243212947 974226220 548506466 287335267 942638559 539511804 807335389 512036757 923607818 306175788 926270242 371612342 114118115 638955876 298017970 73765845 861815581 938714228 440252751 403006818 169920791 652004297 169956219 785534459 23459982 695219165 639214006 517516750 653909598 732583517 7193467 664566649 107865248 972539327 315372157 321299465 86657342 690161562 219920020 85561368 776619308 109543510 12980158 804643511 373444857 567599134 885184605 793725547 308791903 451243935 362751790 805149749 774631951 835945884 230177853 777958223 571409176 244914995 155882748 771982397 22006627 479589938 382402878 527193883 244468 113634386 983441794 220071927 395217279 864533952 633829963 421672755 557446837 575951090 942922445 679693886 302210249 10687375 488917001 647063543 565140236 429099713 100353809 285014979 831086560 442387198 270324145 927551265 572252238 20859527 925477705 698865401 960896397 675273323 670904521 513945607 597030246 427259710 888996541 735955842 28067135 555963141 380995410 976013194 978070472 558731195 668091 734310385 504831414 615257325 128071315 708250463 193754841 566622714 58622325 496911670 157068306 199841325 178315097 410474530 33056076 927754819 297424939 894639690 231388429 738541107 518697290 280918778 164841344 926352257 236593362 627052662 21153860 72504735 228146641 824043606 59706463 725786101 914648725 735604146 210841493 467042082 25347220 128528847 883106058 108804199 103189653 881136627 433608247 37256541 618142101 821132737 901968433 391383812 844555362 256916671 423700319 553654503 803618698 300662062 406546016 975476663 255549926 132326451 396350169 740584241 19372155 134030793 367586564 330197808 661701913 348289393 581327610 97165727 862187995 29813848 530516899 246038239 85588267 741325024 8791346 127140398 600352058 360943391 985141200 109462270 745980274 892057942 934222236 180859916 341403037 681890146 419800958 97815138 241987930 864161760 208970422 702891224 496631301 467306508 455112828 970582801 269460311 793460883 450711169 674012629 105480567 274013748 112989680 948327552 679004730 882675032 140910267 857999286 615417729 628083212 114782815 794352221 703929749 216577063 620719663 38495861 720876757 209317310 771859516 915146777 981634894 257800094 751657098 465934216 754301103 249071306 841548843 14311250 828790546 558809803 269202374 871714947 726067363 522612539 466392358 777349051 64169393 992587532 624305706 374261304 580827327 809772495 422577059 916392481 96653404 945936933 369760422 340672171 645877341 353671628 155443958 135148134 164954148 463239078 238143808 729241625 485142171 136372768 274298131 811832117 635767120 564675213 330957862 835653762 848094968 268981018 533746151 756441641 55928681 875176409 765634891 840227507 143619447 308793821 715004468 455690810 46247077 9353775 125510955 337965920 274983821 971453565 757353522 170137105 605001880 27855616 603997063 470422742 977883179 428488498 837138894 198657078 628466852 948974864 578376131 725707639 545984627 495787501 221626037 646402565 524083839 229268636 231120953 457229264 842894296 305470068 670837833 48972816 787081689 84042019 629116938 368739627 29766277 237164611 191039897 493588133 842298743 22215274 693941375 884167725 88382963 565575904 328488888 503723095 959326873 694174450 857644879 823207019 217574863 723431353 694691449 807571497 772898391 978867268 220154849 476098685 913009586 238558881 550115496 30894067 957900334 929055039 683386915 356553457 897201743 49589807 935815317 664928945 979619317 870087100 883494085 856809104 70371815 278040446 800289259 980975239 357839047 442951689 342238464 280615648 569590038 247769368 294009667 975455162 205892241 151616642 324339474 187788324 86846566 453212845 609004173 244872194 990544604 276061645 38459152 2109238 900852031 933991015 878024498 506779304 755409165 892385878 929798446 139764823 872046010 677165360 524579918 17715571 397751018 161650765 977963920 637580726 435175109 73603263 242041060 651240971 700547862 474792630 851344878 259938984 585033579 64142973 145264204 827216808 727310034 234073462 307119864 261198683 262147014 15648957 637669240 334571297 839173112 631361276 417319595 559811618 859038617 694172776 521384305 212685352 67886750 622419801 271182887 217206294 37075754 296970851 696912644 74855140 648886271 525128377 862231491 71131857 129311982 592361966 31553005 485466202 917886244 161535649 281221658 46275087 131336231 787615704 175695216 902960319 588591097 864925376 91316838 158871031 754034621 606712602 763953310 210783290 406515189 435902434 489645487 898157075 78409067 504759983 893278083 475888764 321909338 575613162 218449631 547421568 493327138 570387911 503539490 338602352 65670016 479968553 145022511 417802420 614887576 271619031 368064548 742149468 230536169 578400808 848477227 710180820 836295493 128033950 921536497 834441729 499328743 893030350 829582090 75894943 831512817 854430598 445692311 390840317 124813239 690100982 269818098 961820874 600064384 856217588 635021462 224801846 148223066 460997249 390995186 753381140 514204452 554784495 483082352 506964894 418433883 241649708 833671701 14004571 143848144 250940098 853062661 784387787 791670195 191545122 161728094 876125019 44027152 708234879 523572963 156049023 930827217 245992528 598425143 218090157 770379737 793340487 81383100 862342278 327402205 95234581 470832064 394396180 823199682 546274626 44683009 730440224 116595270 328649092 665979002 553083576 436095807 71220862 189585000 159775058 259969526 310375104 979158670 441853491 255667919 564589778 21494207 773073504 36525681 875945295 800141348 533374554 951143072 590248157 810866342 222298636 930573344 499264851 670518945 174966293 718040137 561821167 350187423 962794051 813890681 962806457 338837571 450578325 834313599 607989472 505269059 728213246 749875594 136930325 828178536 911723852 798247231 417293819 611555737 795779228 965031374 464270546 497350910 162720861 175969484 771771912 934252037 694665547 936966117 226090845 51687239 75167330 853010768 337308660 785179732 763434480 749502277 122156526 323736401 8909932 645487218 577518677 452958248 627364148 150076641 770312959 905633038 869223854 466993891 6748084 115058692 61155300 723250272 322713420 193214660 886687518 717751376 705490742 643299127 848721193 612594294 515912495 865769661 13286278 31745122 933451833 908022361 109807622 356015314 861715503 356040985 143565797 39871101 774933094 535991412 583169488 257630471 871393037 820378777 458145720 240297204 306048613 451841350 903529873 882321354 224596028 661171414 929192180 531651211 634454414 430888707 998249662 326872838 519073138 144951615 512570461 964068696 650843772 424503844 163110189 83824508 193104164 76707886 643338330 897937247 963471347 144167916 209807360 813993833 507781588 273947028 705486359 830782031 57567043 636890941 641786503 666475069 732601060 223958592 683147008 152442858 658104378 98309220 422733220 561598899 791290683 72004459 314437147 439876703 714962595 52399902 745169648 256387720 65135385 704350829 891551781 404347544 180492266 382863961 308522190 181804487 219989406 250983843 2869484 807843958 587334572 7739572 891754269 11672709 695133398 473055689 274398005 941801654 214499069 708750014 125546373 930202462 785375856 771408394 417807091 247246441 737106415 884682246 635929890 499344255 64478803 356027676 286642653 86188643 458553174 185505551 10528006 223889052 347601851 423177397 112850284 311807589 123920624 781378460 128106655 729543586 422309894 911682245 629414534 206072564 856873247 646509714 984727293 178459358 590084687 286033913 236544363 202161575 378976961 649286596 329585914 638954041 946053109 33077050 72270198 814179528 883607806 853260480 924353274 126267453 237964891 238469806 26506899 821911904 974062734 358794418 453050246 419007681 485494883 626870397 517638453 377105556 194965108 709385147 338026247 376460849 364645024 585431555 271647508 925335078 678304393 698458875 573214852 407828249 861371049 547694354 943245599 902588231 174588948 585297380 286408993 753487589 974019740 449327929 231787833 781179609 101115290 343659845 143802164 660614127 464028239 648809163 899834843 8536279 850716335 823401653 209851067 714166364 434488794 792386164 193109306 366290595 285932561 453290284 183259286 385859797 882410252 843156340 844073396 408670733 75777330 81125030 981705560 975515766 285271656 524392912 912805021 273589419 15133771 560878411 882732436 786248608 743105982 193857055 163229669 156624736 38576780 890564845 781116083 274352484 235822940 625463562 184206967 840269344 354387398 280871045 721348227 367814963 43222237 573934310 645334451 602523185 469204795 277737567 182083114 637202528 387247108 535599120 440087172 768139599 926938884 464326200 197323446 589839518 904194219 518330951 272536002 186103755 180872164 457763097 6760599 278897438 808306859 980041865 825377782 597153847 405226350 705483309 245003733 179682858 477739729 401676226 930976593 911472153 551378348 53111487 189731100 701234583 424934348 711810871 507929661 701776835 512701153 562447121 672681949 243432652 877952415 628336596 574636783 404313039 156717748 524554274 197050522 726196450 254762605 449097875 163306935 776785750 781949865 25522120 431870226 712192933 129993433 887346244 735109856 679108534 56112603 928873785 884791364 705133742 572240522 148608272 523416902 151649910 884092525 82675815 7805798 363862139 475057861 263123585 686639325 675963008 757555434 96325527 544795955 732617645 370643021 350528608 600944985 190032508 554035405 763761152 398349391 628899758 966469781 192806952 965699062 194681716 102244269 116830219 379085727 756681914 981588971 559692603 570178315 1683822 169668967 515701704 843692215 951404042 280355665 561975356 663767682 739713399 276776919 225288279 808896261 80039691 613175542 371566380 574154736 883707774 523643322 949895601 440696755 357496444 120661988 521541509 671071348 301208847 889169756 780205415 748288887 911776701 587334649 298561888 101509779 541331431 707216450 827839335 615514721 89814670 966603380 538068298 31171354 622897525 428451623 137795006 606128960 130631690 252443198 823116442 718280707 969703024 870557008 288646728 704831389 64132547 9500803 270412802 387094036 951124582 249246585 255179176 335145013 972373056 964654920 302153784 914852330 859144236 883194696 634922811 362458429 635271281 801153651 739341333 120393678 853072338 784837244 323959858 135391159 593124349 404846966 829762876 661361322 299220523 290646405 751469978 604873743 554614477 489686470 612858610 927390231 856283737 621759685 519441058 282949420 462249590 639292024 61810990 988406730 775653355 954297773 301684396 636236593 357428856 293856315 572833317 19911411 955171577 489537437 212567795 271409123 572914898 637872324 536396844 387055647 103408873 848619420 966346242 591069813 509426828 640575856 101140876 275512370 722012216 198308922 370204707 410575386 44461600 475968951 343599445 5638496 788962659 993038907 861527848 673993942 432753664 670045810 356590279 764524946 283605072 696966256 163952647 174151776 58441360 94999986 93699904 403930674 371732995 612769691 359032944 246544249 57550895 184761316 622184940 833696917 947560188 878423420 80476761 23257230 720196365 194818532 293152094 205707701 139643338 469491703 403560765 998095501 29654121 172807250 396678271 923032764 361808597 892397869 984470434 148173490 610970912 703418644 117630755 41158885 648929702 178892543 157157963 949437497 510361528 501150275 658639214 545531641 291853978 93380 834105393 312634157 705711391 586096440 712753025 948962023 365854147 653400709 658060841 181683743 169049957 419071324 403277466 347514873 120374582 444898784 307490116 161621310 208068089 246456589 754285868 970364014 452397070 507417883 45767798 274072634 327897973 352984804 215285423 288538928 944921702 622293109 941912774 675193960 932417861 728430096 511184939 80212717 749169418 726210342 325767185 612575029 635334695 182948184 705588118 753083364 438117068 769570091 689527822 588289375 185050434 842666512 195153094 286167317 535745769 104851615 224783731 492982251 657816482 984532112 628433184 520684786 512622622 476276931 921179063 361401921 474721454 944166183 365237140 289755058 993395766 553440364 993056844 272394095 327715468 832627257 564964067 844132146 990346146 96220527 708246065 595245104 276673347 849771393 248118148 955784186 843466738 614898920 82236936 906005977 989075833 493159088 934088865 730571649 482511997 551722907 855028039 152820532 163802866 368742183 700349041 781806333 933511802 951486066 243949568 303129964 26743121 267590165 323806030 479281147 420357974 183650394 451312274 167031950 728091144 823870217 272292124 904345594 750224679 136708623 214598337 862044989 916884836 206513716 399834748 138210989 909734514 935503039 129116723 349455236 260217913 725989656 884727974 153971326 259536224 365860217 798179879 415613872 579018670 650593532 653603340 348895386 46977716 823061471 811378179 738577119 11785708 103355564 66130861 128443414 589460385 606447083 478023908 945262436 619288529 807753978 352929778 121729473 139332542 748708576 112017816 543288376 926245391 932795106 872542998 959554486 146811320 531266273 704302404 265220159 251659555 409548976 146657194 395102853 412915041 856886916 975145756 688454776 920133604 816004405 276610141 372878592 466457518 202078152 648356071 855655187 7172808 172276693 784516990 154717882 409916033 235688229 128393577 405916033 451773177 60679569 319000070 617399338 142702964 818077568 722871975 769558178 937557866 489069482 25322080 408423380 477660383 580875512 206348417 729114166 762183656 687637356 346600060 426971955 575941730 637855184 897211708 776825450 319362934 888091986 599195192 891461060 175651909 857981033 261246565 141900208 92287852 738712861 845766989 387078762 731659734 876095698 217956234 676588251 929721196 883941983 478074336 932662572 75234972 751367470 917184776 725299094 321046833 627719913 69225676 576903811 846343317 876370135 940487963 217404713 437210333 97241994 287016204 142783038 843238954 996423019 545267849 855629080 823056201 414026623 17095226 573513097 895808643 290853983 982226759 254508182 105117492 199932348 185694543 616779958 288776962 673751302 877610715 422714609 426833678 654628358 786510428 73352374 466300446 839815863 47291859 470593398 64737679 877118273 762092898 162602017 397805549 415771983 840267172 463041374 452216263 259978085 624470559 633646277 315186094 302166160 696949823 452354232 927989625 91851966 343728037 628260942 134425042 676610235 4378075 652082226 377327100 816604398 69564606 71058699 70680455 524760847 682787731 546146742 667917129 256142299 131876470 792101451 662918669 465520238 601210546 913576149 923477950 251528861 685884258 300319932 65905156 512875267 887377204 539519098 616214653 823837742 552912236 385502802 53370339 597418563 927870207 975766175 289968247 676534211 706151327 725297731 720783812 409079764 386983986 631413584 333565549 690518675 767826104 632735755 84216832 727048756 790401122 315403081 956607809 706324568 593413498 460432715 222236415 870065805 18429839 836135753 69073819 628194753 450740623 170298105 840469692 492410148 978031682 901025394 556601081 833292234 8796225 23263266 737635555 951266122 962770684 744279242 566094963 39580264 186661190 895048592 241640974 308900548 584089757 889621422 365309121 74313219 983982005 160869 568715026 258302816 12087265 32534664 188185403 135643512 406405064 570742653 300239202 524847001 54227099 483947527 436318395 847166153 207395511 229762758 834774670 938991612 285019180 575850265 483301668 862838353 507374748 243590597 668809961 443986050 598172316 669533987 668731049 727228110 76250644 602778767 519910811 458245175 557384093 800841589 552932166 842003348 606971897 274384973 737609715 855111896 432083872 569815072 68034783 104071053 216641060 426823115 299536866 352974890 339780774 848437681 431130694 950795590 511759734 476703625 353110261 112715786 303440181 470098255 734015210 458544497 594383919 456509244 584202760 419217456 610688046 311241182 803159998 192563179 396337267 924997755 888994308 650161925 530922572 927839635 899263406 998087496 519304133 379285790 827157167 604647603 776869144 984046591 716958776 921783425 537892289 22275230 323948852 530187790 834171746 440604635 995023070 43723839 993950681 745499034 646006485 379087567 782022923 732056296 84075975 456618808 490311627 599093885 565262869 66326120 380186922 9495438 755696397 925769358 225718889 113400084 931982552 464143736 866081857 715385717 431828320 566279679 679976604 144867660 409526127 710396516 126082705 776841349 588156338 461785713 385141214 780368329 725897218 473056328 225220023 934225985 192750809 912911958 458433887 518672288 165331343 934169473 849726603 297879060 593104232 329934165 26839870 844301372 780740209 460482979 985260233 717200917 963679422 787830261 788042881 941720415 434967356 315712206 683727077 659076278 338179251 572248540 875651802 519490203 894162200 754165837 401181391 278233152 23807939 275140273 810459540 933995161 674520110 454950863 847903538 265118781 993368224 750788561 866790002 64667726 94750515 693379507 370572626 578349568 554929654 147302029 377061544 698809792 697731718 451390476 166421444 621956779 175256115 742573106 634894140 594708347 925048206 834695509 703687717 237534437 23725648 553910216 541769818 943156941 305518197 45882996 904949596 745298687 84674614 655087737 226302152 828094552 482276759 131329671 579207971 932510107 987445738 958713880 781608456 49181377 915387903 931964678 774350514 628958412 113407694 20661161 718069235 57592654 174840721 284454287 446073137 312109438 180544869 584498998 9933874 486084103 430185197 47071316 891896173 684207865 32331564 285411409 356204044 658615446 218087451 711461171 721766896 912378597 818730408 767924919 806557314 934489791 620893237 428174514 730068340 3412308 742203017 948062884 857771113 810729291 337808901 666284101 1913548 715729754 244455040 535833272 160696153 148557425 951887135 260268066 231897527 873121069 258532634 113591891 251222983 231088412 373784123 738283487 453028359 533077390 410304603 892634746 681140250 130238200 732806251 772912566 288145755 535500618 570337438 825689222 580745250 714161361 168824010 912396939 452337034 538627403 890052656 591658921 451110570 760001837 875337942 535621074 668611429 211110243 733782895 184394463 609519217 600890854 917074283 881480472 817827220 735322032 933794290 92862896 243230754 656037130 747335287 140514746 100104351 50634098 421627028 642887016 809083201 448283891 820908990 777462312 970227955 877806456 843805457 596281928 32483608 251781321 319905538 765913143 893816479 177544441 951511102 597444398 32548444 719202542 328398778 712976303 805668773 800255921 307731411 940997826 511068307 711067245 429682793 382099502 230422278 530183160 850132885 619537236 135306533 15132253 413864424 322828990 50600977 140959378 192302373 770165819 192488003 303193566 342254567 649942867 312362033 944948648 457529016 679040157 267122548 353586790 623134586 728159090 817566089 57319987 440680467 909190753 494794595 273394772 149745979 390266545 937444032 800771904 586267400 497149283 228120821 597212206 658874092 716611519 466954276 585027997 819331765 202503092 546013319 679671442 690337478 651092822 802566440 926206393 176705769 88016146 449262479 256059090 52391297 817900409 89551768 781240231 172472369 259144455 632167402 478009218 172487508 597392044 951951711 642692180 307466539 812623438 777361033 346793913 607911690 464183256 382067088 56355540 116901219 558409273 857686158 141192533 101519556 45917554 356277888 544469811 206724071 888908246 437963839 27242960 790542297 405887439 624190132 124713970 150984992 832547910 333744751 263685819 918849981 468696976 593762158 553647440 737952672 787802640 545948004 509617328 337175125 73805760 26510635 223258437 198517888 10600489 399080116 977241389 19755636 474030109 855618908 908350000 125111416 452490695 191951415 799576523 519351308 187195489 456466839 642180132 838796559 474095014 964234083 681738315 816774032 880263462 822151106 478488660 772795081 740412798 289643479 753340393 243583477 799859177 138675354 840047253 639831278 730075385 279853258 903042616 487641383 476719033 328676954 454820923 213348767 134383349 321636754 120354785 548186998 364198710 775699190 832688607 198312883 581270341 917878846 797387191 708482236 810203469 91924188 603730058 970623013 542186236 455271004 412704834 15834161 650900839 399998083 552590611 135091747 699837994 761443869 240515887 930655269 459390308 534225467 704825593 567925901 374120843 875859997 285039086 141797742 462617755 96250118 991536177 760419279 668098279 234876293 580594806 208473509 560125235 242459199 620357383 281222168 44187526 400603800 293161732 148687596 541272095 494960401 401341894 601470306 488534005 161309152 763853244 624758250 53012668 276462298 152748544 274866004 606905844 347052619 15018557 491466817 921957472 232684418 369372771 57123617 527224096 676415464 370790268 217317051 391312318 988928564 702655893 708140325 579007113 334101953 381560645 931776147 701465986 121440190 981846387 354104500 120009741 387814984 324503113 417675864 690440976 923647186 379568370 785650056 875003758 613930673 735866455 405476265 610125601 759647325 103174713 389791402 560587930 561391341 742870722 167418009 801131330 596053403 227116567 2058429 81674732 603882318 952751120 665307932 448877553 101533748 792127338 478523506 323186301 316714841 484665047 704884548 377735337 115880167 948213231 776040136 60570603 680953540 87045280 305545484 440064376 112744735 622960377 961673804 60741518 118877004 338145571 250954611 723209714 617752243 539842974 111032686 198834552 726300281 142815111 729681389 819571772 712251757 295864180 550349814 602349549 363578294 787998803 269947899 967517123 394005039 222660632 925568581 880568415 770308134 668424540 924878051 612018257 814811385 264560261 708045044 147338140 450513128 79889092 61923993 3133501 293807502 823820259 372211464 168767399 676762046 150811334 567245881 365413405 787254468 776386727 635247748 361179813 33626357 203438671 808803170 379571073 214075006 640393592 220284247 509227534 63133040 491639625 971663577 773976885 312654119 51318789 267725956 457696854 922024343 587892304 928892751 914079937 723049905 929508530 872068121 733993444 672426585 189924948 492229572 606595237 686816829 815424263 660979762 240004766 228325632 23167150 255353339 58913898 797425424 455004340 324627700 524770925 597168830 662907849 303842156 510238706 151094054 630976712 739774889 632986815 37561821 42319110 972011779 54424529 639573545 158351891 729906203 850693926 268471463 519374254 450841730 414364198 753133707 273296181 803471746 758766388 92539383 322436404 899890758 379802523 998967176 385357514 578156752 958613494 98992871 881755918 597924190 466390666 117863249 354726335 628819813 940182278 178535697 718236607 838982571 487356235 480954237 608071773 889010614 534019886 966117257 791575162 629614859 587723832 857856871 633345560 176536491 95191154 232421705 506342792 756031938 137343059 540622204 204669779 309408018 104543123 469761558 773637764 634006181 411771440 569098115 918368061 867302183 323737298 716420291 349139629 885827271 420516268 611051331 336193839 354976374 986424552 762834162 86004258 543342688 649039256 95956226 281447732 440086870 18470564 42666007 999763519 264636212 710255349 690215923 264842638 55261504 383657116 186353223 88092812 677556897 736239278 339104161 926568184 492043903 457829446 353825383 344518482 165720225 609529572 813693362 332556535 768491270 379667407 423341176 287783567 393869190 902023069 241896768 845363622 935182322 810542020 29716060 895158167 937269225 162762175 266897021 425792231 440704708 109258297 477718003 54358952 278318789 639989673 687286282 608421389 595646924 323868291 740814966 384507345 694646575 942110009 835198496 654191332 566860016 152273505 830020415 487248147 617206448 319463291 45576335 915117737 924760139 140616104 434221897 629704721 949499561 196110578 712599235 675601195 159238720 86798177 906452215 590038145 877294146 337724138 709412450 964960143 923445473 5063670 25941709 979980597 749725311 760293093 534203460 557540115 672824724 792778818 145891236 40050841 33826608 105298793 465724773 299225689 283005065 626604062 356498635 104357350 220191671 930162642 991830062 172553503 917364491 404017248 635895002 62677334 716946806 616368175 26421752 457955712 116459028 189825788 781896265 986439992 441956217 565183056 653801422 684027293 473557494 838990826 471512592 867771336 651874615 558183991 120895028 224572133 780687928 470817757 73957330 75593792 341766483 36034042 360192357 597935078 632298847 382673603 60902752 742903013 204946871 973440286 743270759 794641306 711374919 553551890 837037860 68843894 434474902 395449565 726691939 818214873 176767002 43094292 59345304 364505419 222938870 663191049 825096551 103447921 91281942 760322603 425149751 239792267 758804352 877615271 202647284 194229890 973727201 473357877 667266853 593804374 310397479 179666395 338036815 113488651 114250534 859654319 47020107 135151663 246643844 112154893 206565093 621622441 740619577 6444312 350789119 132223529 800317867 905142109 697107034 75073247 902544173 604113943 160482225 458409551 771964589 323240581 679384863 485768961 742409533 248449209 773086539 658723077 435987682 731241474 893296247 923657080 947493311 489001641 963833019 30018496 108996072 739073735 531633539 489484755 766933718 22965542 874098562 291401441 800821870 735231699 499434271 670953131 669715197 812191362 472031886 670542511 631267082 485292760 204081762 577103208 952966689 646919120 550636811 798987905 621345716 61193455 40345914 954198048 517090526 359696464 201013842 971988670 958434327 324791973 760280421 622390608 496342083 911146818 360801410 189717979 447900910 322531757 495700026 842523298 535401749 680879230 736071013 987567417 507646200 86269929 651472873 349254684 602595373 445163758 532753933 310135509 564160609 910382011 217291306 698738701 731130783 516864302 85692601 194409796 642371925 346737096 488291293 337447977 854660712 72528979 281466792 704935361 844635081 545359071 81420562 707419188 228756012 373526335 998889715 357679913 498975481 578538661 380534511 604160603 264751126 223573570 966855134 595488872 849317893 525502813 870074161 564478482 299660452 270956638 662147856 565051303 658888374 224075880 784985941 734640400 607511723 144470681 989068189 263880080 314456013 322058185 398755362 17123052 323418896 971120419 958057671 148823859 807068617 415203012 351393756 897726 670360675 804122121 866140091 868596843 368724007 809789100 138732113 195177446 133865588 424147589 818366617 112458634 495067937 554215675 900025528 828621707 639860116 133932688 236783261 678242850 974363093 934072352 863187242 497880281 905494554 307740145 573380406 167774033 80880178 448576722 514588379 169147810 523499054 262594457 562334866 65161479 499237796 53252523 61437017 554273944 826524732 798675761 21932033 924913973 368980278 877999563 95495971 513842114 145769358 620234717 642914131 243438508 526535209 909224996 684368967 84070545 866919681 971578720 340497301 600520344 19994776 360592564 598933578 465592661 77743254 107720458 133365502 864109481 434439031 360195586 88438256 717985538 380533788 264442023 624261543 901615871 76112157 38971295 587425217 997282699 311682555 669245133 28482918 89165464 344532441 367840822 843218351 53987177 835698124 639955282 596469957 580468212 507271635 982693694 938673708 571641581 364330506 539690452 233525537 191517679 267015500 734328435 560645704 155216368 316418602 116079968 17084890 126312439 236240330 349223920 647235098 607467187 847505105 160800877 840282779 16931774 529742724 939336740 197792591 492562982 522576311 34574508 692747172 182089172 14238449 314008237 905210874 267875440 669116049 104417756 288868562 302520485 756834818 319243052 507695928 29820288 201090196 93471672 165397083 720079186 944816205 410447089 670076436 902857564 537134085 840080447 976281005 584871010 420521632 195978810 197563762 458299739 935343608 935397284 546339371 912849773 972378718 87756702 89018683 404174308 221584420 382619743 579288583 542975664 414648790 379216555 259037751 108018434 490736038 127159286 694297063 317274209 55430734 630355391 234393915 163401712 65318746 455454760 155222003 646624635 703384302 728649525 865850782 476346599 880696418 951709691 515113414 758313899 880684131 13647259 495252976 407083998 824247551 226659782 284604098 71583585 6940889 379268600 976457497 982819366 502810190 223867479 344701040 595495094 762527178 511585654 428429916 911758484 481407777 282564752 358003002 352197937 578004897 373602960 865473807 596832212 357226266 44958456 903836797 496162078 760748177 731590320 444468524 962670826 362891870 12426028 983429865 655636453 61111061 389186571 352458986 121626127 508272632 571779355 798020485 667155232 580065967 504862632 87153280 600012087 2122179 322921803 397350796 363698948 14425716 52608591 706788081 838986545 150155099 359418382 633604705 747018741 78834805 969389571 807081515 402897611 250973090 566433239 272941149 210754211 52890745 657564117 429696442 918749745 211814020 990392386 430681480 111453791 134602902 547499132 672301253 12239569 519661862 148341661 951755320 500634381 971494344 569699128 630623380 862302924 994807324 562141482 889763466 332624649 920635679 134818792 165381021 228200162 501666169 684501572 64739250 73475885 156800768 234844808 203183335 410733560 304619400 787002869 852215474 386400459 457179435 86469400 700942147 887654909 630335523 529729294 75184015 17668708 581367264 727949316 153372479 307627580 76337553 673094735 570029676 417862454 492879958 44192464 865330065 844759778 61047060 573031628 109016051 752480094 480280878 446978921 247435243 216937331 632881770 462670225 302499626 844949403 549891004 635121649 979421523 999577745 572651785 933358325 340116062 94627596 982239631 584636106 86285694 767477171 42017664 693277368 459931234 705937482 645956429 629162774 750775573 155910681 806379769 444130028 927543789 946680785 394546780 509769560 309583934 453652586 23931915 418433253 798391563 680027203 824630217 909330543 161337347 158469004 540969367 367168556 517094135 951337358 490191679 582203458 715064710 280979119 705229325 347236818 355800510 628346663 94595944 179193920 992053486 736295250 912116962 428266582 173909583 882058509 159673696 952120797 483895451 155139555 774032454 513617597 994662342 327727974 488308572 99609160 392784074 989449139 458560601 723438979 177106326 61501956 883549861 364358223 279212082 860488371 895046862 720370384 935690205 415473627 198439129 61399866 945302256 28895639 51425700 118606301 77807178 708830729 424334513 522667196 786111145 539911147 453755104 595663753 697014734 486450588 251798410 867643122 980454518 703128544 800257804 663695017 57488671 80483120 322161985 794270734 66402684 238162265 452626069 581961267 661827867 369343181 960942955 510158733 927451262 269449450 460426171 518246009 108153379 97470372 335742764 256825795 715689416 335829039 33590003 812047756 372520332 879302849 927459660 186951874 24067454 876558360 879081826 835328612 815465222 485177584 253402213 874752538 97997983 378884467 428058921 571223900 211420958 743602312 668673389 961530830 843299043 690855677 796530058 323349359 610552947 553253606 61053640 812273931 22929990 745935069 284636934 582667055 429306498 907731040 782305023 353399687 828141935 312591268 573276244 12216768 783203586 58805313 933901162 689894819 815397360 313939833 368021729 82669542 724608431 999731861 607737903 545762289 803262879 133240000 427138893 283630696 499085392 761471072 970371105 567909546 250281483 592456248 975537024 386117030 221465098 116725259 941196729 661413297 713421886 803928226 646327724 633546792 385585665 471884987 543019133 413197920 341257812 113808399 579153503 181664276 175555897 473646669 417617011 15818324 701664536 993008444 380140081 749726340 519689582 3585613 930246414 983098 26601653 70510864 438323669 298457018 22864147 120382773 75144336 250953147 476193454 202495129 574375210 634841413 903148987 305406417 866843786 153066457 164187667 162161856 709067821 981469588 443487356 693036197 728627484 569558094 224270403 288221323 617276345 345301729 428950426 312787628 313776618 785520730 516741027 787350764 861095733 852424627 884880346 446240438 350466312 813146009 633958123 179923554 381988923 403041943 233845402 263708487 668776451 985612664 847589948 889162346 398115478 999676607 443069198 287172850 823786988 818034295 585087542 720950942 951123251 411742858 164811859 32769039 990250425 157488554 713554703 65361927 709116720 372468935 315173385 304059813 520740580 679910447 186939539 390845651 9766012 980733318 958890089 724013747 533448059 768059842 488332356 925602434 536001123 423082789 232655271 489354684 924976233 791282654 796663540 414178491 129781801 920825230 369371955 188064841 905145430 800566312 70835705 586095222 224472 84074977 475301950 10771360 319094861 447332785 382916626 580833006 988648117 404021608 495869080 534727657 917978131 223076283 660226405 995288889 21503179 587237556 660862405 39604765 858232419 927376183 758590371 979687019 78118244 908076634 536483156 761593650 196626257 153375501 579238929 597263970 321793633 152694508 161671102 965484388 391044643 254448948 795295185 151821003 835999699 480022633 185985781 305793362 541678373 565088713 496181391 13702667 985961990 101055488 270600027 933912335 287273600 998273029 828931107 627771936 812848908 923141648 596433042 681700829 142710716 439275366 423948343 712734847 785190327 482043718 506521376 497048092 127693164 438982941 79416896 63273009 624368277 562882847 50784954 690164832 361367581 280180622 504550389 22990975 850100712 31439918 241635052 751381411 62326460 24814638 180326525 175184239 944690712 192644981 578034264 741497317 916602441 556397054 792991523 739423666 891753023 623411913 361520025 527550277 704080282 503711264 707882597 130515677 749781974 729294069 199179467 654732531 696650533 491434524 132658973 449239108 719243249 179633736 763704438 569330224 888349543 832017099 342995696 641971025 284539105 705841038 217372684 720015059 639372286 771863737 519525357 444011155 907463978 393571948 577059432 476967105 914066814 31339039 400795746 986327119 525086825 155552946 496096753 351573492 594752039 579411782 761138228 450404637 405684906 283176221 172490779 576730575 979391910 358038379 161163390 565341093 785276565 753967976 546169256 708670409 732672780 15491303 634429975 984696749 844335883 278511421 120358018 736502093 71296671 302460243 982408339 752563097 447727020 983320732 404765025 494898744 93935757 498185391 292040955 173173311 320100947 933570323 38407605 482300391 220800726 563914167 942112244 658403096 563578520 509800557 894722571 208818547 204028643 747505963 670063562 676465475 958683697 606536276 89879491 309826513 48567034 496231333 211795061 165007708 656048978 40699930 369226005 341814102 246228675 796619195 170760243 380088417 238463703 823000082 702597354 464111196 680723992 706914377 468124843 719729376 79605153 102652130 925437854 164686235 625657863 489066510 704278917 765818765 401053515 461425136 395451775 949331704 859122671 24335690 236036647 331532056 688159657 64160714 541776236 682922848 911652960 217700664 206085349 120104513 561132958 610261374 525696165 949544044 122191684 953130785 893590 169389008 732183733 546691135 105202298 433497129 962601770 908402610 763949880 753496050 394542640 183259374 193802160 97689041 941108933 309464164 38182089 59765374 350827712 338485186 246161280 722676208 553216679 429758372 634851741 711328297 765158182 131604583 698562435 772096920 282621769 473249796 135032923 931961542 488333543 483576556 787320222 749531315 218803750 206710610 282783461 182568160 415820472 595856265 572347536 678141752 799035661 720580874 66071320 389123860 102819927 144869726 667185107 775850757 681489846 323785612 454917963 592350079 529395147 897645392 775881132 600770464 442102683 261049025 28070684 524583295 414317300 528223837 493492092 427042667 483102238 22888655 695359394 138961453 135052511 657961059 316012353 125965139 636647024 234455108 562025284 16026334 443980562 250156517 306881214 983106748 514809715 787635269 820007125 399385431 133863788 341170948 535716990 614988586 782911408 902297959 20242545 313601423 138630825 965074680 418425726 318841611 444775937 803788779 24034225 588863560 540133072 793169711 382232282 871655062 607093447 124847991 499152765 453349979 541768150 21194600 534885496 831517704 382074068 996559020 252066661 405658007 734478380 110143422 696291368 277019968 293343813 867613887 222226744 267854556 288557971 487262385 293143640 156728218 339417429 364731791 121428371 955872774 476356294 598362045 839603963 692390746 577164769 865027926 651142349 621457965 70131480 534581994 115336636 690126100 363085115 527250543 993491713 393611674 651354620 355398154 608999566 255210927 324777807 584819406 73563512 45621724 869515381 189004050 659396131 659979180 319411397 433532822 297347099 703294375 284030607 408157993 197687436 711778129 878350020 168123042 150087888 293268827 228144996 455865757 700399420 944207632 316220325 166375785 738722133 889479543 708353274 331164863 326629969 765853399 863558979 487394298 795609433 142191651 883149330 742686202 170870231 659570372 348764375 637603491 579226349 944221872 438012840 762965323 870815744 843973103 724500912 955942529 277831075 835341956 363433956 171610135 94945692 641824975 562514066 243595931 930415051 756759477 527831532 374672319 539196944 933307331 16161789 277220233 491277489 868312884 530465760 252857678 59972989 778217257 520790470 959737596 170221700 205738075 353597423 90541574 318304100 339948360 440797365 372230071 607696873 432190580 520602336 512877493 466746533 925193455 248903212 922548019 58165770 757212994 719191211 218524684 483399360 74571103 399505791 787396533 544760599 661757401 181566525 586518571 53770559 718918844 460527724 770414968 261081768 434807612 796413080 113750431 467055145 225587437 341569699 785661586 303774654 789343377 255134696 381965684 97739354 149311974 680745641 576124431 884045227 838137430 565972921 32880005 941506335 558469256 400630262 804856801 129026013 809551713 554501612 948176742 11722165 5000806 24929101 4180196 77887705 435026156 769044129 555402491 434887822 865656812 417864679 687895975 42192548 768912467 920000135 187297301 230673444 983392778 786576059 790077162 914192780 180562906 370836738 962662470 983381130 33454281 278791799 628165773 454732392 132481032 810844579 313356099 655307840 228822945 506330512 40036018 238212939 2135244 487133340 992410455 905659173 391380194 149256388 302359713 243052943 459632476 830831081 619987929 766288570 501251558 167580999 678146050 155691017 94344960 273995009 259867909 2865666 806260378 506279296 311234685 822230988 38861390 598834335 204833372 978406017 947412258 362737050 329307179 754843859 754451503 830512160 789792937 386247981 332812830 407362787 77013444 798346347 946225966 17037359 75946171 836240125 925142387 258424237 921928852 948257551 173814166 908330243 608046073 63020431 308808335 453068836 551134097 416581889 543060525 192549310 776026650 316255708 677291420 897709222 244619749 995272402 766212638 961661212 300855890 927146573 89564452 825634680 956054640 269100942 170148411 695378965 777019377 197957815 493067573 354293734 724481832 276689747 546545999 16917664 572699008 782112158 296367241 223480227 318185447 975114361 422215895 964848094 134960541 38565661 674363363 208476697 515422096 360166951 307499743 284838095 407048211 38075712 823803066 617924854 88844422 362588104 724427444 511347047 31152147 148581220 577149116 730812327 253629913 692242867 254086636 224302103 77523915 772988928 982390930 410458312 767912696 568257179 352855837 209311277 289617482 673175090 599058586 740952193 736749527 91220833 451051900 785335736 818117573 269679843 40565214 88461284 222008954 122653857 784036880 512368424 933484807 172247786 675364007 444855318 424070640 261595699 870739602 559778458 291242004 19431476 965106 749093198 517685948 183565065 269492768 726198186 485855631 694547157 207287193 743387635 938487915 545806983 671483291 649934987 956809848 36139828 636430086 818394414 772231013 473022478 958919959 568553099 116650489 776702 945908548 58581931 447605540 55972459 10887841 745981245 938756365 71893868 348655254 258200436 242820823 795077455 399600743 703820464 864825874 120934394 599048360 606994595 83184057 59578393 8750258 682164843 726536649 591405357 25340713 585275348 373722838 820357018 603293020 524677142 678850260 611625131 40955826 457529959 872342600 406739877 691006753 379283704 860015209 75024512 138430739 64791700 545441735 498940249 575840855 44024000 159675314 84377123 342428421 875646744 621403898 917492593 226228218 979602353 711478690 745793361 35661072 904246258 695958496 447287525 911829809 55750792 983099687 875814182 759377684 127316908 484563784 729857872 122803170 127931788 990859113 697150204 689103053 252326095 613124013 485322219 459618679 330826109 28181130 730869282 760350105 157546858 63308726 575498522 154250419 247927063 609701368 584423844 330626909 722488779 145781243 899655705 860944439 110530694 553518328 552049806 515276746 482314540 792915210 70030103 361997426 181401184 7811909 786359831 974614594 878727001 331018900 258618377 960584745 934061509 563427456 15380070 331431179 167511908 791309868 192155318 779744916 15348751 328976914 692677161 443862008 458209940 989727985 722363153 552684952 493396622 371935586 291926239 525174982 618853852 239113279 914333550 787124554 677927603 833692529 965819488 675776153 795485945 976398968 891669862 610822043 827927493 651601209 565761387 107721257 895909811 144803551 559409582 917969604 492586873 144822814 163826307 351780593 765094866 650190275 96743166 245299420 946930157 746987450 395018224 380335038 625008544 450365701 702517107 772793084 740127567 678899067 943310022 986397478 79229396 181616561 474746329 536425182 946376062 783556869 528358271 179533246 664613579 174017182 607886398 345282068 119776797 522866347 709263219 743917880 828940629 681020868 790700684 481973012 400999286 236311095 75553081 614806102 719494996 358122487 316160727 638974480 392683310 702104511 795693561 654413423 945346437 309685992 779617655 102879664 88133672 519227696 466519972 857573017 292580913 505114116 182094664 267264753 707109002 132359835 872622410 706273256 25572971 792041253 577362776 680775157 743442235 295538101 936557449 125423149 747424088 570607401 389260871 273977565 567148420 243195534 199450269 266354613 798950263 829079630 284962964 210899059 14085185 631735415 362692659 207024335 642767749 34547716 141411957 560800046 136373203 165356598 880255513 63324007 528395070 680335662 712667116 361554500 507937668 90019953 649348333 686060986 867334912 426115632 713217226 180190034 201377289 546594914 415702934 967233286 168194690 408501859 971869914 760190288 830017968 63491563 94909160 262602650 874625163 407656322 287716088 546889668 861722846 907277774 131652362 615474867 306604450 773304887 7593982 351599616 395951438 546020873 201301829 171554914 853807693 764976432 476245645 711768009 498913575 688825589 139526922 832968115 590033989 761461260 23979302 275063026 75606354 210301446 493270567 221792384 346512158 496321196 933794336 700595436 336270133 881788145 204396028 476339464 805394946 833314884 829851423 858552423 437600312 229541053 328801452 259186822 795900171 551738446 404551429 783289706 589975130 938174138 556337057 856591867 81699490 934319831 823180666 106193232 107763103 695655304 306200065 95489495 935372482 546617666 212250154 114497604 663424800 161642472 819481127 706700215 542145097 667386848 833571575 837619161 866684038 46534244 285926754 458336788 425447929 78382285 671838691 438459191 428169167 512306902 119322630 595949784 177592569 76030910 967119228 64846570 298241809 830334201 89190069 148026 611519972 498689881 597040027 974505885 572836037 80471887 833803047 895291871 713227325 788561783 124845754 304138116 91289503 528174689 24524472 671979298 553969464 716267346 705207723 429677110 317013000 870114995 887311036 448741062 230474594 972375573 376395826 220123429 701049256 624536349 335380560 756292556 644593469 835850959 857685402 859080583 893984893 26149330 758673384 618913755 807659661 262796081 253512502 469902015 143320257 50326258 492782164 415329639 708632622 531921992 652546299 542935872 336841782 355961967 160244408 188940386 639867871 836625262 813139875 488945420 473014407 897537980 746812819 559357126 219683341 842247661 763774393 221425813 935182908 474157564 912094290 614123867 221788183 26459417 326929987 469017935 44613510 681793309 636910258 975530149 377831787 219031849 209896492 774705794 946429119 267418854 425364771 640625632 543089783 311253005 962816887 297042189 474278591 880575967 234529928 143751273 289797926 959791118 120634453 174124384 830787748 630749662 103854094 684339408 303002760 940221637 108915435 397199345 716877177 828635572 450912090 861105118 529429066 164563127 718209057 831809614 207734201 241657523 270435253 752219003 482095577 419164400 249937005 438941715 19199856 467585424 84219604 279203725 2697466 787999055 312675139 653381323 615180228 112488888 849124358 832334115 251888044 595967852 416739725 187200236 480687207 560550924 26546715 194840416 167441183 677942524 413615590 848762360 834264595 140219491 473281812 661384983 932527679 218916757 743100249 360448251 2643413 973663160 758289890 319298680 381969368 313766415 183177145 98475324 701027942 366309178 36856662 730945012 538150026 748480093 6712745 274587676 82635729 964221717 447837741 426087 624178477 299673887 529181877 493739357 326936096 549340157 229518425 637925550 806997033 681700316 987561404 659066607 970847463 952735888 732163913 460783090 949569716 935805817 649501116 563876830 240896819 393050170 633506667 277617426 377808973 442069843 887290520 129554200 623852982 101255282 619950702 148317358 565966910 972134685 230828033 742724314 476747168 711084968 737543449 494582064 973242274 784798936 574720029 550631257 601821995 207130870 122473767 818709507 573276377 350319273 260808862 226583063 236080229 426131333 987746699 798574156 847354140 542962732 482649290 389846775 469273225 23725483 364437496 209535080 349097158 900467673 783487259 50030862 565430834 261894497 4724269 177715504 850470371 495677184 418061977 978198401 245236830 851771177 445760214 834834555 584171777 397327570 611389924 776274053 344642325 405819090 76031763 984015130 334069164 782950489 203446217 771105797 179677527 667967099 463744637 866396218 297062326 643313247 965911851 894354760 278407551 259479228 622549511 248145725 553359242 38763124 233020488 535128459 892457881 346986423 85755913 284883110 688148254 533108722 800402072 852651749 451557487 241171008 589404627 472679926 747796988 928331676 846930084 392503133 605022293 945112842 390214553 391697441 610409171 841703480 674030575 940639273 293102161 515796241 29135016 518468357 273110569 236625522 622209766 651326818 557875480 566508297 527593635 614636004 20299106 373914704 981914624 564800418 306965089 91959221 271465042 363261190 614313556 544491829 877727247 943930754 47383639 403403923 329807889 625392301 714907538 956104126 497081045 384244572 725626921 40764594 628193371 493347575 206500235 526117435 72248481 992336634 780757577 695006055 182159148 238365066 830388557 788563011 967097085 556104863 261910057 841852908 584803674 661818329 470316493 424457426 823263368 925585872 317478618 260247838 266005917 680475934 41110938 510656929 775023520 872416687 571163374 693078345 787446659 855714371 695624475 788031027 176660407 95708159 950161284 373512562 127279314 255945517 996903486 576728375 668596013 653181834 309701439 25098625 338761497 669970263 594091411 180610514 261408583 441162913 197650939 346272184 990221434 532428146 719604561 394748341 212535190 607753646 955025299 51725611 946720805 713748859 430478151 50939831 839334490 814335328 928066453 902270522 120736456 816007041 23835011 954754452 632795726 221549367 673030287 734551672 367140799 426889876 111796541 228118279 119707220 417472565 886746587 380063548 193779599 516927543 942598996 90559211 116362004 857888372 977816093 460350130 686842074 2385132 335781887 665633888 768434722 20717422 299748708 289962738 919412193 444657506 307594143 562335203 501084283 77041354 255539028 340002546 881488870 264218435 547252512 872881624 411791116 259134320 160899281 115674518 145691138 355594262 901140492 529869856 741984288 898202348 960213273 886749955 131444917 225522825 954657269 458447106 181672606 718589629 97399618 264778140 194891508 663042546 657874381 493128593 935206538 877626587 344663228 986580141 755212326 747540469 333246498 312843689 589948794 431512724 693045674 469365795 434123616 668688209 298787498 181450869 935212349 100071253 839512596 946563601 539194855 612682166 545640035 359005260 395421942 885728961 128731278 212128283 791999894 819669732 361925465 148569047 381427728 1359082 263198869 391645850 144762786 72284425 15050635 744192926 208384659 398925024 698101199 323340774 381816723 609995369 494080712 973134263 889306852 889971698 541793426 8854999 41007562 664260057 793269436 320305011 824543449 690406368 937381957 643741664 233176271 637796435 352402426 876562772 948014906 676080134 308688296 13636797 189848967 330124305 842839630 680357814 540808269 69701044 896078100 163465852 559211228 735914503 411813606 405183354 970156901 897187662 68197895 825383738 612109543 751406164 890394800 990249677 70701655 69965497 244222031 608067199 116905005 434735247 352981265 898172697 887652863 860923201 40128757 337337918 128039962 411477904 890443676 786737198 929868756 35796724 877027350 774474909 945974269 718570888 531023374 445459558 664406826 69532893 801130438 348967346 501864528 432857044 782728937 667871945 739598642 604495444 630487159 544803333 352908773 902984652 684021007 3979192 138958790 69231311 450686665 840239560 547911829 400031236 26946593 618647681 856014746 558459114 90417442 687671670 815411196 93237889 913843445 21617361 354367041 116014650 713382554 623521339 934094213 496046447 585610987 220342062 715646580 329142228 749134462 399201915 511313421 505050066 981876010 53108697 385118952 898266714 283665090 533177665 399301359 454617963 744501417 806645282 342478192 818812964 899341312 918093481 689170947 404142824 394055230 451458626 216088042 519468354 516790919 413103167 50715670 563659701 763668250 113716679 56023897 635381343 482136777 369419046 697685444 608144479 463519050 251859982 460329862 958172212 860156345 56331994 967015053 676275799 424711380 833986465 80995706 990453881 758123497 615976022 433836175 658338283 376135188 503533411 908139836 707744111 428443021 627359742 115797826 638780137 429446994 91871513 358115537 239992495 185406998 798668185 269109231 466538205 487012733 238839607 420675259 177689711 116551554 272128135 938837841 819444563 335547898 475065579 897487304 388946282 332569710 899835612 479533857 414021425 118642916 898730687 777080383 975548674 926323088 1429870 975755366 894622133 338113413 554776724 621215934 2939545 15500613 669778416 114410643 645893767 792584432 831668164 449544466 739532605 613963523 682020105 829477786 693712000 616876562 785686104 277614202 78370653 880387265 66209912 267991845 200001025 803062525 791523188 199855506 254143100 199741335 705616643 144981334 626468672 611666140 842214341 217369854 702994183 593894746 877409906 25113648 494154254 244325541 963169022 906642632 904833929 957464951 823786201 67635681 397002307 130582507 356824509 369073339 913339375 13200762 731314440 570276635 652648129 671325677 638868183 79054144 365046687 491897931 201848897 367342570 478038217 93637541 205279539 952094708 788704571 971585562 755061862 959473465 51492373 964211915 9761295 696857825 124891536 825692729 88129556 888914126 457956891 682491673 72258199 283729192 437727511 94600455 17670523 855791630 674916147 150240827 576063195 929337173 709124269 268517498 689804937 215050073 457382339 939863066 348977373 331617634 817300318 95663398 851333697 648512164 463423033 611466548 948999888 566175292 237364281 852071541 337646417 62485232 959947380 719776197 331972323 412864630 339897077 386599929 844848641 614713393 131561712 238278525 720399491 722615090 529775102 713267630 904568743 277930541 177564242 421212420 451759418 229615585 319319389 540223578 270916822 534806772 862504378 254620597 979859984 324877574 572413293 31527977 193844793 66465100 138191520 406483682 67487459 701541850 790215997 812090292 209258328 169612709 989775813 568389784 270713566 615897108 139786294 696034210 417587275 690100939 840070215 850624659 594833486 704827439 680646263 438411435 41198301 742082191 959838682 143962584 50156760 500565132 630907421 872774067 349798947 202025475 672135028 766581327 835236636 452110768 601316193 264386289 791573118 12166906 952724160 108154917 435751495 412268664 950447870 553818280 231738859 938332798 744978978 812479036 741867748 263446106 677149270 119272016 309549879 320193316 251109083 460201959 390443581 614392943 218089996 853578845 720492492 427059740 646667950 135660259 108151847 147326046 793322919 785998596 648142659 761000727 778465004 427301753 169220654 636894518 19145784 601132690 375089921 232309282 93731329 740405136 268148101 300797311 9828018 61439135 788258376 885549754 927687521 439277386 224093041 292329531 170166466 261881834 985174330 854108665 818529404 567928132 13136394 530421077 945616153 756424665 107187091 187520644 965573534 877843398 181505319 404727621 9296575 219796180 360168704 510605317 625937310 47975776 432337668 308333834 791494969 463207625 593346755 829770642 576029482 236440641 753449353 249245929 935258655 467963377 267240193 163843106 51659191 272682281 517094770 804040653 948593837 22552304 549875338 910052593 673066452 334065707 542426473 175729818 749432359 548624761 656132729 199656115 999572201 379235759 565904694 77812147 478800286 632905551 893782888 237937751 375270371 535654260 442745264 852079276 903418281 978667402 344295121 943618886 208410066 711617363 892784476 797520911 90795005 969592597 596399774 196469579 677547900 77612075 564858594 961487827 896987468 511327713 143903260 141070672 614884029 662944343 626605096 907031922 771144028 262087821 894359433 620317105 480636095 3075974 763188470 135903913 470621899 446405509 208711565 212199662 352220302 668966456 673648629 915084401 377834172 658706664 962778452 145892634 795132070 412646392 128063021 368610180 454107092 941372833 894296519 133782173 941804292 105609110 813951312 557546586 44948370 600895150 284973614 550447014 560868994 466152128 937717214 913039997 589199630 967667941 37313632 917629700 27613969 974599804 893393485 655138475 466793452 478423244 931552077 563713077 503028495 532504531 942919420 778888177 5450322 536720147 199179936 35720220 169865037 822597086 902424098 543620818 68389262 87118792 607450995 506809610 780602177 650027216 444750709 320110629 320230517 483015401 424629546 538979086 586285548 844260641 174095071 207807836 97952686 909428062 79580710 12955718 967803947 778968236 996836187 353454726 707644014 578764264 736778998 625953757 843793697 952446463 218453580 775715040 357970381 112966614 754957450 65573192 751203964 182272507 790865918 252769397 964589301 365819106 791664496 607692154 145858126 886766109 685325499 411811148 737736686 324318193 99939381 369288475 173748557 112423683 589498610 940305085 525830710 927136844 900839115 382995061 371096745 995657960 78225180 176447568 232419947 639618804 78401296 412172736 187188969 447267684 693384335 518005202 590184918 904488096 920206935 195931632 120151838 684141187 587352511 837110733 329049011 313785383 606796004 846978901 588393357 583416828 357566909 971519539 893385737 822924013 89911178 983974931 44709238 710689745 988711802 973705907 5082845 424397165 423708611 218030679 341069899 488900405 802786488 757717625 531948437 623366449 656393980 145557705 775034418 335798654 984511674 825807695 248095014 805913159 416839117 247542350 921579051 868324800 339125807 157748322 546137115 723980644 548632837 592718084 686471413 754659835 134735431 810207070 7625380 722567587 654864853 972419794 746185060 621968431 271440015 967237009 469539865 848215465 674700123 919991790 388544265 105726511 512369794 453105304 457965638 668145151 131233106 438948901 598776030 906968719 48077356 133190191 47096191 829381891 45575789 287351845 114972025 875425343 357021970 531858656 391544701 104177130 381258822 812180938 352327139 620114249 214086483 572218535 709524710 183230100 387933974 114622509 381929145 6522331 865966596 180917536 23480707 230778106 26476263 581788265 537500614 911171403 818581090 506393222 380686776 780452089 667989529 4770072 431565767 728233425 727237104 264190145 239284026 341558447 538699644 888693725 239749242 410441953 406552815 130685785 473627434 468805856 561929466 345136795 310972824 808348171 762670195 62636290 368164878 67778062 348324254 897963526 324993447 389064530 824185709 512507648 700761895 382423743 710347605 950856414 326005722 201374558 698935944 106588839 329452570 776258926 6545068 225748680 749485068 66998607 693651814 662539040 953511225 397805369 980770019 397526097 442727236 431062702 308848109 168011391 668191832 230034032 812248260 103743424 122001667 215201983 386838285 780101453 410453536 885052438 763809926 309293447 880371215 431976547 690393496 641995632 179071798 692033946 867825109 97468040 451038565 505576919 907771360 491549373 201858071 444634569 681893994 50394283 444169730 463268044 155695145 332160336 874020952 288260495 739489829 89786591 959345561 989957268 219669694 653231005 285077776 288032303 418091537 981203729 818346778 270418711 848979276 662585419 645441171 818808232 762056829 181300720 547767627 254465678 544660862 650689522 901654683 660677914 781927954 969515852 767191523 912814071 153687524 93742332 7045621 115790687 422486738 123586778 900583374 898538497 539665314 360117823 608977468 812107816 463208678 280451858 512623978 811457717 141588807 937138896 757536480 883943983 43047219 983995809 481325102 962061260 16617035 209500128 21448278 303113377 98476886 655499522 985855816 802911122 503945495 777471126 75567443 252339309 373061198 381588029 586155413 430225828 500232515 998957846 507713789 684298492 177336388 364221255 823032968 12279761 693016246 319979019 25139069 11105328 327918646 321394274 926354082 527643778 904778097 398388566 474271285 302695793 426386929 226667886 739651056 466155749 820043414 313473446 248919758 725960784 370779396 814332061 736449076 270087136 866871498 104220750 692216563 379972947 902729287 133332907 488219437 815888260 329638472 377253399 965228581 881435432 972124087 257490719 604012288 688832983 728230748 41542566 626324492 829515397 794921063 849491651 302442482 441066017 637110742 791154596 477579081 242778352 770854934 518310969 94894145 138896053 892414343 315312256 892026630 285006110 157260847 680585839 295192640 130725219 836487731 740013615 642393344 937230597 857350052 539355605 935133586 798143488 906462433 349896779 705223584 696238938 308409536 861415568 846842282 134150209 208704450 715258466 81843658 60590554 892090734 986852619 410993062 76234142 2489216 231333076 122573154 423758047 863042614 726107012 178267097 827480062 685211404 92194871 633811432 326018743 207315268 591784951 87496914 140399247 375088505 938223897 49770272 542252793 510117602 792090568 597132185 109788469 407563055 858603525 355810833 938499489 600004731 525514691 316604777 367670954 884674579 576971057 375367204 739345199 498557759 229747544 534868431 564048360 38790197 975147193 299775243 926301195 716957842 982580575 505664557 499987746 985974190 643946673 62181841 536723220 359290083 216108592 341134114 801299059 117695189 489495736 920215190 505140834 851511872 900920228 117640522 513563205 645611938 257370100 213957924 982350572 160921980 239177492 886318164 880191680 443377309 617172237 942847809 282707087 393035914 847030495 300022384 843657974 542281745 386214440 551572962 462628404 34077971 772982409 405462424 387993310 904533368 36818971 904368657 545220115 148001522 543036439 882765269 225364432 542655229 549421400 432676028 81410711 165191449 270573758 312383541 10778918 711946033 89278178 800304397 393399543 272125587 63472659 761760264 367764170 160909084 50413595 823790236 953019311 481511318 505196074 123686957 87777386 726796012 741895883 318148245 782740909 726951929 948779527 50849605 553944597 402293340 601158122 250979419 629801379 37170074 20937932 535963826 942943797 897297888 940474036 170489194 559691042 139010320 98540923 194398018 146611996 729283220 897680037 394278440 152406581 213415389 471059057 435931987 726708195 364755774 733348033 656804713 245906207 369655954 300246411 820174023 488698989 973410206 617273126 951531137 366884592 654951609 223176675 268848076 35589707 847900350 207353343 972419593 902203483 385223984 695579380 810375389 268424359 331733065 261073068 614949311 968319871 108058844 93486560 593757365 319729094 893573265 241869357 783104194 625810214 968957335 467716158 189204469 566961978 934588631 832831601 285222369 171367958 914159580 493297833 932983940 299586793 699580609 127150105 944569024 502076673 285926695 304937802 804752450 83435658 478791022 951353983 472078697 329653371 591203021 849977872 674133559 628702548 182305829 595409600 491255064 903849743 551360124 587394043 513751037 69872926 175994805 727629932 377950260 140648991 977839136 462968689 563947609 761611994 514723473 916859507 891021970 847896228 60603381 163096446 659373995 51834178 330606919 508952936 739196748 700995356 386203512 526989911 488477936 943617179 960991066 385515325 485435835 829828879 233395234 759577058 720707234 599610049 478912301 408029548 871145486 425689899 676084286 463745574 352350829 17980261 196034456 627278895 852355494 995139734 383723984 55429625 777198541 220135773 75224609 107337191 796665426 957516478 488234367 775265866 197348149 486403057 667311285 94330445 624411381 952311726 117532854 360691460 971160939 80312728 387731835 313573492 654779340 537716155 227738943 730735096 757948673 651191626 88484134 275215748 557257876 241829258 21865551 740178537 535509991 183318243 27715587 455337450 482287557 709148384 613476492 426833545 668703400 77000269 151561208 646720717 172706934 672491359 69375955 347243286 602994121 298208471 304159489 165774664 629046744 391689624 842920251 165831171 853527744 517451835 133165528 500373680 412343545 716649280 969996449 958857447 256444683 919762081 184922795 98614905 251347317 685894130 737865091 760979340 489099475 689793428 458425442 60996499 962683576 446956602 118352621 645490135 973854209 525799143 399504974 289374249 42243511 460106770 990880774 240942640 530753162 633642397 393288478 712461160 208788032 487516870 815431728 549425607 491206859 193306614 735233304 36857196 311357990 581319396 247414314 702493140 804391309 927781535 684345840 918140211 726589770 10569203 303941183 202856684 116819027 426184594 97657021 499403257 614860066 951203093 272838594 881708550 101117462 57400655 354617571 727063707 741137591 681733483 328353034 721642815 951312327 36253969 295523189 16040677 802221926 473788037 709184551 184799128 154753829 573853543 925251024 108591023 654290092 881531292 602854118 341715663 187131408 23668791 525566212 491824584 266921136 186027214 44227926 831291614 773916800 762126556 904390215 684325927 169099415 208953417 50289894 739562420 88236066 763667664 71468709 206602803 627972478 447888944 871945950 426364391 860402045 59434677 419509381 347679777 254406420 248675301 59201953 287436238 619052489 791775184 595125977 219736840 848231659 693603021 222689016 753391116 238501147 307287358 290017150 886656551 478246877 275326835 9944056 74426432 221568378 896687623 155859601 976757544 924383277 361026070 368699522 812651906 756140128 778296032 174411266 567466108 372673147 549640892 151921444 84919946 698433445 147205179 238604872 969600267 836976829 159963935 740390051 504390963 41702634 479655649 374174118 61283651 548567969 212711580 812791074 762458838 208506891 142441060 495518899 215818693 414970454 932322038 582606306 79756430 285798645 382803898 748508653 378971383 569013042 644557490 587058514 358957101 215776843 728397944 74023375 591857193 398535089 419762560 865723095 609718650 747629355 546486099 991183315 170208010 314870175 761253294 963616437 793479578 777942180 287703468 494198405 101924432 855773936 962426655 840758900 657128944 840080406 736140481 417723989 712506908 455463062 889226170 55032978 7663244 131278143 830014204 580736623 623705818 427549879 578902059 736967650 847847597 110529679 796310566 834631102 825863351 86092376 169978217 176792709 989128326 922494380 222527970 542098973 512156008 332489073 284250209 421028504 52725088 971108939 212743326 1809496 647787539 624342852 213425725 29431060 558594582 782388084 737551965 237020265 379113230 381651819 512237512 1956359 236107199 528313432 97089110 820134599 109736272 912060056 9394921 124007567 321720451 162064023 588297777 463140079 748076543 574506826 664736677 917262160 376657405 740113419 133382463 76794451 324401888 32081317 558507728 843626947 877657495 824070140 9295687 20073073 747926084 818796798 825177156 948732954 854046742 470426227 988580612 540431746 833942693 134792167 968266560 151545565 992891099 478526841 495971645 3197264 444830602 911953903 464614741 320902494 437190634 718241073 925351063 930410384 128596008 474419197 823203093 80360457 147895173 103233043 746721024 275596214 47591392 35898719 93410407 673923761 60170496 325346077 703914228 145235340 540560022 436804127 183030970 161752041 462334663 998656397 173929041 651404999 268668483 227450738 304723541 773920984 542386937 683356868 388190014 76807993 808130122 312879103 912478455 461998796 873355796 989186960 1486095 619815371 738199435 622947232 961469910 757074704 385713792 287581510 979034771 66553564 539475633 973155895 267306822 197862719 461224985 861413870 190362307 759799395 4341433 143430725 774186631 50160865 392797654 823346587 105912271 69471970 383034079 362930462 910488899 170173427 879304907 546835526 232802967 228915903 102383163 188340363 387388435 679564131 258655310 393429101 168416126 154095702 829769407 294453770 566157852 487180499 723888777 676069849 769425780 393865162 304702944 858031198 426340628 101661648 731222564 976775588 925405805 450783811 230022355 631063645 825336913 515817455 615973867 554588968 269516094 862968697 670508744 114908753 636325954 566018690 416870918 824380043 111228565 772936619 383286325 916605754 192156392 841203967 545915934 407711727 383743807 926988932 883303324 917398790 719289673 484183877 721514102 58262759 715933654 346199748 859043472 194396405 739685774 136262453 11783113 893372226 744824410 178057097 850495353 396616354 185728048 309392020 659229851 115603465 649761304 113632483 126681495 188417418 27530297 702757154 253950025 280440787 730814784 382409815 414399752 741622417 465376464 485109295 692737384 949015059 845230249 805237334 369787966 329627918 267152209 428998261 385932272 708125135 167438600 658270842 763928554 672486772 766541988 193407591 4199332 890140892 909722590 372712026 164116412 765532836 354768616 272291634 988436677 868638064 268041634 925830551 459652746 209982082 549293467 481826413 372854093 805753657 429923730 128737352 540192512 483293112 756915459 319550244 230436869 206644673 659068725 995725072 836132795 326887715 752951794 771695766 512443273 185852440 876832134 42565242 252460350 478711176 429984666 664727096 128161228 369513756 382234345 964023386 544300730 588686081 592895945 148856369 481774108 235910613 255112376 718407313 492032674 805879841 668033019 968950694 637054588 27325283 213690936 518957197 931456201 418844881 63883093 522879301 791525266 114365729 203202233 833056242 491894680 37825628 519968358 53325368 11595876 908449470 798638294 295305534 195766463 536929337 569252477 579999089 292839408 747274536 400029281 342055934 220000954 969414041 557253872 796031332 748763153 342559578 500051412 293739710 628975444 698050942 808468535 110136376 484487003 923929003 206419671 618333045 993427499 2999546 117035859 165873371 761847249 111091312 737515540 557336945 938666820 535672495 350812354 35431463 351627660 928102415 980404223 946943432 620534781 959801388 672183482 512029838 454045480 555819194 180499944 387331238 753848966 19348546 518107712 882699313 517589340 274569438 605133352 353274173 808841774 114449740 618882791 822424155 553814573 979895144 421269035 354724825 330872180 1557028 166579214 140319547 182239282 286755101 55080193 961439926 472654337 807100822 795154800 672805606 971465849 819598918 247591250 665296165 907700188 912568171 438705737 947652104 616579764 592122763 3768652 462636314 488825706 22816475 474206639 222139800 593323394 663653968 727516528 922107045 443359882 918240432 251546596 749220373 217412220 930028460 85854081 759633124 108754455 967717002 309315035 139040913 895350489 139012157 719439352 149455436 851308087 123095204 709899648 261705112 901111026 368608327 476177813 448282621 285805774 542578548 442483030 152151545 294623368 238990554 865012917 786664510 774929796 899897871 540375368 739262241 650075895 376656227 763427486 703797277 62486555 15371496 278187985 860289473 940263145 34643922 778903589 575814429 954699895 612360040 874873480 107228235 250509068 637082801 517902536 801428609 825644274 197939122 214164180 468726905 758515158 278904522 234035930 5429079 476491535 336169664 532928497 805435413 585579625 878583140 825531007 897432138 560468484 773062949 469315615 169247655 735143267 425696477 776970884 88333158 781363777 233974017 228525113 550011756 203166406 488136345 625975543 786961977 103803979 341063442 513951271 386787182 249023859 112271081 285284182 674063892 390817369 568390793 751291456 564015669 613147291 213397970 439736493 272295895 712578196 421194685 274438418 143233345 329768674 328798194 293813685 517226040 753092714 469245165 493286470 239585595 797204332 533874655 119531319 697161498 712762650 799670416 84404495 752401418 342411194 991587957 369578661 119073238 762430764 712282077 513603621 982118438 283463330 457753748 690208233 822931979 743389274 265545314 955331404 477334968 533465155 990050206 78241170 457614657 6546242 97744545 47128775 894622443 263982751 680313256 37254068 451268467 874549537 8889542 647447415 126630285 231091130 788684598 365112200 975500076 215655943 228314927 93251961 859204835 38082138 192247951 363960530 538075754 150394346 414049474 737824246 896069573 748166048 540500736 818481453 824132477 801855130 43973705 608672656 969661953 471381635 114809828 152406657 462218457 224185517 116114170 947478114 341926555 378517287 384564660 815924418 911706816 988491069 501678469 918307684 71676987 580632341 579957524 714882939 450516436 192310588 774832502 436726993 13651057 742291006 413406407 662011960 265726499 245221813 664584377 181255950 187395964 70202282 385629128 908724719 667490740 436742077 185411690 623009051 103582736 71567187 416806004 409789203 161214023 780971908 837534433 866801733 751812426 88403203 130541605 250435592 403471847 779570500 659279410 9241071 137242973 12869570 222362169 872319148 569008609 282356061 156639393 457955795 942981313 736142651 542296869 129683016 592856754 943019777 795607450 928222063 169858555 146768099 714931099 600790373 11290732 613960152 277988208 10931042 80295922 247835505 587871481 836828250 870503632 817189278 432831505 629335698 321606968 557287678 22494612 594666515 983669606 194761136 937080631 767173660 149206722 373514817 181369356 2728074 77071645 675055182 666215490 406321127 520690746 977936002 99455850 494657875 814174065 19679956 399393513 318223322 733734089 149121203 284936617 996671500 658505182 162124621 756966493 397702621 318806880 862523347 211153353 278699672 668362151 586415095 501198777 561074547 856523056 816494040 995074503 356006944 684882819 745511689 676577852 424821512 432485610 936139776 862885939 86932418 232336413 73384697 347099872 572663550 123177140 292355971 254949271 235806387 522139640 333740488 263177409 196040516 937232421 896724229 315916273 268694422 840038049 431376541 129471557 830207303 962176473 813329731 901640315 311909730 344944953 982640968 854192157 99549578 571298496 105386290 461481262 947280265 943566204 120769987 85297496 418193358 135346732 204590550 496836545 472904740 486124401 529326792 312778199 106135486 295177824 337451216 695138316 752212276 782641863 289469663 972694808 792427565 53822730 941472320 310249282 614270950 123499402 847572427 132785186 354902767 468574891 324797379 611950110 190664777 449886345 669094781 990342475 533049542 236602007 301593535 299472888 163393072 181244790 939047942 8949349 275584839 50101147 210693719 985154453 249561023 524076362 791194345 352100251 789337591 785116206 626398374 478661071 784540406 735848362 100994720 168149429 595647338 34328190 444773725 752267630 627748328 369137342 817472160 495268370 178232438 822884572 22551799 969872094 335715406 220827965 904008593 798630543 695374182 57272873 231581809 40964883 195858826 936819017 827393986 840155706 740258797 944842263 13404009 959856697 678200005 639902974 138428052 392346798 560430050 201900521 790125140 891369336 255491653 466203063 286244588 416585970 12449054 555634380 756243001 305423474 990346555 479070695 955656482 614961819 258519104 444389653 966079912 796562067 640040253 868712490 79138388 291961523 352119975 417105267 306037705 722502813 34388167 130544852 885084937 217051473 692061854 587177819 731754370 992797950 663629089 557332634 199806199 101303856 567397616 869361372 831891059 83254583 32996163 638321900 711148270 684379480 31853667 662523197 551332837 515372061 223989159 276631279 802701092 841058650 264037805 490114819 850439112 72273364 428074256 618388384 282813930 385301103 863224035 187162054 595705300 239218677 899065763 624640368 25652200 981458797 657515330 84646372 828416171 680639723 356408829 816696601 485155464 408891258 942600220 613878482 867347751 86996655 305687893 457187815 684896267 513962756 261364218 643477540 645313656 642578159 189266303 114011253 652252609 14913084 122066234 237523523 741571236 129723878 582598557 893156513 353412228 992152848 595163478 77137995 661759421 313669093 509261057 108022517 409518209 411392223 593575503 566778355 37290297 276310202 335699253 447620425 323717050 425233838 10785496 749685187 318254179 351240740 252944763 694666308 773545547 509100297 613473950 124946533 351591256 17431251 857967428 221997474 419382688 184387173 215592370 330900885 346295588 944100756 985349756 408073621 568392894 938109008 699398910 454295295 899075868 690934759 982867560 893136719 692776669 465025751 292040249 62225342 33246716 737075126 285579005 610988458 246729303 60274461 609012544 375473487 570240971 526124656 368078916 512158629 371004885 965641533 335297242 121318728 153192957 89522793 127391648 408844689 416024777 108452633 687307820 987604205 173051333 708934430 823658117 206704651 863998091 118354516 258629435 174279617 996445504 42920752 836952188 650728561 223392777 320965942 645623207 708798289 431629197 93859991 752959996 349749457 763058593 845122842 700687408 102092657 475653157 355835768 554773904 326196254 245757234 522117581 114226407 659451834 803277802 195373182 609110288 718761013 904226417 337499609 508069067 661603632 896527106 127751763 994361038 898671084 178941566 980419621 50342456 557120508 957430552 287394271 341059948 315133023 592741145 693950189 860861032 455929520 375160663 549253844 102347580 51381429 692315634 232840513 659100503 879603351 176351208 97403762 248415480 473474825 909300378 648300017 310597981 942004865 668146490 76592923 30276265 597125608 605731812 528821199 718890246 458217624 977998635 57115853 155032182 1514212 595099292 756930015 539607657 72606580 683037470 485553566 197624936 121285097 84320633 405787332 586899231 783814403 146196467 522922405 714169452 393629323 96444495 866509149 762492238 88965769 567723568 274063990 897965727 954431107 6650433 828171378 46641391 67344875 474033749 774116607 561626640 809182696 675972246 434768923 109215361 135528977 697192084 398574281 704911958 426052237 542403480 967884360 638436295 93501893 764314482 799190601 838803774 291717759 463309462 665139437 897852182 299212283 647993027 181804741 227283265 835684686 901058030 560974502 628945901 212801004 341045038 576854576 929041545 561374954 884698193 586929805 505364409 216979883 168004904 842902509 141690813 516534680 152056847 863135271 701297807 361448240 752548174 669515974 321018566 272538351 326250665 173915836 74705196 843209096 925947279 183932644 871753901 692385916 662576347 204977491 410445219 768862607 979663532 488434567 66557307 990922835 215185616 532263532 938421135 83968510 496397882 716360647 94086466 285023571 53825418 879784697 676722554 480075378 983102472 729969033 553256175 13143374 889874153 917212560 862186624 546616682 4623278 381497332 422620828 133300949 252049583 237998446 863358209 181981038 778481063 447878560 27117070 233238853 25492299 811213670 989159722 648955290 193409146 324791883 68071207 470651768 298908049 64325078 579005723 47081931 835145854 976594874 743202177 37660779 895912788 643808625 685993296 389620300 450724318 370161381 707356291 611644488 637124464 309961879 65144542 244122062 954514879 951233600 578501560 490532274 952322162 809246421 384860504 219079597 127127348 458979388 594343029 860342831 891263393 777360051 712731283 375526595 194751051 766723750 594013024 231142768 732697179 315801352 972804564 220959727 762718739 412123086 573822104 862580165 474537441 259892079 280979198 502230382 621037591 502300803 514035485 210662499 762056632 980885425 465126449 338813544 613333323 669526029 258594364 201031585 305219303 503386979 58256994 694008730 259809003 288246459 963094560 731641749 369489137 439966222 854014781 641614080 658224010 324927361 498244627 491183631 562146221 456944713 776590753 118961887 239398556 640533766 248706729 967411687 48238588 84282636 838119649 684987195 906351269 647853778 616035148 857023910 175547468 130883297 332081361 636388639 874360908 980500273 358840929 362601323 621247521 838784128 64202124 779878507 785084196 563003542 273040854 646847913 729977110 681648241 132919138 77796757 673805101 657052673 581536794 163680538 706032795 82788593 923741505 463756409 121419996 990516163 495274782 587546064 659147110 917099222 889657682 132955563 935279306 555983330 320583539 61955654 612594710 919196157 291859010 391634030 892702312 458561571 723319961 976840111 673976174 24204964 712509873 267700872 687144132 585489895 947083476 431964909 441840384 133451558 349002812 268782362 869595973 819697126 84965922 43672722 528131640 704616775 816568549 32975354 1677421 263162897 138759215 724156326 160420888 393577079 669003996 793739725 665101078 83610445 748452720 523990545 931482703 702601045 257023856 318182471 448756346 50451864 549896296 376852319 122570430 601368496 808769875 213024761 3959456 192863950 998399979 303520475 940312255 445035210 468329691 302683762 253395438 737879639 528269824 855116994 705821830 161392096 769402713 483750011 168327088 746853112 69967598 138975856 903002714 745781518 365181395 624211885 872649340 705187029 501448775 598473508 131873509 645051990 300794549 117999291 856906703 865237433 422426522 831542465 803788720 115499054 930379965 166158206 677006173 184152895 783457936 625133763 57924807 991764956 443625774 973829035 305866394 817705012 178213761 669051186 681782607 377249575 474628415 722072966 583512140 94847148 473498359 960862516 450696011 714818676 258649170 999471699 284078440 334080404 573175744 986997856 340524109 666910870 108190434 362512799 359611096 985137019 323796443 173811783 571328577 984247069 523781194 715964912 933162493 838855729 957416043 404680095 111186499 150577707 798486488 791858454 952170723 258244989 144287232 6557657 140579678 548396073 930859858 432773621 459591020 567877270 872698729 598262677 547730111 273368131 177024765 901636473 785010343 430010354 803143359 839969042 133330537 933783159 516918435 910037074 740734168 418491091 611713783 873422238 709351625 129008201 660554334 510737573 225602948 300273509 733004517 967446900 970814068 948127435 306820333 2892223 832762443 719816901 277356363 443096284 926863589 552220566 661615591 315422413 487475827 364041002 671953629 494070394 35104279 220154843 546810789 795808621 117210748 67968874 426126629 9764535 248556370 548207515 564392168 158577715 949702366 205646486 735965857 774528350 644409315 386110119 861801376 233519284 407349411 611132385 600009914 753602170 404850091 308275725 744432724 346962523 463335365 703714891 104562298 748368153 147929551 234836728 440619652 551746038 313372977 544998311 812097706 558085507 672898433 855805065 435253085 863747855 813152231 511962934 809601647 128424921 914159645 831849368 21018786 94742417 590587272 585174438 497039960 941810071 18882876 39967557 338134572 745627922 281554977 783477530 665459144 374330720 968284782 639218396 660308016 894779311 381355960 811487224 649323439 879424613 778067645 790677030 967655448 248757923 580148490 263371735 336982798 963000659 920945636 481933632 943046459 181969074 183979438 201099260 408230070 732621550 65325385 471845742 781903343 29413841 10379902 56999378 168237725 192324658 819185082 553022560 326101814 290523796 216967747 906859731 83682982 332355618 944477641 120457617 119947040 313570989 545261044 947808692 425110033 407578034 801135058 873722217 218965139 273293126 77417106 134385496 411764551 445671525 851403521 405531425 968557823 549583473 194830190 521760860 77540112 452842875 888827553 531638659 564238206 160191085 217229575 90820076 752812545 351027534 485820076 687126071 548791157 440615645 615945452 388427706 104237432 43649562 880412592 321829395 595482603 406061341 635599861 172036395 962921073 818904814 268183421 793356173 407667911 440850784 685987603 901160849 820137845 358001553 306137967 910095377 298785115 226796613 158694752 730873002 279963549 235055087 238048514 745192773 987986519 204409955 179628281 990085477 166250275 947323457 608075519 406214823 723033143 4780892 660266472 445857684 582680694 709038752 69401896 700969721 869279198 914108779 518969577 58545021 958760009 973739793 395846162 959703521 31407875 906751261 674710684 214029783 829388803 219850057 745976065 479077769 377499868 325152288 82120772 152096643 61608973 361092314 691690876 3527121 822900742 231912438 456125914 195835174 512492285 643818842 546488032 39648924 819755032 351290367 259415183 357008759 416527147 749957080 216515306 914117664 567362677 405057298 236760830 233620677 710505866 265778590 768307349 958841225 945173407 381798971 775372711 189906909 780475274 390561756 342655799 326463419 704689800 508829571 694086742 388865102 877014992 130953414 212282063 83406894 980443544 7623246 767190266 210108838 238438877 399504527 102982132 398033430 74360755 669353467 179734810 385379356 493642699 596209185 258934798 151537418 642420895 841520700 862855886 423914159 584512517 493685076 359758779 40620923 468424699 723827004 98438795 61238200 567556981 74097694 718761312 538352214 854339198 514057224 4281151 527420768 797249352 658629746 687554022 54314242 938448757 377412952 836596049 79891263 877985758 852927167 49743026 627200341 640737446 628646289 926575905 760311622 595317588 598804450 43509690 835276555 662306616 802690971 660668509 505221153 277509923 306396468 34886379 773703572 517725426 37852458 516232180 158876188 575499225 988394153 787480332 303858202 331707949 601895923 231025335 804739442 872404952 955397471 188942467 411171323 45806672 489432396 182599339 74293121 717607172 215707566 922204707 850263140 329382912 763363759 506499481 225205167 501906329 337528578 71854419 669087216 779066522 607785145 681261946 780595440 530554520 723630387 596615249 661962593 90897468 663870868 543151050 393383516 963589961 538708066 721774767 548083097 444165361 599455242 393859056 448646303 86232413 20798554 858943916 19796849 339484598 254743184 405807450 241784216 637279721 386191266 767641817 624313379 193367939 275222593 604991166 434714901 211446477 740592879 49949216 696282711 280821274 193168013 51415606 108770400 573078581 981413472 634174696 693402626 351411342 665815350 132541814 185130588 504829483 314632457 949288030 870662676 563706360 596723417 973244903 818427558 681081694 976407488 964166212 585715023 284941796 515501752 116974987 122590941 703332939 211981802 162066419 476461915 79754160 798847600 687147762 443536300 786687545 939291286 982994896 613703413 220975173 860940558 370807126 618427718 10692102 632026339 495808342 478039846 953539724 292458766 72162183 821054355 72586976 536135133 790285299 243932242 627389176 286993589 782408853 185472153 244028617 632704817 549132175 562147928 44345817 693521152 412265809 103695646 743781920 852935848 740597071 389830339 730726525 154835141 732027167 631021216 912084882 673184577 234796913 169455166 903161458 613593087 187088095 283398023 820547977 859020333 866926563 749321313 732319401 58370739 734395634 13377835 253082384 186382742 14689122 171134787 424435695 406654796 698582778 14031855 488561655 405767025 671054557 388562915 425918189 755047480 831514410 487407097 446413615 574854893 8004226 845072504 590486127 376852819 201375291 505952833 862557876 250470767 662045267 601560044 179319001 664616762 809302322 982823022 346333634 834108576 212835434 40890806 160897737 910061313 793983132 159055366 840731085 625635391 597762367 979658501 836371274 943818177 936032499 145065623 153600864 632424350 984424672 389711164 245909935 606137532 922015921 199840818 465793539 80248848 660891497 99162827 418214270 500339237 411357781 98328145 150683096 32402159 288513937 570263068 89410743 759915421 841260506 438662696 705505281 694266559 76773377 888808167 614880946 883760792 363264105 258497501 120415033 302535452 912227894 765615509 339394146 664164613 753293051 236677544 256800474 796762214 566947072 6174673 377018348 399772843 88325355 357830776 188558226 35028302 860556096 416403286 710889156 701933819 100889007 265701556 879037006 126781857 120614296 81930597 894202028 183780728 354314472 202994502 316598401 502676807 73737741 512127072 297800012 958516437 888908401 337577152 921617025 595944395 618950138 474203967 142060962 261021623 203190598 537791101 477895375 750509494 622844762 306522305 671169284 714224723 138348943 279855053 167389549 928551764 877164295 501628195 79135202 132495397 211949723 948976981 250315466 343302979 147029767 298844576 537088808 989131173 788233668 571703803 411839789 739720782 819518091 81071958 721301871 466428057 728975398 506692325 410367239 102691738 653532315 223912179 324537210 565682623 870522440 149624094 742364775 310308439 225388757 631973274 866227311 613700985 384196858 626096249 262769901 466492167 808227730 675209664 296845021 51281276 249689020 1281386 166907091 505974470 938954678 30848487 652100600 987622821 259450299 980023407 683736546 366550532 887705724 556565858 825480873 780816625 687108108 280592970 737900036 36688752 425888705 504354304 511548364 559875401 938525426 146869429 765337497 102485576 542997506 90659466 871742740 807322651 476136569 33117625 402655405 814874784 502294411 393444457 225080475 517979137 916776374 999004296 980527759 793240930 544045674 44964565 141482091 983490285 404829900 466808081 976173137 497724801 822018763 544809654 875619861 689432269 714230469 294255661 310279835 986983134 882789193 425196222 827363323 665664099 959408058 376020886 129862183 115952856 437429499 670191834 109891765 187467960 366387143 455673785 928474972 174394404 142230586 13675877 987774039 198055830 469250113 446591604 227627559 370219511 739460868 543921579 23581686 163982596 959440852 109064309 995542670 464808286 843466031 609434383 421393274 419241541 908645747 184523016 416188391 402921683 812807570 525855041 950161674 844578808 38411628 327764495 229708846 551647110 137093888 18323692 960092435 295901650 970977031 752327756 734298113 514483956 941578258 719663152 546199948 406223770 192719039 117286871 531307508 584217883 311091648 75875399 212798907 714559391 219200473 410921268 780393165 23007232 484955739 413400023 367914555 954932051 886430515 104207675 966377279 471912552 466768418 719952026 435814986 489021564 774837297 699064963 707120346 176628423 121794908 927213007 911459869 150284818 232423028 129205052 830229512 960745161 117555981 868976200 677914177 886035480 263337847 386282803 294466334 783330904 309117775 257489802 345928071 487156162 477810507 779233782 400331786 7307859 497750621 718357235 202402928 928354687 229033080 408101478 423799261 485300225 602855174 458672438 95618106 723970261 74278688 753351869 416136356 122085416 853836570 177818432 91149846 305286250 181083025 472808728 934470660 802258631 875984284 881947868 126743598 927155603 454090151 47539323 519027941 743555140 502755861 354391219 700642593 618839820 294977805 364217611 559021678 255351317 159947537 989738484 450918370 198431745 118790416 420264370 865736898 552834977 782858328 809399832 35364656 140850013 121107163 971376473 480168870 433753261 444529411 282345348 279903474 71161624 740923709 121307868 13029579 294877752 353681909 345531827 74035008 56595107 381003443 482071841 522473575 178113305 210372308 582880383 115886682 98659404 486994792 500747068 37685247 950681032 469796934 446091580 153121046 209781954 541029928 349526932 934623218 740398484 694618434 841031998 109817395 446466689 234523262 896234187 925443060 941940523 494551439 628913562 871922750 312554419 108617752 3846899 680179526 845063624 19049737 763603446 176274386 248383228 433141191 874509925 728339489 915054776 535618836 257242069 25222311 632453542 696408371 259290624 111293078 705206103 609973079 49893075 57987767 923578408 811342226 712579747 678835015 864090384 280950859 970088988 22307611 542330948 477734718 439954721 805869678 838228353 58559484 490782808 996658160 815961431 400971293 100443270 496176017 225337544 794740514 686289562 434417663 658451742 713071449 632978793 273556539 309222681 100848369 943996783 2529582 659005851 956755771 959436270 603767498 652989495 255474240 819322367 480433224 519200436 590347760 258668867 254149137 497842389 357028370 82293624 991890340 279801659 820302450 443286844 776884208 662661036 474955961 616911283 900704210 505168849 387925466 388511553 290597425 317371978 398789459 661462197 130305830 619433423 618806741 388550606 93138584 738447771 497748710 42937695 184622463 230751911 632146062 857924971 24210898 379401988 34275832 199722468 294718664 21804703 77734892 304237343 121083884 794226111 498002214 960129392 164559810 245827783 240798459 495329164 529376529 452083023 55935654 405277259 307748307 156738717 371468772 206917271 341229270 738425251 296844486 204657526 90326074 703955809 632986200 488313984 930877450 757699808 446122252 726728026 668938050 580799455 827937428 989459768 834880625 173688673 115771924 623555696 591822273 241401445 774361711 954630620 675523522 860923568 763883708 548089799 745384754 924321483 764913911 257535086 110352174 208629289 874994720 755083864 714358085 372904711 311986749 720875493 580328933 273384477 385622785 790242754 379778344 172471603 248367915 347427078 642428218 200156658 999738674 739620862 565634500 335977451 165380005 3081157 907467305 539883533 809551608 439024086 583429365 99525222 188170622 848754855 474309246 447688360 556221565 557682296 163793533 720098438 442993263 362321416 179174710 439874123 16463924 333814268 139004336 220289970 168771271 145869037 70224445 472421920 587383769 437627658 672286157 686243093 877007658 469408191 47797365 239756362 905666438 403107473 776032400 898059272 118232237 933164257 930220798 110141190 553836915 414806779 332704224 187114023 475700302 579053313 42400691 634798748 232959657 562502355 706571489 759626868 54263292 884333775 874486845 541724210 115072845 977880040 968753330 169391660 490480017 861250024 394028745 827316874 19888745 161400881 252282496 943623320 242808745 932877715 134277277 56267220 400140115 374064280 108051872 235627724 376336933 100666980 861103125 187835758 60858793 382898143 133311270 598440353 101727021 754538213 963113973 361248831 244326091 646708475 417459472 438584003 584127929 644369658 409272955 522620232 976432054 627871481 958710737 687554376 137534071 759294250 712581861 740499854 692260369 6409274 678937802 955822184 491374374 842199130 18564221 286110866 556024798 609528379 609698458 169820877 259538418 347610347 539343459 497177775 515419454 58787406 25940219 21297921 263938758 179102983 774914272 213271652 173551477 411748821 866503225 505118573 266443562 85209744 376646522 653453695 33413844 23827099 57463841 463174727 823960238 659951913 752349559 109910463 930803541 93484958 599234717 859160701 151397547 258728554 461835935 786321963 497427912 276076054 404376305 588026006 3209898 197421226 219754039 388793195 934925630 539831581 294625043 509678999 93679443 132091429 636950466 721988667 7060725 984576611 569097272 764908860 833129824 14274640 889634771 854499043 45507225 801166273 815641443 980689556 102418892 496652703 155001704 949272232 445164894 603745767 383890836 973469891 542143415 319119655 510041440 480864954 99592119 377853824 434229997 67369107 884445677 254600492 822148378 223689230 815172501 649292479 745967393 219762775 557043644 400647521 926638119 122949295 107697779 878948563 247678490 737784754 360253457 980430331 999046498 55457858 176595357 492180304 335012453 73322409 233517488 293660248 802376233 436819733 391320581 137772704 734614932 475697602 89956736 818308172 279565580 102610208 684537451 468220883 200910373 734237120 965946148 916875786 15807855 901301299 178981353 571784772 73249483 84790526 39421401 393152287 271232334 544040572 781930750 437477841 165540256 280796321 763528372 897415552 354177500 270350424 823681399 607706045 53139385 804477463 686132190 430691739 121322583 407324352 198174224 117043510 23729353 280501391 291602039 857008589 147667302 565789558 347887229 439231827 241628299 634068744 712416691 94359862 693170438 721926664 278026150 627908948 579565500 167718524 134396331 914490330 182908143 985877872 642841520 267451796 544664267 831143370 679601603 747651135 411715183 326611053 488174816 362789547 410065925 637653621 546772948 913768877 831219855 999994584 900903474 994041435 900085177 363494442 562282503 874065387 217102492 276886381 227778765 822998725 626241107 3216285 342239046 690681554 468233365 168344562 975858550 451318336 842601330 18967022 69452989 699302237 679276326 646332355 798199471 858409239 351766480 615328807 32754183 830402555 812180792 313766230 671561310 166964013 189847920 349756919 104997035 230595409 97455336 245933055 570145921 736981734 106397784 331631759 800241259 855963884 187262328 26730686 921050207 928986515 345190249 590168281 279647030 31465643 175234963 395303833 833695135 583506070 846499063 353897738 336054444 585209480 212881174 558837222 544061614 70050467 480869851 218300438 4089670 311062597 525711146 151090511 545913482 469530431 566883069 244484397 608251080 686921099 649093081 82562290 758697253 50649543 608479353 13769544 545150716 353113983 198639203 486354132 497587100 585663410 998768695 256954522 897955001 592473220 101847717 94432591 522691232 245774803 598294283 543860161 413937038 387804843 53784561 600525018 659224445 795680699 263834872 467430470 670170449 147668045 191754647 229315606 174418960 590274140 993082895 123660023 679901170 583892514 171832022 92548532 620205763 596579074 867043428 861206120 138504564 804308837 787007103 306692484 780603406 718372439 452464099 618195961 234517714 151030197 240818161 347189779 730133052 587281798 884353620 317047504 615687138 545990484 724604466 710802361 82377600 470579684 742313847 556173723 626088278 864207116 233841877 250190294 197223509 733411060 701840242 693343471 734089534 477403766 361966201 142262900 24133262 671338035 440661823 907701215 980061049 162707702 749075187 556605960 142339211 313180384 78858556 79190589 735462577 185590687 277390418 149700717 626035740 277065316 411683989 226885579 727976157 208287024 206346538 435157410 984207937 971125356 7010074 500538596 941353012 291158657 805920996 727109814 501000693 330633738 726953876 155946257 736658729 70975753 568058620 355768473 746113771 937639238 799270000 388801305 685264580 241266820 487714965 545753021 118544952 412218987 70767432 757241085 221105806 686275009 122686661 513633004 973780303 742537693 978092866 294178455 905691816 92958995 814351330 518410653 99923303 839145660 325829514 935898153 934309983 184824388 332695291 596717391 953103140 733885484 520271311 599446794 242691894 728526673 49725656 346743136 650391294 503879073 736307321 900078714 578237720 837710768 754199628 705547378 901801639 69080908 276368551 435783561 188086571 716615797 242019563 102755415 588577944 313347550 568397897 84787905 754824156 589317508 355810237 142522062 914008047 200839619 88279502 42384536 472097729 247784451 997425724 681314377 399920398 249046483 869296934 678807940 63845023 673327112 178067296 964132084 68312470 935923425 846508449 70397035 132292577 751441302 866018303 549265301 77886364 755533239 648092675 206535244 921780626 602020254 370733732 828682716 486027758 336478649 622860423 436276788 995766000 806285549 805459068 209403053 283690433 159772612 519859049 95596488 272166571 728299247 414553498 987682489 923624943 166085291 732157890 447392602 907210791 940172733 310415825 344717688 956991370 170189463 918694494 327431296 963833625 470541774 847314338 144652435 126119949 180585174 952485285 621405295 366009206 813443973 219867224 872856070 852787397 563659883 288723652 7989539 914845412 711084840 861270792 339604615 544299685 781100769 838472164 933546155 710273135 766114005 607566420 27495474 502150886 891621220 997955843 410345701 30153000 834540285 400817842 554805140 68188112 82879142 596084399 813619950 486856276 518651628 264417074 689800025 622147887 38127806 178756249 927384332 975748541 859421864 419122466 756970017 48465943 135135897 336845093 146586200 122280857 806783534 450996780 305701834 255348535 425802907 192859754 157462961 243316285 985365248 251705600 926745212 130261229 887942160 584395750 528919526 586554343 948176954 186193170 631685103 222452915 940271175 322240643 106405701 480350540 97541639 503160664 733492076 59565852 318084940 803070162 733338688 321133735 291667516 621388559 358652894 626097070 390966491 8308800 167486662 492014538 585214365 573198792 123629382 480834271 779295014 231946319 271997026 359791170 714410439 125688294 690338940 249124626 520547473 105497328 587619906 964285236 133725142 884324636 79232536 930851544 249625200 562016475 939390422 518411517 811698460 664887369 663945557 177737628 328600573 725266861 742623269 262185878 196772962 246182828 846760629 125122434 136366929 247412785 4343899 847275762 487436050 590963237 546179382 607144839 860689543 247132744 810751752 50816701 878254260 424285487 504362265 859609426 986091569 140057992 34718393 327928238 635136773 316011464 338304660 60257292 862609340 917096677 58574363 216892055 34770670 862237744 140531830 364577449 443106506 797057407 255488159 701223394 737236411 351332255 942131407 383571720 67082044 328138928 284953038 694428301 710081463 261773820 207743690 615108349 166643804 638752557 640135969 413921189 31562000 734918069 844375592 104351360 955949151 171242904 567020255 125134958 891257868 818556288 507328265 837351446 847544494 932847454 325104075 838850645 333354824 984932068 58635691 997360938 405269749 915836618 400593951 187580874 94016976 980295790 349784723 565898176 214774914 79676224 534844128 641437198 313455878 398312045 343596891 976264423 583898635 665085095 210839445 946946480 998184197 903089238 771571185 941270024 159116661 141361498 98646776 629323986 684154140 944093148 624054749 152296234 215812501 130110674 535524608 794051566 58285587 227844624 594073800 231158829 437853649 957809104 341402577 559473696 220995086 800695272 706933848 686484275 906011563 148154529 227192246 483043982 743949146 201663534 885884566 570805536 511543294 544457694 257751476 929402122 536369554 866170762 119217931 863786366 867132855 130455549 108861498 613444468 132454149 869541955 798917287 339981563 343037898 296962822 820054891 954215104 319979306 500354813 769160798 530149942 332913886 392498151 714049359 646531650 835685267 171947758 434981466 904611323 802873898 846827303 339746249 413386346 781303626 371159512 840718105 30827292 734815306 128888287 96630133 703597660 625510701 617024744 31217936 885327182 778258221 182150126 227521352 57714807 839615933 522775993 522522469 812727647 774577284 71044134 187328022 537438690 900649579 17753576 337990489 716250632 827040379 363025294 123506408 621688665 983095358 463423970 926936278 298541767 199076832 322656302 582276716 304839625 762021873 116435256 31158672 521152569 967876360 983376682 363956690 327486598 41919135 27205860 120400527 55481210 133348963 496905921 578387525 182239396 443956883 724238924 395363648 194652763 135662806 611931027 625717774 556073551 85330712 613417330 356590516 323137763 658715351 833801848 41168108 327265477 105222436 992924984 204538675 465045520 34025863 781536700 655217180 324612175 291843151 530041239 118880106 935730881 106794998 886674392 942173747 613615029 883324475 891028046 343254325 30653454 570177041 846694544 983564029 551717155 757585109 710119910 617167115 878884966 814485586 87515067 845570909 685130973 750117721 875683566 854013706 501526989 36425253 47092442 33256701 696997713 212319615 109658368 856025596 644219119 928007545 983515084 233517804 961912222 15945897 299718289 52152976 214901633 689941909 720596386 683561344 660104773 77494394 838209939 89347807 627023434 242952313 161825227 979622521 75304388 481574917 332109204 491718150 533638148 456004428 677757522 497585276 732490749 405227810 850358069 830491833 887382154 190934963 803907038 258534067 830464338 183887467 159874772 798962571 910909461 674147116 8670137 401397164 273729223 678849883 988136631 876778518 822281124 15296276 372931349 63143312 577858906 207800767 175211617 984163494 403715967 223432242 90526333 753614200 411511598 703955449 46994623 343646521 318093083 796566425 453253120 235492619 306479047 596406759 961631394 764753746 271330330 409452587 844071252 591220340 584904446 37685520 216437833 735907533 103201656 546908005 801581257 588468870 672160169 950804933 625008890 659163680 116845259 704653819 975837797 954424688 362112424 29002720 663918399 311919206 179247834 744632387 437705411 884902115 149035985 876738863 839503300 101250133 749706440 241074320 76835028 200751638 971296525 94403376 307159312 119073850 265600433 227263704 50748840 316748226 514914645 636087048 665347737 892739467 849289763 129499234 443621658 181223417 329104757 398270675 164341513 766701724 337167899 324796921 32841118 166905592 618960605 117624714 887962130 269872784 386178204 101358532 987333134 58368776 213066390 910139724 744410615 780647000 251856397 446003282 467603991 235480679 932710839 500833950 822316189 559419593 214472743 554201026 262129191 111013561 841793648 648320119 571409009 287585572 778139822 529645452 702136193 526056466 577011427 49438887 833224346 107621965 479623470 148909383 721746177 8944287 201981935 429316717 225026480 775955583 280736876 545729294 764731428 492184526 839827363 229555989 551860645 598641406 881815486 154489202 932924424 37236440 827320019 350866282 821449720 978075011 818804919 656910763 874721928 631731260 379255219 717437853 44851061 991369353 672072967 193579929 952386950 882422999 215940888 87684767 22707854 37303238 460640788 943345721 462901036 189617514 824565071 681452323 480011807 447846499 246817255 994720470 167660825 563979702 256348527 88566793 856574070 848470725 635501492 175632310 139952112 102771058 78561905 447587797 182617834 650835643 321538174 632883560 808729960 800029466 420894404 537038092 303168405 667804830 316012656 820380819 201244140 503418111 726405930 157196777 409893547 103395022 782893643 721981810 639546050 314701255 740276427 336323796 933882475 883782216 662271436 418590769 987141471 313353105 696780679 653997483 67549526 336189037 225749071 811763254 543222568 931003039 816111442 572360750 115153034 315425849 714408980 775319659 8936593 5212105 338246983 257957739 580941146 950499190 232828649 514388381 751176837 212306206 429208940 606010576 955521697 249530476 346110532 463159225 954049175 193246550 851200638 11958590 313509588 717382612 761528253 148190346 311543119 60083169 143093977 502466026 466781217 774986080 838915959 888323651 619960569 257557073 955476201 569903823 811354439 286310756 445395173 565429425 4893923 723769522 160213173 177351493 202184176 733558006 253461021 844046350 771209895 205161300 956719891 616234256 373489053 531102685 32495140 338922291 629422424 457012592 290956326 628677806 637993731 868480658 461194897 344592370 836323196 383614020 520514873 706435607 889424922 167789460 751666228 706301980 227498416 576535107 107092438 739471832 331480598 133317389 286697669 124707220 315440460 784806387 376426077 568917840 939629867 928587756 955434497 850343514 527233233 788302987 763088817 277136487 439167512 989081831 205691310 567212671 257292023 38458756 37573761 391388395 895030377 506188157 947825596 379460677 349900287 739331355 155785632 830363004 829645580 467988618 26678286 126130683 223591296 46788309 696802532 138556738 365416472 635127044 308995980 991724178 644559641 518792673 14114063 865153884 862104947 681783425 513301956 228114899 211932968 379142275 391072548 57967530 405301923 992840732 31437952 349984489 534372303 45618456 897100209 955032842 354494641 764044602 770877907 611555045 483664792 444348524 469859981 524611943 16071741 288160571 303828817 906724721 739362190 339452380 253559805 377226996 927663147 245769043 940909387 55175553 199371803 329888213 60463888 184754616 829174422 883369096 834240776 766215076 695984784 56503030 897647544 288880854 360203645 199988067 574973666 739521288 509925453 213136758 365971072 670781977 890949346 208620612 223995243 832565604 792671052 688755473 729110597 670935950 889286346 723275551 665264394 477747915 973665005 576911075 827452933 66214500 356504442 425168133 46324643 880139417 704798632 127003148 999301403 185698055 179386929 980007350 858463069 174326687 497785992 579368136 461109038 815606779 208871644 875560005 100498498 320546238 766949074 83678381 481675393 246568373 64163006 916836491 104418100 43686141 679160510 581872167 982911923 374210552 97628161 782990908 721071546 365403433 795540817 453927963 889283473 977859238 910392894 949211291 615091836 994437948 51499070 940887117 147485085 843140236 136615743 901987860 235280464 557340400 332406999 473269312 806887047 716694027 241315140 561855668 208633976 113411610 715195904 107234365 714317644 526979918 14780215 37859133 623521515 339859938 845310839 32535562 240158187 108506260 457171592 368399919 35545471 922233693 218720234 483370272 943879450 708606500 688190743 140348531 153912004 519999688 654179694 267594448 693891896 369095851 616722215 446293942 257422317 731376769 572418194 800132708 633061088 54643078 922139767 52282940 301253690 515978947 384586480 976933839 23743462 411470901 41053917 546628460 437703408 988404856 589993146 270945160 507200134 764896755 657077263 443973121 621939435 828336909 417706725 673415164 197508034 528651616 645855816 108309067 994162052 383741362 599287438 679598700 106870305 424219656 713508396 984625243 416069736 703689823 772528211 978873212 110124034 678314092 484475841 240755490 13668826 544912693 320935327 343326998 793808772 291044716 567085888 908083496 939828750 941326190 922067474 299869801 842026561 120918433 4625588 970984970 607579324 933747845 464490313 624071574 793099731 273646501 69336448 43250224 162763793 949972857 847453809 586949935 622815070 928247788 133171073 331845844 319415866 61804384 940083483 510678717 984692295 898991670 370148680 862471076 731058082 246383427 932971777 662391579 644407271 191244546 702236091 692655888 378501341 10968066 523396948 105614979 515068742 218569892 832283437 4276389 688111582 838444843 275747952 627293007 552339673 541033545 773233882 927130975 328767419 605407192 757568848 791649336 28311734 386984944 529335587 394869028 356648440 188813701 964411526 43154375 724151626 859002599 984081552 284304314 295623600 270969160 513848201 231128674 403196921 993997189 165637116 166658590 627639590 214793161 931601426 589410677 989897467 177819606 67860496 523977630 771382010 291054653 928729758 675133406 901996160 325921697 537457128 413915539 558816833 42460561 33265716 803107165 507379506 250664617 701697511 120545455 476128935 841741113 99347298 262182647 485236126 339431554 944667606 327232505 209561777 260974360 153285779 377791044 571602386 747798548 821138288 97537391 74519266 945304866 684238694 544822255 462715147 302177904 558896674 761808600 360272448 48216315 714635812 532499897 336134370 359293414 393464727 184970754 379178926 757235429 692303755 27455235 519997002 463092503 756559355 365663434 298754329 813464545 932075927 635669174 315875339 333070203 815634437 260310382 624881705 525690651 800770587 635249569 686907422 369317358 700348001 44453931 16728570 768118878 399936487 38393994 914309575 553721607 581241002 616115381 748502456 777458731 30372009 63559035 315492717 660552782 247056890 937445558 488006545 514089560 203033136 216307585 659921502 30285769 719522240 380844501 141129157 183763102 60894062 259413545 116506823 715899686 122254508 924750758 770587277 473688001 102507906 547140415 179070237 730682938 915893034 740167277 441636207 44006569 779062143 759831294 733173084 978225655 890074267 870319998 70158698 701049900 538611509 45229454 591319431 348126593 136304893 609003060 591459383 794308635 837919348 215594592 420501662 856962242 346703119 388487408 900078021 265492549 5515947 469736139 136508363 757633715 805789821 633175019 437843554 484452137 377666914 718939334 724587298 68158137 137269866 840592793 551875589 269649284 440514947 404492728 244852058 168274561 574100622 479747572 692679938 614035324 424423580 504687144 472381274 441826592 181699959 41348850 807237803 590464900 409702979 513384191 28437851 780122492 897710176 485168951 953810563 323211882 130663521 956498414 169949815 808168961 807288055 910041620 358015015 717203738 225499575 414898883 820404843 17883727 311036431 422744016 264554122 743763308 483683397 864646738 730358299 650209644 767298236 311459688 971751069 248838622 505916343 801548389 805222496 319229995 73924369 489934474 861173735 170819143 296307804 587177477 605028728 355379833 39989026 211368931 644358239 486487406 663637473 557721193 649299433 358405565 618615423 695597466 533971970 448577744 474098275 211559100 289646810 216177747 303009639 385616643 462054394 670744052 614379933 346147389 447618212 553988375 975656555 613531650 339875416 677073404 776254858 242064850 651723901 610947142 375456896 359818958 338535602 687360320 405539507 956668762 604591810 295768951 554247957 998423491 779650593 691205508 40135778 918473729 791330228 949448066 538238454 968983208 633216530 829075669 173227376 38864617 446253793 481972127 499725688 626121946 943025845 794114006 107314521 670821162 179716921 470692774 648309580 837147880 517761306 453294680 15172177 90442802 439286699 497198864 659045338 255439350 590950046 321895023 91804459 19231126 692434480 589728296 395423365 163221634 645213118 483263657 319900456 326990882 445365509 936308073 694806858 903026558 832567313 409740531 453201862 311245249 87333027 84580711 544028903 971498224 614472953 928845986 231383278 868246624 470333962 245709327 464526114 522196635 692215918 708912592 854923129 719836337 735978430 743755601 504199568 308894906 93458391 803757234 183566077 754782597 105835562 576203790 840362525 552565969 222870590 306381569 27279862 677930371 538816043 497245081 525595461 928581604 386769464 63635580 782864239 231523666 244015584 993476580 439430392 442205387 689462102 132670175 235989140 930984756 310100439 64485730 8849267 292606644 537149199 714556636 748769884 882749024 542689967 484233407 592298095 155101254 42960416 387555729 45779652 736560708 199738964 662752543 903391053 874114210 718913086 560015348 521003801 822968425 563831898 895461538 862332771 770028636 508218520 4568901 361749735 186114711 80163790 194591269 600438748 959898109 902001418 774011815 31162512 150024475 645311097 619432775 437022512 622844824 609668523 432083629 514693750 448620930 381159948 694522686 413018453 559767496 721346896 84735691 754410402 881487605 194432832 662446310 596330483 643196827 698039184 224484505 149948987 975844336 263628203 832696542 404393571 325969302 204506273 733690103 507112190 453789087 63359639 581989705 357022131 933714163 249756531 689953118 415976409 348819636 769052606 824565069 832617042 659065046 754587947 652567554 362179831 851283212 972982328 852463609 970393865 14695497 699995044 588215743 277171968 235357983 314321692 814041185 46721981 162293511 614334945 642107122 688963726 232034834 417835445 363199450 534931181 761495083 163180531 147533476 427930553 188958568 510561805 404823945 911790902 235132434 579085880 881448483 693942781 480028428 99443590 992689887 455334439 829435279 625313049 613992376 327149662 343263531 83834458 736307911 809671238 1464998 108694970 929052597 343448090 76515286 604252324 401063182 447344343 638745613 174247911 72547778 438157238 148063403 679375301 513440035 433266406 578060736 401946004 116551226 800403567 572207620 538495087 34911158 985202711 966360161 871061523 623021075 379278873 242149917 47021589 53916615 821139930 145270753 814085155 810129027 487215437 470035857 890925971 701151233 435953518 661113714 535056929 803241012 472062623 476551384 783733521 767228597 446473471 193398932 545906801 257005828 599000607 956463649 794578489 894665116 647990290 643359235 52612905 618289818 856421956 332432416 446064472 790384414 170980402 280018956 210482684 395944793 260927257 242551073 648017563 565857243 998646803 482873512 510418456 739378783 804173421 189578201 631579419 556773979 21477763 930094636 655486893 670958008 902273085 89713965 281958780 964865663 350510636 576141178 985837798 384231591 273416695 708636012 168407118 491805612 828205310 829179377 928560097 811032420 563589620 335349908 981822033 716225794 449786121 797083307 78717738 860607559 255249248 570061667 787985497 762747592 271192300 351013335 433556586 43108428 816772192 632025402 524121117 176351149 545831253 885516602 191751464 560600224 394385033 801028065 479676702 80385744 836102316 920597178 877054916 543577022 369315187 572215445 893872661 426381402 779856781 651180537 927560612 873963322 738337792 16082812 238077761 529792969 285522665 29577193 186843529 898162568 21820941 718747328 807655082 720235434 670836589 377435716 314536885 33238912 447482876 790484116 346667483 206542181 825707295 687586108 897523667 465750738 936804210 210695327 174057360 374102027 206605451 75578750 294279275 179570256 136577833 673083233 418361843 890208366 497776960 113143782 156073887 583304889 592972642 806103154 8445098 918951314 877932577 145779951 834588091 870560451 396492526 62883444 694412353 693236679 911172660 107157897 614045894 492757045 692102717 496166149 550504 547999154 198064089 502593125 647074382 131401667 187527431 523187311 256499764 490136395 224843472 911791751 467019828 88092937 354488023 559329169 212124994 374405988 261090186 348660786 33915561 76549790 875397392 156050088 803667294 807318649 739855288 365479014 852907877 37914806 230567330 529212769 936441055 832014848 397468728 902664228 141492625 902572454 91989492 146161635 422274236 882903125 177462602 66169591 95646524 362982335 557207064 156846178 793631642 795322633 675613838 818616635 838222915 448447094 384313109 646826722 522367493 645686864 351045157 369204336 3040087 210710049 989426339 588952565 644853720 529631920 405833167 651753872 960247444 144715765 192749083 814754948 512657894 425151339 263667566 125515816 869415354 622893516 393362219 41395963 444933183 850449006 900439016 95569022 307623524 175486010 566648645 5369305 112498729 2916160 951609196 753770156 271629321 752953592 748178289 374604534 428155984 319847022 665746630 666537740 433311451 357333296 173241420 851187069 533573776 313804994 85553467 48619444 159353710 426663110 229978256 645704190 449605253 951272273 15764751 426133624 379139833 370137917 858198763 924383380 352764517 117693153 346836252 105771163 291374935 886498695 192689038 873436628 972015830 743480211 955210669 401900362 58081371 863867120 45434056 454532290 856065600 512119493 96447318 512468203 347742556 975835027 363632456 351345680 494311089 632695372 906126548 530981074 921292584 142800687 232167548 119778966 456838132 432328447 395829835 470462097 184393240 819230427 309196601 270887043 420161298 952940932 299776177 374544599 810821775 967198992 291847771 261827490 787117501 782847788 934869268 429900819 245815600 247807804 620252700 240419845 994879407 874914154 214145248 72034282 686789081 834175727 919806091 947603069 714218035 553905218 709540981 89514000 376039091 792564523 997584942 210991079 161648750 8477558 765368433 696161728 471550964 102048819 242655533 577789304 821242794 897392695 767656683 839354477 11743226 442469183 375497878 118936516 772163851 317651923 581977327 51952330 490342609 901996693 140379480 916117191 191809345 556225285 149831901 380542589 204220605 793568963 901691698 446666615 111661260 417156434 426402345 714920170 179305011 682322534 881903024 50995948 306579775 194329945 541637004 429776252 305317087 544655655 857930049 553736572 268027204 581343989 778206043 828631942 345850416 75876118 141558320 296073757 747111434 863450820 303587050 97561676 710545600 849966012 442089240 987370430 663282276 682960853 835405126 780686768 765859965 28874715 348467895 241124641 322113024 983786981 545765834 630590555 918288314 760483691 59580734 560911369 331045557 811603349 468684925 891817207 559444507 627632065 420853947 423844308 736837284 362156589 571893232 848886833 66468531 449900497 346160815 49973267 287870099 336147558 859952633 142627133 21547644 409890924 556893451 95237891 519748116 243708180 983072034 367780406 955388217 392634226 865320094 210689970 969380255 38197012 33402977 771214758 373131719 710582543 428457482 783550362 105368724 256827492 444249803 969526613 305904594 181647685 739792302 52038425 971273616 742236242 638103688 705740843 504414608 521933907 854945399 955557882 479026980 693042206 957089890 592264861 237834668 302015081 378773320 580807825 82559032 117865453 877665920 241227532 862348075 394681706 325033829 675811955 478795450 753221095 185575586 588085079 438727652 160802092 165738774 13088717 797822749 571738032 401753306 748702225 396899131 757219439 9538500 299231933 289690384 501670221 724669329 371986875 956277714 191933573 360688687 367369691 397208849 290469417 40548883 470672441 951345926 994951810 862776228 482251625 205271078 781032365 306488812 528565250 116049003 41097975 221657782 129660796 339129296 152545266 947172497 991575687 710857295 37053486 817075620 10432998 775745441 350097528 200122305 838811642 882334163 718038836 257912619 153893387 39412826 731146612 710739676 998141448 133103032 447811982 91525967 928111693 639974849 937017577 236813211 724327782 426249179 819330609 328979344 994070290 64080928 808895933 619541486 448465878 468298636 457089800 759612705 45334278 159757856 726455686 172676559 204503576 289927391 720068944 588761484 149479423 137556578 159292696 59711362 194210239 196067723 394276691 684934438 953827415 190453977 51437647 567279836 313115026 176771745 107942751 414457357 240130536 22850170 845024420 810880661 338064548 54878396 959709305 32722587 772399743 46921104 150597451 734228330 632897242 232641740 855241859 819068878 980438299 536547557 644690689 949936011 131259623 495304891 416503119 16927470 112480613 237782064 755017432 984206109 241354173 39568547 77216420 682236143 171672622 258652331 432234752 248988649 834374936 242975742 90147704 126428620 184220374 275417018 450946219 701267017 261882100 514549830 639885451 986488443 512682222 285575832 912850803 432794595 679793717 441516486 868687720 491825773 327956278 560356809 668843211 81584407 69057532 866864613 533310237 697455899 713507078 669029971 431583291 967747188 520012998 409718365 120233394 894363736 887687523 236621850 370872154 892481648 912151221 89782802 393343008 470826280 398946334 240928764 356363740 692071206 597856690 530140772 833934554 444969876 661856200 835608633 410809696 406684184 424844375 497790617 111818558 378182590 926339872 745480148 361420285 749653619 370852932 397255523 507900453 273452915 908321825 203901197 448393148 810987699 126703515 125978702 599931399 732544993 38456000 290528766 82312867 790563899 412757556 76608860 971340180 12172901 660018460 463403947 37237968 796067207 903645377 42237081 625427290 152303903 127433609 749994884 415335049 819862985 845533028 396305388 684061787 98824089 704460712 268209985 245677715 762479803 752641364 417580990 158062413 713851324 634575908 816572915 651839527 552967978 201742146 762528979 865057785 151698183 644005146 14960750 680327681 369987045 944330112 469353026 444337702 7748119 479773113 975457431 849307106 123955809 867845835 977295658 696976893 439538667 880874227 707986553 746329655 983362262 772747247 944622665 612742045 427236237 264696054 718895292 950651366 701173718 646925629 910619095 287376768 957413689 687917384 258079196 718872150 209850592 84680975 595893569 353762485 247602516 464303013 769450808 361558704 731797085 605779157 376477545 421392597 446556410 604325537 20577664 803207072 380551646 253417514 187300045 407338937 433225353 200646979 745590494 630984552 676908802 836123714 213882819 944689328 227847652 754448152 246172175 761024725 76845895 488683042 638670640 192633270 128892479 989312662 334891815 127719386 318508480 135550869 838665887 463358081 130636727 262945903 674029390 242797997 282468639 204555775 985561301 31816143 197351279 999459091 308370958 305903965 734021878 359995381 356641568 389059669 63318074 754246840 301304186 980172418 904930570 834606157 421199950 659728860 246308095 829769602 256858371 721954868 903389139 208306391 690588523 741190242 801512382 956621934 316736482 263681405 826144374 581605577 852202410 574185621 123957952 382507910 225011839 863048648 840448582 708974351 356756575 473522719 936740639 6063919 564737769 32329258 721295503 516541093 362801219 690688360 651615461 918881451 12935776 806560032 359879572 878629471 18633633 953910817 99391290 434606762 294663766 223269066 387556647 979292233 766402693 374818686 297595508 545211062 802210752 576821817 1792300 996755887 571889279 464109101 890853517 548507940 544604042 618054858 730116003 85529004 762747723 285913540 806282695 681964896 14823876 616123949 303920719 561694959 887772469 118974944 114597918 946012850 324096326 949957054 509397254 329220243 38378357 291304805 500093982 1816618 996791356 281290858 263257748 71213665 261415562 475629858 795078958 480117907 968192646 528527472 911210894 509153612 897042884 632635555 290300448 675411154 325141142 361739387 609020087 270867478 443524929 991780123 666123808 620591574 359304441 940135866 325594270 522866902 674411161 240709625 93587507 352344420 409091135 334865828 550750271 909382046 58596290 912462482 204173981 804714064 968773256 819642883 713198925 947108239 880035720 274682154 656444047 521958768 786129672 624125896 266160206 501312543 795214055 233520070 332678060 398689233 922637847 684634567 881106395 482266869 348229250 731161230 542905976 293072165 371787359 464289633 839823289 476428993 50227784 689415444 553728748 721977555 423358794 794675943 827391215 354120704 340172506 845267218 296155084 190887540 849119278 799421849 363381067 136061650 836201431 173036624 659115014 913141095 894005919 682846900 13299608 672527267 134415408 376391954 620465383 452573492 425620436 830869929 928947221 376707565 502962618 821143906 896838684 284486918 305122571 672696290 137054271 170892025 140880583 719023563 46874450 224224736 813951429 693584535 130125711 838705814 430124571 840697498 964882542 351412351 159835126 665141232 550432944 997283403 258975040 204371952 267850221 749203406 560680535 330133703 924034815 374399865 308552513 605476209 195245535 578573646 728446491 629949060 565318639 554189692 382889135 980880593 828542107 550349973 569220378 17960030 329744664 130902363 372609718 233915638 654596114 224461871 731729817 318043784 679295998 912756450 873267222 69863491 811286977 500731938 725418186 936727930 877330382 187738695 348983376 109167630 239153459 362960965 670996638 559948223 919700423 730889829 682688598 633462454 165089214 414568754 167168974 212083461 571691327 420756759 784848237 679854596 568787072 302466286 159810522 298516245 700037520 694029813 388773475 537054444 591354588 285291626 507941080 932084937 443143945 161648603 15173719 412601396 597231937 712442244 140361864 803368812 944656172 923779952 546919335 674807662 346967496 714750998 889687517 612999234 603117780 139963348 635720467 579864312 104342082 792090828 561324059 687621973 555448930 350104666 433724000 290643197 791742714 414379063 285658928 826981650 954156699 160510860 479559049 726422584 300417175 682438410 819132815 779389608 994147548 564984394 249216105 486564915 402948636 282041029 546706938 403766126 797232271 69532578 449681938 349285865 715997261 693659770 725488502 339399061 789150230 555846693 937284420 905077290 185865994 212820144 740537659 664763923 78393314 622629138 461180855 681026603 651258289 697871264 188722920 103691169 941463403 583879982 813225781 938295964 901094553 698229934 821952572 4345408 745051019 346397173 744109410 635135713 602840459 446681477 978130671 326807249 92535934 926354575 843768598 214480189 927378827 150328382 763638681 501641098 944251671 512110999 357300457 914665932 569427892 292784231 738639673 894582971 542983446 409487786 630652552 388371412 13358845 746126849 661447764 971244631 232232428 427296606 705254910 895452763 506227926 226492574 786325648 579360604 120035318 664067402 211825842 207025333 73946993 491598076 233856868 430837369 348292945 495126138 793640243 518699884 621239293 871994087 446850936 704748758 661074209 526448643 978708440 193413548 130444414 894482402 454077495 520946127 853763901 15219559 693528139 112001670 930676837 393182412 386406285 755565504 801154943 541513835 288247700 475063751 890742687 890581590 850068315 318982822 274308533 956147349 608675965 365030543 986397862 22236268 307145303 300589287 443052830 34100436 678784220 132072554 897227326 381147861 27018347 945867897 530673837 625770041 397822431 278657081 905577294 443707314 102402788 127184890 511006956 986856925 714057488 35954510 839406479 660579835 274002162 962648144 338489877 305760944 830463858 750929738 231491261 946138824 936682895 788393147 411872755 50687484 785527151 495636016 443431264 373075349 238619087 822619387 820939425 569267759 452968257 655723048 458935297 160496142 445610754 650314759 626039331 833807980 704303160 711002344 123697229 981070388 531259730 316570872 102705403 169136294 815355738 492271644 674614508 382049350 337488037 577043368 273155004 385187470 924586586 881585709 152340601 713727223 878476809 792884403 390657418 922344459 120664883 938610258 647959834 575162195 35547313 704228386 184035318 438891246 451007928 404369024 495409921 912865560 259746571 774774309 670383839 639660486 110320790 277692770 632667063 245022932 781315449 588405503 561343312 898609369 97630732 200806614 148981769 239723870 860318594 228189788 223342300 513633567 465230374 864969773 464156898 282330773 860258659 19001433 569710572 518178179 234768067 70434366 134328902 730411345 684158053 120711778 653244220 51513572 534125836 941048114 650308510 612119813 864711317 422341441 927063453 774935990 111195188 66268625 823437207 542050998 87001854 186056953 252378101 981077885 39383069 154720392 756312217 69691933 44648173 259403092 179015998 44687179 662342323 912923154 230389583 442665379 546074112 744308773 183929019 496640546 46048752 502974035 956026907 600336462 361765335 920729770 946146216 484903395 390148470 981331815 295117974 434102207 11458038 55664808 172107324 741094480 267327967 766316874 102643131 722970382 743950068 13706160 733737868 612180445 334559154 696615205 39220648 499610698 699442129 99305220 789723693 404706288 870492361 581393269 264854719 825956720 255978722 604650460 215941380 853908741 452354202 375060010 881265491 902406991 125655416 907054963 457205049 132620300 231390849 992752196 582731079 437400930 308639770 370869638 474931407 672165607 7723755 678461610 889660209 975292465 811868478 410968839 698917915 56418918 639079432 293639708 264468766 706065722 471892578 988763951 146068123 492197045 97151213 202799814 720651045 744295308 697984545 822719322 80089155 755422084 324182750 110668074 756312022 226633518 32377757 56521414 704894231 604740115 315597568 26731245 399914985 91336077 22072450 623870544 468336667 893347376 109442184 307518683 922288110 30529725 604949400 73057986 994176145 431165371 337630399 146212525 506377019 615424528 656837642 459003748 273239199 214559727 173270690 445544058 95533496 890237345 2802314 130458847 107683311 247046088 891630035 232759551 693081106 357819543 441512746 606679287 129251510 699715806 177357065 97922554 515105827 210880324 721948508 184935081 199276275 252746903 305972586 608681098 7776316 608474106 138344281 105654930 475893365 52200228 109550858 533387356 204662727 828239044 780380711 234388328 92438091 924061541 107675413 74185317 768365535 26839777 723410754 442084853 296332764 406784269 998968581 838993355 63417824 121231541 95669628 210071834 971382395 771284116 659799775 903943777 490159271 872031863 803741886 548586225 221275753 3128808 937338693 372649552 451808182 800761231 114481024 215248132 693718548 369402668 159406163 359933205 596431925 837615996 620523900 274582437 553864606 480991797 16283107 721095091 165920596 703484191 736428461 672076170 760128677 817355855 805731857 856233638 452040162 667521045 160306240 617833279 208513156 819415899 98376402 106400388 673534269 528469350 490531911 388782124 808987667 361754455 885587949 502619906 793625537 992677231 152126912 517899822 843898060 699302272 634200823 961280562 19894658 570336266 645336688 753253305 177512577 910575893 468516234 520398118 75376202 25038740 478935414 762886080 623578701 660146370 68710700 634359829 358851740 907817690 304920115 457903809 694897146 198229233 354664056 501574117 734731863 426721707 141599660 216682910 219555632 823355070 887707969 991599340 946407182 713179965 887957314 612902409 737132304 925189830 626821584 952776499 342931269 202936635 838796033 556894598 826091992 13187921 936001612 734432328 288294692 115290596 858451044 245287908 533325371 328635902 583920995 734984686 739442191 967810888 328240079 548332366 226009844 210035026 879327433 264731638 993157657 658473724 408261672 597476277 899293309 131462752 808520381 798817832 659800051 983197813 12534077 155736227 921246637 457705980 937399613 19252145 361381885 456646596 397146038 771046549 841040088 781276691 184596384 271402823 985054748 704556722 559591164 251616375 801430719 882683330 153502241 696820372 666663380 336243723 550950553 212587090 636641848 884088176 928343784 656332210 608266200 968321567 837505356 144431363 854360920 869577006 485999760 512130712 505258219 367665507 929486740 192240709 37453801 272557319 890545651 41119105 807891753 249295435 492861746 916268314 240125841 671140524 59246744 273175235 227151761 190963070 575858449 831337693 574516541 395890258 408762504 232607151 113675914 174324287 61212110 107930758 631314695 503753707 800543885 155206071 123119933 693003729 466744364 433599875 237760035 960062961 596500376 372570639 522073713 303967396 135501819 947364333 731041192 183608037 467242898 717794936 517679209 946568269 426189901 931275933 75895390 164367749 865950360 135300352 217844379 108584268 689676986 38300157 839379434 431295830 468130885 176499370 917291520 528220759 583692414 131012571 344871942 255957851 994468463 834858829 903122825 363611834 609363046 737639680 749714118 641881008 911834028 169063298 398996070 631000246 84022047 447837404 576242447 77639517 574707311 744197962 565971071 235176088 410203877 53856542 380064110 187832858 18937279 385474780 163948836 115495287 816680634 408608710 82731861 989337284 152599909 628680475 896265937 537036547 322927603 588151663 963727533 546347356 860885936 389712837 253286955 23596445 611405307 901366661 65117778 384239206 570900136 929892092 268367446 65233756 449612401 908557713 479579832 540858948 626113487 787979094 385829651 745188510 81174551 914657532 89296623 297132276 202858950 551950710 181515407 780533701 43583542 616678349 963250172 291474516 665263482 165588372 273862951 322319028 255768629 518099271 124903589 650950818 430710360 443473866 140474454 760596404 624522024 195919233 374579973 850613633 929077717 62373786 648380167 981117984 670468764 530972091 213715070 849229903 772598757 289875844 94193715 44402813 776336032 18805052 942453375 564439689 427320587 778645986 634641811 868143710 657776039 209434293 564589206 8365921 817828875 963247436 192303554 174769407 943590662 199187775 106149071 931203781 71360801 472801848 105485389 741558675 78833738 353027838 218245877 516868967 978572762 774883665 726372259 705271123 912735443 446910388 929488950 434113173 304848091 975467246 1264262 604445029 228098473 436034992 790839637 758373627 922070226 437344295 589052881 208328230 226092929 292638828 771268223 78134162 862799573 187878612 514898398 834920524 894467643 330561781 171028705 788964015 23113009 899666583 931157488 373214734 602402850 954049480 585959920 530510839 613756986 245281356 273293399 809228366 372968429 632577035 757348328 716706153 997748289 53073181 184872324 251054371 430230700 374219691 308145629 550998427 747398770 418942197 66739358 101419880 23634427 988044021 831706100 93713738 814314669 39500384 604340594 557049143 117604219 793407421 341174917 314410115 45627170 258267201 350166261 578411423 750063993 66170073 98667550 71259959 435468707 279558051 231036001 186645141 942671577 144299668 192593481 458208318 646816900 453418598 803862900 362438660 861661690 721724890 78676894 154743903 347757431 626233980 403132686 346445290 921016795 744499274 432654361 586068601 624007294 207345303 724040697 675210454 134208070 571082757 340342963 523104217 368720726 467382692 890980853 131196961 603047872 400617596 909260384 699116473 258777894 903498668 465216624 935105693 855736143 421427473 437670033 651464993 301511973 742758505 415802163 481832605 530819699 442597841 813277735 162833431 54987216 598806883 243789299 838672649 535061244 641690302 888650653 703099558 80660858 863987041 23944127 378422012 231858275 421812475 999619991 657150698 40840087 784698506 694135440 80473175 584870167 351296283 412078296 562638953 735814167 598010901 626933286 547485130 833421538 957226188 186084053 390036698 545330380 603090357 574083082 616920555 861366678 302674123 496344614 856113105 295889081 863414513 427665419 245828907 392333196 245435317 897536273 401330885 668907299 996471496 304314644 376632995 472469751 690096672 661398634 622072316 116744043 732964844 880648467 948569170 405537140 326244564 68270775 563505691 470634182 177578461 837119248 620619663 323312425 496227633 38193431 642091953 328826191 918180075 675195968 433523372 851656072 706624170 593650797 620288478 294130429 857950093 772535295 947527323 49273796 606347892 60496999 917298409 980519005 206955258 589758861 108297707 455501476 480161671 346563556 688398651 200915085 251459390 477085459 398773367 314410423 561102714 244190831 169133256 221988735 142774892 235704258 618947310 512507502 226947828 89064730 458251891 699689569 544472608 90470816 998693198 636912051 263709223 443680935 713411454 957201163 951353509 699299455 832661414 721817844 934547182 194333390 381202009 238503494 50302580 170869758 122957644 279974590 827806199 673397882 108599728 971853899 550268661 786694620 37111602 750167908 756873975 222837436 559142167 91349712 682101417 722626904 81798690 630286826 623558630 822274454 546842190 547122214 712693616 440622684 414820545 290922666 62228270 999795545 530909743 348477144 339474922 682634779 692466787 503572476 964262094 609480222 447699191 613815396 927310541 955206266 805895655 418637602 471317670 757505156 957085482 620028421 492506624 1542516 865222691 316244164 316491013 333502317 341271536 406236880 923709541 265482763 727328360 906446550 64267608 465643162 510499295 180357888 457486042 123262085 899111776 934485252 253774958 907810308 705051675 419141592 482508450 275680266 307545802 751456439 220136026 972830071 534517902 422096313 475491952 141754423 249931889 658515558 174100072 866616587 172423502 908149818 225852947 818699192 961682184 669628995 314608692 661610747 656924163 276224186 958375095 82505714 894254098 585994524 515962554 639467183 710033156 885199823 879036793 314616393 201790500 360924311 980483821 861347378 191264702 48110109 95150356 484395411 418168669 491839556 841477733 581064419 956417868 854125555 427758719 147423581 231314204 202928081 106840714 379895107 39347385 762407884 81933859 816490172 3364296 698592074 515099759 780200280 724990639 335528488 620699954 116050157 117469653 56705367 623511104 249294719 823046702 247314314 414083033 305860178 632942381 507779364 495539740 917977124 287131186 296516558 621004865 327312293 158692895 260444227 414250184 583306436 538382592 308956073 414631117 641688254 753901762 546498394 89537101 428857245 746952 543657113 700604983 49986227 806709614 45770042 387046405 525817035 19306157 733878272 481417947 961025551 922085483 311639481 993026463 328331858 519385328 717736340 124363581 793986278 282852179 448574210 193544534 663524791 164100123 835650319 144563386 792267351 733888779 421637653 603901933 727353295 905679143 366217475 623619895 332453708 631735202 768410516 343688456 4212542 628035166 983420872 870863769 414160137 671782193 41945583 218359540 668213624 622987598 138102749 87462211 155908334 231508536 92911829 924707636 331392723 55979240 312191152 690979382 26708803 836341860 458091549 935384679 373389170 423511362 961991885 902386332 457989417 402752328 973289645 499332247 731884806 28768095 290187043 149531237 649988514 408998733 30061444 76744131 301931187 629656493 835075033 390219929 514574272 973708736 231449361 322156881 832396926 662568416 90540856 585708079 179573542 578346459 778592157 692749888 594784112 122603886 145126836 478286470 858476493 667222891 298535083 272441643 610908448 293596164 190918250 804554662 728478530 831679196 838232407 332254567 822625878 523277246 783392484 270191734 696570784 894118184 674509691 151947711 397197193 407210704 938846894 254128685 542270220 625811872 606443190 167638015 301143474 385988863 40158577 562723919 975697328 767494091 269505881 873435674 581594964 68468979 867234253 146247410 259949607 584944692 672346282 544220542 330485875 581809807 113928026 113283311 902317624 712497232 650232564 340621777 872683056 277086336 109189524 830864217 289331578 584970980 57141817 459531127 348132266 329197763 397841617 487936245 775467775 989892701 62736299 714740164 415918152 782089523 852065592 459084787 604243891 902154551 574598394 713678100 794923970 121161570 983514738 539300290 797701773 32581677 349497196 109903840 385737599 242903557 598681803 871423992 354039909 369057353 512949445 706352953 819743303 91497954 763617064 11404896 226138874 487979612 533619945 292142822 510712178 942327770 771300204 301134853 407854131 438627082 507394231 209466593 167927111 955610341 580027595 727292700 946859803 106835298 169323645 60482285 811695791 815670969 670297431 729634018 366112749 495327319 715584807 574117356 20830662 792990457 356072713 739996894 869175177 539109380 910894841 806305765 336369714 600429319 600501003 801336057 434129098 466379745 254880191 808950445 181998364 211551938 648043932 182188937 465291973 171245654 439006464 60653524 114006473 553498948 548965120 702257748 711725329 394605847 448975120 939643018 957028794 60791668 903451939 706704197 971758149 944641964 670535751 524327302 376923892 675007631 191173753 582980743 52988930 712881585 302985370 466291858 152088400 144413581 584564300 477144706 761587322 75813654 924490396 788185399 261351840 477561884 380749003 292702359 848455801 944299258 91161410 235865166 427656562 568449297 813773596 296897964 92227978 920165037 361969151 216896347 450946184 293546025 719752532 375397760 310305090 487680457 250690172 63700565 2651116 835906494 725593253 225346919 734716890 88525204 147758679 648982566 111222639 574061088 692391013 665999211 529164216 226137 714375574 639124987 791245638 144844986 630936910 698730746 396223295 262258770 537217262 260712111 575776684 646295135 334442111 415304426 84367195 385908399 646395457 837336959 897360373 743331093 225897990 947133702 136952199 621360126 190256682 120504092 851317154 367772890 304447543 580518787 487724770 137964370 361209743 137999724 192140417 391104801 433240762 694251161 129326612 579534731 3814069 749474079 212907367 560788379 34447911 372033045 631845769 208860341 638157959 45057284 440345902 435304232 374390176 996942487 651550311 867965540 579237799 747511596 400653141 89439148 246399071 417574468 599178715 642384477 374903276 198096560 376687599 457965528 329868197 76492139 510066385 980274204 276845222 709163919 160310609 817681749 412916507 669218411 480298531 433619838 905247054 182279147 154517338 599827584 140779383 547710678 574891452 29722780 311443021 197473289 218327789 89068948 865324282 673918563 539857125 297433198 983155877 914651644 919676685 251087738 11367342 169155454 194857425 108207229 848249738 626938135 290376432 509259106 18465134 337085669 733805823 758094666 451201182 84554876 942176617 888539383 345649428 315868917 928706805 499518193 341452157 236114401 219336716 698074742 930530567 447588128 870240229 70129863 982913988 355187467 125650328 911069334 787535525 101546239 567175583 82700159 623563846 629541943 620980848 688759005 376710239 80765887 232258987 978347621 613992398 333617763 794259908 915396699 987288650 24125473 789797190 623359339 637162969 565105949 72772465 910608885 903840707 167275138 74388025 209992817 691619928 937840298 152009722 602141718 975260844 903841684 589715698 859662928 25133800 551560436 705892766 192160104 723371701 620440656 311848678 211819549 808899079 726878332 706179942 582142104 131514125 864927753 50347023 13958881 435804597 865761783 824142614 159787621 890856879 642259438 807286489 990732853 957840769 581061068 640467582 455109404 611264908 990047013 264145063 737557782 914787649 572375001 890426030 578712824 787705681 204452276 331295301 43706890 852779115 4862968 683675185 397431147 151631301 497472471 800304000 420438685 556817574 845861731 60940756 310813755 82956883 125253227 117671227 937760296 228239369 781305400 831494210 333962078 335647838 761516641 937471087 378353769 456069110 877439483 646744038 46474697 900625882 999409382 894056942 540084497 964059584 160062472 583750341 459047286 368426836 602272610 48186529 576671383 12249066 976545598 49520868 493802140 863183008 947821823 927588176 996772474 160345053 818066364 436818738 917300826 213937404 231920548 609172915 437375067 281198664 993608041 584283027 631115053 391841924 398064698 784836239 470282367 859223302 31524795 555932228 844864986 97322443 845286306 169831616 790358937 214565271 708395182 171704736 115744067 656271277 563434222 821147561 59042396 948276420 893798581 251924782 591460392 750909621 875714450 242128413 949048667 299297120 534782491 549583729 663090824 879201123 197310444 151665243 402021441 315001375 916703279 370339133 859097091 624756291 751612326 360946910 60043308 78475392 319989244 693615524 200080096 570223861 718063913 648821255 843517761 572801433 15786737 880260019 83744770 469299120 634056821 603986977 775721686 461025401 598846211 161299455 226098547 70429029 434848852 703685857 454763859 766670871 744782820 245104228 170817697 407712652 516904544 605305835 578833145 764523371 778559467 741137990 140001869 267147782 194402797 89931736 152879047 936303966 891819194 431851985 889223343 643907281 746152005 62758247 578269951 36690605 727160748 175146636 900739563 684661175 302058555 707300312 549781162 705504955 942995581 728243559 820957982 121124286 977778647 56746570 372142206 699553204 859956263 622512487 826597535 394474415 844779059 753394541 275966258 812473871 937663850 548900103 783055153 776955988 21596015 772080031 709518259 276019938 419580032 191652789 354389991 891783933 618970779 979662923 759092163 348298163 425651276 786782069 322584429 14597406 680089998 655647416 241986260 499149244 358078989 904226391 841130683 290056651 448308806 722732785 875513621 740619178 187032163 734464672 631633901 868410178 197354475 537613313 794108821 926937056 127956163 88360475 423647161 203177389 120797561 446146095 685241627 22574874 205592477 949523454 25321309 277158232 395029179 562038340 350589825 440061555 394809798 179219365 254270706 335579844 555113568 465058297 182454680 405236543 329254651 336829354 531074886 533854445 786607459 559863532 981163900 324970915 320953359 21745597 291748369 28210349 407739230 211699077 204600542 499673573 183101994 852672237 726248450 595451283 86788787 102557507 5491689 188696320 37705489 956176660 909050611 114890823 901343996 89404429 717300328 362330422 162457696 973219164 850393267 126130288 116075036 751631606 737121591 364720149 359985433 970753338 433242457 540981035 394991970 140118168 944546434 841164986 786257836 269392219 467948877 399994780 440305772 744110167 349228494 890881060 851474459 470280999 966029453 808744778 539745275 90825644 156260522 709983849 144733468 700046370 260393226 381682442 449271257 187349755 907663800 624362105 70547855 929878034 743383459 295168636 107178470 179101062 429958780 823738395 435623454 137442221 342919129 529350417 597227342 601113155 446143264 506839285 359391888 56062429 59264042 660452020 171340379 536514271 928277224 623158724 998312863 455275079 760155458 596344518 882533943 73275606 654455930 573576942 161105039 212243709 747963608 735351028 701861162 27563556 186088508 981966898 727576902 670784392 778297013 762365759 154269290 161361244 686213807 744187481 180304547 880210416 556483888 949389466 478827424 221460757 887346856 120355003 224347333 986017940 413066552 940278781 105564451 462039590 60015158 408737783 128221138 761969148 932411419 498225561 847592844 209125631 328499177 774898452 162032625 994030752 268055060 303702218 136673586 114777639 144345477 490526460 837899708 266523118 15196608 91430459 764650490 449889689 496663883 855176332 130786655 334538340 460215698 169453818 782550309 563560287 146241011 34221108 722558163 498378086 186211999 894619369 112345503 536424310 512960448 105023667 226185947 567904576 676253947 274668669 272057655 291067564 562063013 46254763 641511662 85825325 504751291 347062621 534404714 985202175 350530840 454593580 194925622 580040804 490867701 114654780 666822471 93157538 102721040 226376289 293975849 918546860 828455211 260907082 330710641 966716139 355940580 670716410 409015378 388713868 950521488 820759022 729444279 424917512 31176877 725734537 13298218 382116581 363207904 308734572 146491111 945375631 234590411 351359692 163589382 821586478 496583397 687241249 767323213 686134201 15528429 917609181 776716466 264005948 600947182 967652086 827988819 963205671 195685453 211926561 637732394 77425691 572116812 64047677 965268777 559328882 685648102 40015016 782586927 749975290 764490806 787900201 465739805 900191884 648060006 30508230 107912648 550608707 476820789 338893433 41105029 412923750 20052490 510160127 840807622 84552645 852005033 825249360 836223604 317292015 472377988 277031609 461019939 970197478 907721532 313105259 984261666 164492946 546204937 249990589 41792773 918592443 250800174 656702762 240001288 57415934 848031111 230019195 230573069 719140741 345046678 332670599 783970780 445075051 700020639 800021542 419584608 587858826 121686278 777778699 525228608 471692118 593667395 873402675 259131911 810658384 892100466 837769160 816056973 39056813 824305578 541829381 938436575 298275718 526244682 944293317 212827383 701765755 495885862 264744541 590383521 292795581 769667032 974006454 782623437 954425858 662572789 450919005 477522274 963802766 324303714 168512086 470344619 51939890 971724859 612315766 281280300 284874979 487185456 224861793 877981377 771832736 398977048 608021848 928704527 345119987 64091434 986508834 883693527 75441440 676046699 349152524 215807888 417378617 118537254 769463802 789766310 799300135 577647587 523870425 350569226 469930055 497838517 998858871 131200049 315804205 394149727 858318741 821691257 747046870 21911488 914558240 484786058 828782143 161789844 920905646 379073258 755670209 622818813 451030743 244326019 913842060 228485337 268236959 750828434 752532400 619110155 739231994 919201128 183000027 133166000 366646345 72477780 589648132 200100657 387117056 305004861 271122073 953433016 455942125 272561625 978710893 261970977 766373108 370224461 586311516 128423358 240729830 643140169 966159733 161786080 827797844 455597558 587395214 282935561 352442937 453300190 810066709 597157812 657569825 730033204 689809267 580170277 766410901 688797258 181081598 213057261 853831641 618483765 884428163 916038313 905909973 430076737 926979710 661642137 187866117 6464805 989673718 95386974 396948732 828062462 294301086 19567930 802949676 748180822 903611777 738403596 868608073 137382166 25772254 478780755 294030668 861258316 784745955 334218408 894459248 201746757 164283111 591536353 905225950 694133415 671229819 391818884 419267143 32872190 479680347 220178657 816402846 626992749 49127659 794702815 962656274 785024276 504958521 755722446 309185649 926434425 351499851 12784200 221957908 156038482 364583440 961972160 53941638 735335275 886863056 884809859 624718522 696145193 66806726 686723428 678156336 885666058 394695986 247920914 653648049 913907521 635722906 355543350 574114046 702292047 719452530 174882505 732854866 257649675 327034476 72780825 925294283 229755894 193110208 387407564 395339386 529722616 47394840 309951690 229505793 231436307 604875083 673129087 615211319 612744264 706077993 920030410 29369187 622177168 653482876 631576456 157651622 352843506 210948663 609043330 680433985 189915250 837902040 427816215 368730596 494215498 314410293 519927586 82427138 389583406 657378306 380102830 541361344 298055121 590084443 472587726 624072264 357735351 464536822 643849151 572796233 544563122 488556993 227191702 965333654 429796576 277541953 986383707 220534401 638999620 789702650 613362334 148436691 927794438 959852232 872405473 777107898 954239294 641326362 660644097 53959916 843149841 779508513 983975761 777842300 439698533 604931791 415598469 194953159 296068489 89840175 552059412 75984922 322666509 757388674 747792420 93581270 467815729 738862566 583827783 885390586 102808537 813299423 68500481 619518232 142723293 554205651 301219331 904250385 110332946 683547350 893134021 254894899 574373287 843817821 484574544 785471018 579554889 760848434 243949914 393708650 120940954 617189 984606521 570160963 84752527 549822173 672772589 500553105 634818870 316144220 566429543 133805033 972951892 888096007 525146564 698896479 492708804 303514963 558166651 544469115 278192825 388782617 638926968 200550692 773167201 405799592 570589675 166530249 833308737 415446222 974595449 247013263 736913334 811953539 628711615 524798065 669726626 199475804 17911989 335158925 726970145 437253116 674282332 565789413 73066567 535265968 713840372 338032453 96810945 256512873 555805722 196327018 175895510 799240414 199505397 19185612 285753325 803232774 50862043 279616608 274324015 83152128 626335961 77099177 36973885 15376462 714978153 529811363 257853335 520858890 890425414 594232766 941404048 632275999 553525748 773147065 530138830 471957012 765019548 181126129 759474992 997762685 593136311 755467925 383250291 762496682 111345135 179103421 983533465 376541199 465724023 176085404 4835758 762413388 355755234 826448649 738053033 760251371 418145040 690034878 845961194 835186524 840992723 48268771 63923960 190007177 41794975 748944826 840164917 228470298 476154771 703426123 854632298 373903761 441275591 982577461 478809651 293913176 736976859 708201457 823004774 504171594 872417754 346893604 113797387 398992683 590206764 89929270 267149659 409897441 264387144 337359911 467661551 54145704 71149069 216143499 830508518 985337422 593272389 704222143 412711309 440820746 264485046 788940758 851708615 604565327 501772193 118919850 3061166 564160125 983675872 349286366 979965595 943230627 171010949 910899617 780841983 561771868 990493658 783544719 239218878 6820609 154790032 571854347 473133751 802847749 733790087 41139355 155031791 924568335 5876465 579666994 794689803 520166261 986957697 649901967 666578592 372069965 971281503 93367796 601402940 606156718 609136803 366966875 999929466 707744292 388853480 141324748 910053630 996036115 573879414 79897870 979877866 269973534 753564480 447314409 713303297 3627677 465183032 339819814 540247306 280546743 876118743 25286287 454865278 815487302 471082521 715094219 160339671 218381215 862888969 413972552 856232174 370945791 663254048 540385493 391535238 65661255 792185400 420537458 757370206 30349847 726469792 708123895 238881572 321393541 713684525 499927951 471876554 296478547 532334328 816936205 89859712 545606584 785623485 992219674 628119529 624641721 868186118 104382707 848424590 616755882 323148318 869777266 894595308 828973953 975995586 317191225 865296516 444336213 635417995 786174917 552513722 227711349 871162660 585657046 973054694 579021105 18647672 156754844 427276761 61568301 581787335 963800338 292307060 77749849 252115564 366634798 515053533 279107345 295158515 125768577 86639998 289593788 44257460 845724287 219562686 824010016 129037442 824621499 448794692 737298880 560528342 525449298 103838645 234185018 416992850 714855970 38806793 556793616 733764163 873386628 847804652 786915817 756108521 797526164 644477449 824547739 40683676 364125257 995973822 947287939 309497743 799479860 392488825 499269122 330243408 430331378 861538110 45456134 953353244 700662144 274126462 670509614 499326857 663662853 660928767 383943027 291820103 842563659 615657184 875497755 219475483 910650162 507614131 736539358 336877505 867380140 783701238 418147998 674730817 942682993 47778408 619529818 636121106 63894747 416539892 797629228 436384135 896488671 548364788 51796557 61797995 782833967 968370914 532019219 663396774 693776231 39770339 493818362 240234348 38987661 72422542 962127826 83645262 590808462 412607546 35498859 499809556 16636651 772507297 999887668 280176230 605414200 521480806 90859674 621358669 459303612 759528492 360382065 882824486 218651684 952672310 949945799 882167323 25162834 352901511 578403495 326606640 832100722 950329680 268871038 80536803 244148686 496974103 414170838 206815249 823020803 459436245 290818807 720225776 632587006 981731584 687799748 560565335 472303551 581286722 985201371 605149935 108087171 268984473 696454607 490424976 679268994 848507147 715500333 881772025 875017318 184325043 300880928 811086018 488570542 24394052 305597196 217957714 473086095 110274537 139979841 499480260 270917580 476335874 538222390 212437889 509811505 725924961 9051774 456474497 341335976 812881216 996555676 942578202 759437025 521337167 776595059 581810944 579780005 605612297 61508856 674782305 651424149 302306196 865135510 49982091 439041572 793570911 239179401 59551179 68467914 105203220 455314645 349318674 344302001 563704753 673924919 913016044 377019193 612639931 766122797 742484936 676428594 53729842 962780004 97320611 253650912 669175101 207345344 681841739 919016992 568102355 364427888 800545806 936154640 130111341 15582676 390318519 330867161 962252394 603712408 629206693 945769286 627812077 468243736 557268534 175654439 788154730 297314348 163695238 214941701 357952169 194710060 125128403 541169566 432905520 693336250 119080637 363685914 634989142 117929636 578599425 770866892 855105301 943741108 41934682 297933443 658194509 767468745 177067555 620741664 322658601 654345167 268171800 446735016 695234721 41890636 401778285 8136090 333485404 309042153 538262891 605841502 517844254 584130347 660535477 785290223 458789430 874689652 35762016 948680430 143171011 728531168 120670443 44136635 760709549 996177054 403099529 636563200 32694671 684291855 338891389 519122799 104336046 476320424 443970325 883726191 503595075 994683398 886139649 893856249 435412785 795059225 33402342 247024142 462052499 288834522 338754622 196564226 969806082 739495342 277626489 108667000 483089812 391315394 347699638 514009559 978251261 967551762 60656326 302586621 518925863 281327339 821887631 452444017 749829710 147513770 514371990 469704156 171334253 598108632 642285349 867286113 952112918 854233706 562980179 634241643 553988759 761177423 225921482 753883685 316635081 776972008 104050818 164260429 993531401 707140071 211354724 831789278 397440512 315810738 679874512 635226627 269932242 984868649 864028969 516678440 719357655 658310029 136406067 177449521 788326720 138042355 876050480 278477914 584709508 426254480 288802849 666091711 855811729 557952582 591173022 73795905 407796996 385920296 489020859 907673768 546653634 442493306 262601363 34338149 288047721 270672726 941171287 400248989 336609605 514430177 816653081 451376712 2129789 410788941 979021571 618123383 622541704 316463495 154794713 674162196 518597199 880164174 920348712 432433344 271089124 616207065 511205786 671807041 775939128 605716483 442235895 620070435 302608080 685253496 166799169 73935966 762486751 77492703 643205387 879604695 970356240 60208793 489061575 815427728 216006955 69994882 902052107 2401378 181128025 79626319 41207389 824409131 331161961 129047918 727555041 658080767 71088667 579329691 67992973 507881162 945355913 68656904 499746824 551484769 448082716 459583026 117522820 93632665 835269096 603759921 435148900 337286820 174782860 547159473 659793463 661122659 960172451 245863640 658593727 689401153 814189663 203460230 515055358 458070402 101615206 153767042 69119104 384823920 798945217 52196719 657912748 230109481 513482203 822016612 443213836 227626473 856852 744214171 855597141 578648756 767725325 739919386 733922334 456437134 486609811 384349616 448411945 849398144 442411496 745142276 840992824 737449501 247987279 378412815 688069073 223408915 61880589 640719431 180957999 450501261 205703142 160809971 386899626 699112562 805222355 223958191 801969669 180824598 896053058 204555713 43464708 67301634 533218466 939858276 558562151 488489813 519045627 890618832 790964469 78588781 584228106 168446160 330125535 129027855 561942858 146569472 772446005 812701284 470376779 773591556 30144746 640126390 310826894 813022218 790675921 291356720 315564234 249373236 604987582 174108465 201912644 396092326 490127938 552988249 411123710 599546315 728713875 251633703 47756031 52423943 458623399 747576484 944146268 952909579 890759882 676986242 862712044 108515129 917863759 427985702 538518913 593335854 767980164 860780983 271141157 699848295 533084951 73510860 307903194 42268716 904699325 691330110 46812446 724289310 809369122 301993767 472635723 453854328 738318286 828417502 486877646 560417670 518378661 215549764 712318047 313313552 450968077 384771738 524531597 57000747 397503369 311614799 419065487 74610553 162062092 994277050 378429965 514609248 420723985 559492340 198476241 144200309 56346514 670655985 291783209 957849425 876397715 78501042 898071830 550009464 113313604 216880183 19610699 261578207 234641254 537347988 521760470 656798278 39539678 475346407 874030832 808662422 232831172 493841061 657139774 504760550 974523932 482879624 912043836 612938503 520644161 409095343 786219557 990299830 982210873 429336925 774919078 511614858 327011911 779783184 290123748 26566349 557227550 102204583 137097860 641707306 905281003 371816407 346372807 220025564 467948468 92451787 764262425 312547600 715244414 941807544 717930833 367072498 495465469 92564800 207025581 194778457 417330011 245727804 813801049 558750626 287267763 192941983 445696713 335633768 304755898 86816972 506496894 130431499 677247817 135852945 409050480 891468395 713781295 801452130 175008667 355522362 328702922 567348730 978057876 881464179 33537512 124857769 355009308 440646193 545609556 630268218 413875511 918348173 789303653 638383612 395478923 774349566 644497736 420574928 341121503 445370438 617935653 715296170 905989891 802769561 534518345 354972736 688059219 106861022 824375600 268660793 634860932 200666036 708082585 708954633 761062123 729163985 249924454 690179509 795576159 622981279 145109535 459425492 295880204 577017914 414453167 775613059 738065314 624723114 39081217 605023536 937758903 910245517 506601903 472694328 541033038 585469139 105978986 409335457 174103232 805531007 267065825 556470177 735473590 619475707 887779084 248821490 422187542 269422661 798914800 964172104 487344779 941593096 777002961 46098940 941002809 658912383 805240587 13648015 939057607 136597317 548424427 740886730 915574464 89365884 267739992 327171058 951831658 644311487 788240564 177261845 810686626 343156192 896775356 553975595 102912165 217373966 716268339 888642826 18561736 111826362 716496197 646057828 946992221 407417470 474345805 103210300 606810171 41620840 668663890 186934777 919795490 148711804 909590115 945422132 147279881 791289790 388149598 922475770 259213914 161142832 76927012 328608646 812304320 932039211 692379267 236876317 446268603 622444277 787886095 802873692 752216371 807353288 370044674 201294105 286580943 901298666 960605172 68672504 3326983 327264069 379074493 283971714 683395912 941571159 798225089 641652385 837333867 462308119 426624048 467334066 28040336 612191421 887395640 14256052 480669529 52151536 992189083 609211327 279432375 704301642 251331771 772534619 368030026 533363319 751416128 171594157 205859384 709691033 937260400 651687411 459804668 992333743 753921158 740279403 509750294 592202536 423839672 606776870 179040589 610709338 240175635 883433343 95290616 57437260 595586600 139609665 446556030 219140011 92633585 128138217 259690907 953848972 353232975 999950321 135821823 973416609 462086750 352989551 502825262 144319957 387672039 633186801 438714139 985083887 336912471 358067791 805174981 180661571 273515626 476032975 423011708 535578069 286470598 80518900 555145208 76569868 389132411 453315476 519232751 417379355 763699100 481666856 288154881 63720932 90358261 760841797 396135242 446010833 351689767 877271919 993773365 611566916 835764385 123615418 531324556 432842848 226108100 605429041 345385083 639813004 693224452 843801071 894590816 580270395 760892221 629983703 611652089 702642020 596050526 525176031 813275183 922195774 206004872 348210446 949043200 188137231 29362541 666170096 799209238 819545955 123709090 495917360 227390489 320049657 553193839 940741743 807429345 565121842 286474432 517426963 717867312 981713564 809760525 337319340 672999870 811900020 60289988 365085035 837253736 599242454 923098367 323117589 402057977 203644334 262154684 990978907 629576539 65374925 831541520 632930578 746738428 198586596 856776239 825674153 450016862 654463729 245038704 846718451 246312130 794866912 440856607 514120968 78182924 866051617 512398614 823408161 761864718 33028736 844795747 885183717 960889683 98081700 152187587 66047782 488819184 829959813 104547111 152841204 666485125 727978911 829578978 421747398 648348408 377401039 810131433 714082109 798880031 151760633 155101928 751984212 13506323 624666036 409468673 523575848 262897001 298621284 687328974 735832688 889013568 633133608 279265520 340649265 156037413 367182649 940160766 862350269 177941088 111037047 355427603 475467610 223467110 17310536 484463513 881194329 446774931 503833502 753906131 161860252 560246499 705437120 650161887 852542865 487831779 103543807 550427355 286553757 18281623 777211041 890848246 689384593 958222631 449233213 971951499 788685618 570857659 390619817 799422770 23075688 608206962 303060335 587111966 746829532 471669755 507344759 489664756 594779060 171436202 543584784 962452547 103960599 599779607 566469808 958842491 58880706 780765384 968116956 325821171 112063992 673716510 594463499 209063056 656777983 529407191 151156466 479213837 758936290 935072287 618616513 304443306 851629399 395142249 193265297 513913551 639647096 774545359 390766682 273331263 762470034 769818575 271945177 626086739 727851403 728639150 292481261 577537078 498456551 244571939 795858183 855205941 480993499 307948667 702436163 754943636 409363825 17340247 519309722 802768135 582855313 332822300 978252920 29822873 675908890 937572507 187336686 43658676 856257530 345368471 904861110 977818632 994046968 637372767 766329723 185932191 722979850 97388501 448031742 208593926 495355116 434947072 547013647 398233386 925843043 963514799 273806140 648824215 565804473 96226518 785872284 129340904 54748484 45173222 943415016 711694552 861627774 70902422 965362430 153573439 888471995 138542295 784843565 981394039 305002551 695155126 902121216 165696903 981647484 36397185 616972584 958092042 831605543 261359336 709958781 193505682 532250125 825572409 385559514 137844734 248977561 121903428 66636852 361215277 932673737 777382583 339259341 579728668 718749973 481717792 941153675 47945376 237697052 295708064 429151070 596333487 952714221 786012402 619175162 867594551 467803677 794290131 561655219 607069158 491166132 903512458 318539417 868012418 594134460 906641458 429471810 205593809 304542128 242036028 520014674 530388035 38602636 236158378 979914561 74416977 584051635 686512355 25527366 897213799 782077418 837142492 141997951 327031168 376220102 212701276 439022381 230873586 379941427 287651984 46615593 933346221 569193186 435739679 678118764 199750318 256828052 914038202 221529805 617887146 555927457 427526109 600223339 197047653 74813894 115735086 551026876 856354349 899604892 727934137 376681600 221073448 699555278 350467085 753207868 182791494 315039863 730858311 884688258 279138793 988862089 167518958 761107624 361571911 492166055 791786126 202300027 329087525 516445456 437307488 905876259 36888062 265711994 4813215 823111840 476424876 556153841 649427391 868364635 392923797 91303140 543854082 29312757 670966764 138867258 919791688 624994783 21342339 569617798 363276275 681516493 905595725 536319378 68883179 839817111 241400093 255399848 152713963 371010167 835945403 857444363 672007734 626488201 710478073 87232039 781989111 459642169 619856997 174689201 780281184 835234050 270395239 549245530 93787317 498631328 44738784 868700301 531262615 785826205 665512607 523183836 254275233 270771237 630010416 196977050 697747251 993453936 976893616 860770598 291600917 523383400 287950654 850260687 621157209 232735416 878083010 126202765 773540785 766035380 461459634 811660105 957811109 979810003 821463834 425536459 353067418 860538033 235848471 61238212 564018571 375812126 546655001 84051593 796039825 772563749 201602537 865518297 717474336 498413421 416676574 38470543 760998212 333602433 378802949 10083388 427827533 697333675 102300110 640036791 696723880 368699598 133335656 74313697 97027017 243195646 121215673 431718268 894481420 408716899 513858170 486533410 747142431 601315528 563680195 45849720 796588735 260482300 423282296 895713494 987146096 356496013 674689418 19107979 963511565 77414854 344057509 998405645 988170603 596789718 501157061 607004325 621242827 307324516 86336392 283380142 477781419 118761246 36661641 759302369 858618976 63443996 145735917 916196722 202455919 381989144 740742240 519964550 826351785 930961406 304328503 802635102 298756106 791286224 233647816 65459976 84653505 462939526 922494526 924895901 792756463 232212173 728414888 723531742 724519730 862691956 544115026 607225691 365577291 550469199 20434076 896619477 461100897 509668130 259941165 432257083 737799270 267806514 565371736 580723254 165951333 652445237 723713939 589696217 14171135 563247042 703230560 424188429 766085321 102953256 495304614 176910491 940188528 762847086 906855208 581184272 718438863 27291712 495152461 922878011 836927577 443987747 788677278 702343875 262090391 18718841 408826237 602936678 260407207 939240885 710371427 367313694 113324650 230371539 84751352 944845704 772849907 619308973 377971566 739229395 318877813 852584153 184755846 15232119 894967925 631651198 619578224 448508478 95891156 558269594 969050969 697529099 523146794 216753551 628013212 746280224 378022855 328968110 917141206 103962456 25851981 316868858 361931388 22255890 651086599 550510757 65856282 748305693 648091902 945474174 986101572 904993794 140159124 786375427 276211208 314227662 427979143 19543316 625774728 355270400 2765663 875697059 465007208 927791640 612282543 663631564 182021899 259849965 10951974 77385324 390780091 113009091 498988007 590209146 105068359 123849198 874219546 186997121 280165307 64750480 453247556 978763352 798295591 745126765 566843432 244346206 713550345 195552905 40415962 651924504 823295264 493739804 896062092 82595662 194680018 571763664 851086963 992591969 740080081 683153179 62620163 251163563 832851622 504474703 639310558 669622738 537739437 962400665 886611077 385474222 764825217 391459589 231879188 17324687 398110418 538683544 817378531 25373818 567141339 758540087 282179979 926878074 760834185 97905494 509034372 230876801 450117090 619536696 627071421 236403342 173244713 547565076 588797456 870584670 26280627 401270351 848765443 881890532 394329444 270312921 855677153 341359971 70572911 180052360 164444740 410232839 819855587 398760400 897937575 608280351 402121155 353754049 375230405 817028893 700157063 583434143 978835939 326856479 931090409 632114720 904378813 697271934 563289243 848806004 464174384 390228566 416489125 825527182 108929790 583376264 449933240 384497859 53227725 451595317 895805655 338255032 56090416 729436664 314006786 322036401 575756199 594612105 187224252 891455543 150396726 529399310 670372167 385610339 310449096 990190310 433608794 27350398 63853628 545659672 955093333 333485647 567721604 409807180 77759880 125098257 909845112 565761918 486649122 154431429 339630366 251601998 913025972 323896945 663235708 230165229 637978240 865593895 586679977 558452921 259115048 510866527 316448184 733219974 305665441 316564131 25112819 20092849 476399285 391142829 263657044 444003478 257692558 926608691 558172633 111056061 185962529 160082600 755432423 627158126 356514271 133496220 246535436 11290009 232948059 873977959 424127244 56684952 42865791 272081079 65496308 997000424 686601151 788958547 779959090 468692191 884299532 522910225 853240236 230060615 621864707 55977076 99795900 692400662 636961486 20267630 574497419 147204603 794749239 578713858 312533464 847770065 662834007 573235324 688925497 79022243 11998995 532575865 328262559 60691470 193143059 782259423 517337999 524009095 536068106 197894921 429659144 856813473 522967629 164553282 667479723 87950518 654098197 990366798 922938064 826538405 754138933 677767512 124597595 57836208 645282018 369190505 66929494 693147086 81387323 987732195 270434449 566043676 629021059 455073843 12651882 939150925 748255154 594162018 434694864 693739693 510933723 433084489 270386757 431388190 586143902 84817368 614910480 955886323 609796250 594697622 539015983 444888160 826425185 758188116 262081581 349155243 983067105 254890219 72552803 252583356 958761410 392816769 529684625 779193209 318392764 486365690 414380328 562645121 971945647 262563262 396410811 655394710 542397559 200083790 883356925 376333049 433751433 645040072 287229420 688505838 875790283 452057312 7058213 645372039 514978976 378366008 628234677 363621744 70580439 654485641 192247739 738134081 457839352 670706050 971147661 610043243 220440193 146976195 56311403 173849860 584481738 919557976 187872793 620138951 65412718 455367291 29553814 897805909 613066154 125789182 869845202 736122809 977024966 113096418 466438267 710929917 787291239 72667650 447628315 873395177 985074774 591503991 954044254 623791297 696726291 359823184 558298514 975187259 651481840 157343220 293476340 391565820 211087560 821277000 258231259 621304071 463953918 693436558 258969437 852413457 237439698 457474622 169601238 394531631 108169786 904225055 613635572 803282543 985992264 165714200 538234180 804136599 751930309 210976180 116557362 213001617 573827926 819696422 79866455 847741746 102495018 235670838 409084086 547930866 458542382 314922212 428382899 275931461 495319454 926115732 745413400 845284249 960627487 185993222 471352349 378937978 120866298 668731193 239106396 414646807 823767794 372483975 946291350 917082812 908090950 679490192 569887172 495300435 98573285 185497027 620299757 586286050 55189055 613765269 951251628 864356709 174239283 710112062 304456884 415814890 203305129 1986050 877117342 707585188 770721415 474533502 981675553 681239748 253995879 488593072 821522791 710245298 140163463 830930168 142217092 655818794 274771634 730974073 628348450 180179598 667079649 644099422 16383812 953741107 613363686 760843524 672326604 88688548 120756189 286901930 977635138 629097421 937773988 411194544 50351986 474042091 790035346 578747855 397605604 523687520 119794202 803874258 270846547 699931641 911310449 565361267 564912991 439229289 910763001 322364707 383004652 361835607 818571752 68120179 249224540 998850910 28812060 774813599 965266862 451706779 791859576 261430444 157728568 629774640 884241054 150627735 875374921 180044265 208202980 928877630 419453581 821686053 263248760 4075060 166584563 563938863 649460469 334230705 397966699 661783126 786945146 757027231 522369605 636984062 872041830 952084036 423591237 312745516 957629326 298761764 254331559 456598069 895480121 553516335 271202928 307367982 828187855 537991639 366447760 340136698 844411567 506574450 481824801 393536334 411899255 719916316 916908963 604741089 609031867 956104413 935044631 378503803 510392358 103711604 907904449 475464404 70277485 785546759 705243505 614777905 636778283 889765912 563418176 509725737 892077158 556551316 855133011 740596236 350522465 57421892 263961438 242716565 751755105 171255845 297131297 207433489 933709099 550393758 874384221 129329947 275795107 883423906 631108636 76195439 240563487 846987966 395664223 453770570 997825677 793259648 997827694 62286880 426298586 32783331 579663021 303047640 179111910 496663127 614889559 36776272 503176133 339827273 95583053 952059807 941952100 608322554 486046458 724828975 685392422 672898742 421353695 9230560 555104002 64544339 54927301 169877580 93225702 215021828 818231462 872180046 744373114 648652390 511747258 691669748 349585204 734076177 550751830 602236792 594365539 100772589 355690683 561650300 622662678 115921282 645677271 178912288 739117286 914685481 460726872 564148267 893944832 393593599 353739136 558650288 315198993 849761327 371600924 89517706 546660360 28202449 936738613 679703532 534637904 472900780 875065619 950046998 297416941 194209795 454674535 31634120 337001354 819432365 11648413 773823971 491146609 681242161 118606478 127173326 311311000 364175478 48345741 86669222 364197041 88084232 682577313 296672871 940363093 718313583 259488786 470418905 812526552 234145329 767533957 610441171 164914853 82062205 122194987 3604053 898516430 221387401 224626875 785577467 658331317 497029605 352235163 812143617 508049169 668323137 503331387 203930981 558958024 581621120 469441170 220153869 805400281 405085965 519442912 392790226 695704157 968852098 209533443 235481564 704485569 66339644 518136117 133562799 316974476 651870630 829697910 335425753 518802841 16301616 971817506 483617068 906383156 487462249 777439369 239063238 305827622 298012411 712418183 894751144 128457706 546397055 425669991 202344372 30427944 974531577 608694026 791903700 804206451 939525413 858551527 964749163 290738409 771286740 658244754 68768161 258840429 446889452 398874464 61737006 791908549 812779215 635325876 804189197 192050242 763849919 921034568 614684527 592018340 420740681 327933800 743404117 538269648 670070108 124826095 889278151 216416257 184561971 560545324 740073968 393828834 749461980 984619890 403545986 897718330 457481360 55424222 933806912 233281621 106584891 562753841 846071862 339392093 936896258 992382292 773355046 505992473 741286617 405346724 46528055 776721088 789379486 315035010 830515386 559664083 804752909 984610780 930050448 954722134 98353370 821329346 275415165 817285700 719671154 619781879 645876628 553661612 975184031 126251767 584689389 992564906 46672791 546654600 778661372 690382379 345536108 470944005 146475662 876672541 6068358 815628031 457368768 580210526 913661475 872464860 920140972 812529932 156163963 104209063 629739391 789833522 789944185 480536827 299187152 427459523 416336176 92330899 850273646 147071025 323725588 417714489 83167887 747315156 311745816 340489150 481616758 88060090 370943569 604278634 964771153 828101149 536531244 989234183 505179708 824648983 370168302 537770803 692887644 980671768 519990367 5825374 557885397 175985102 91186063 595159019 3609377 565528461 56330139 70263889 732138512 557410928 688005253 668435154 805494440 402431670 449749677 497186309 686762000 958386334 987341012 786701470 982431702 278517068 290365788 737781600 328504893 386851456 931267411 122041986 680031722 765838213 961488376 947380593 428256826 290209762 822244507 601681952 684682463 373003530 109429887 407397937 373110574 877350905 78823862 897669716 186342709 260486934 282731477 114160179 523064871 431397988 671610485 52001627 233686833 833855130 343908214 255527485 994021836 94486330 459444586 322709490 953461856 870679055 125849187 747252072 560357480 206920331 601558819 608727394 692976702 558617293 895106086 333401026 242807648 848880818 36182908 100533129 402078052 371062938 533461344 135902578 296898881 210786786 340553754 192569077 606578660 787270765 215851662 409810381 133127722 705142953 932671753 65764510 37991228 851062673 754319953 446532138 878788734 213510003 408128746 710368437 47254144 68310649 55273787 487275089 976666911 335811285 672427750 32640045 600587685 644175937 246776623 630928839 245241105 142297874 174301104 416795335 679472967 777683519 724308352 847502384 186684720 525081678 284168478 546215452 388009185 4001052 967764326 829105404 533563730 538868692 863269676 236070705 165636537 926164390 824752807 746339646 991485395 69817237 388203424 235270930 488643841 967403482 136515315 991534563 103909620 372499860 589773800 554528997 669990411 467045818 368718932 508684734 493414900 816407446 120441388 193573480 30564536 550685667 360771143 298419016 841113375 777911419 856443195 953686721 101186067 967636077 109401032 25429765 729334817 512999594 330229508 59576969 372666994 28855077 481756253 909689563 344162057 137201066 78405500 497908891 84770467 404977120 268277647 146004327 894990986 859421423 218411510 306119330 767242404 149974613 612670880 989282663 77822789 469839099 882076273 873097403 54364996 437253163 870351925 104159288 367642238 18709052 265874622 363726342 743556165 590840947 258359643 978248297 609846516 728846768 907595884 391300300 593098306 60872111 512120337 550266930 5157885 573002663 427743239 965902368 428983692 897958539 264591610 541184990 366870210 179700360 130882003 551595273 910199788 909283893 647446822 906369902 571179072 629948335 315334018 71853085 867997376 321854561 815876240 94139363 320895168 614693336 107097877 394533252 157154567 870759499 936539936 358849723 960867827 740090952 382661276 764458908 490056417 38276490 91628629 145414064 68851635 769596674 702887884 409593724 785644958 650388404 36961560 626067270 255330948 537034767 110168520 298130005 872844391 755298723 796115004 25633765 488590798 447643815 748610991 585194101 631812480 62954925 448451945 423086028 992208048 207499113 106422067 673014262 585192184 505428231 790908017 412775250 36921611 705550457 178404265 78575409 435400570 428171384 28840355 704151639 734607772 849023819 458446501 402644596 245944532 495700712 904659816 462771444 758129883 822749325 62819856 492874797 513500357 984392565 872086197 290449466 387979619 121401249 921729783 24547451 461654420 172428493 269233789 312722996 617352698 560499269 436923748 915090467 368751967 128946970 948090806 1932508 709740593 575092678 597978292 387253550 967056649 584197377 770540026 776895456 112436447 37200546 297654331 981335398 81161814 243681304 823093202 940445371 351006691 915218806 225590026 203698559 322700594 540526363 617858735 262676356 828387349 578116194 140758867 315039688 721195871 163757692 685235354 916714731 120589945 88538919 207529204 206009099 227435158 663900514 190369022 361859252 32884142 413539363 389960127 596955397 380445747 424400274 964599118 940009651 225775344 900422609 833878764 696476721 249053046 18405442 37424175 748942598 165291214 458300270 122297611 457851471 691916223 820050275 67134902 895987996 568202998 16006346 971419682 973799730 687993123 671435201 237246530 862880512 11137733 946596597 317823853 494440991 674930952 427285842 898957071 601109775 192436199 800752954 769782364 392261745 489882479 384658891 982158515 431729065 935816250 329466627 143645524 179075351 422585758 808545894 333831188 892523898 441565986 899654869 253251158 653181613 626112890 888055611 690555870 928139605 788441174 252656951 60047940 728768717 912637419 996321663 168727397 383352869 101886068 278473336 561012339 272734121 636920367 160692201 614619384 70827306 269362467 336134026 824784440 681777244 904050881 790250685 365645986 722713278 134109735 26880769 633298278 901545954 348069229 72184779 956029610 805840775 72271842 607870225 65125719 998157147 489488592 741601403 142968024 857987845 994573491 659717050 907097274 305112059 985753553 507813839 756684484 273515324 911801049 895378478 134324390 494194564 342122381 959075288 897207097 712594593 64384888 519577206 604602447 363152851 246633110 58063492 235951123 989281186 308569 474367588 100001821 129444528 610971617 917806078 927003617 103782432 845422694 761243101 775040821 112503732 847755446 310102876 82244640 87431045 539497769 155887641 654878776 47163987 887763558 602247386 54523052 49587798 908941870 273684223 215471818 404790076 883804377 127643716 716628959 422963664 23946835 327281521 684642230 647042111 641744032 807612602 896986746 103817997 107706531 74813346 76681255 431440283 816757945 84214450 779028150 464361442 528101294 41153496 264631709 26196563 853767902 632732097 351884701 900729026 96091340 395012102 643434194 950502587 84243647 115718081 164151745 53490822 820146261 693998796 858699765 50458845 235870734 227276280 415000124 117738580 915164161 613659458 512460265 365552205 387212522 675949986 458525595 207460133 858429421 893374465 35486623 352910044 771698281 353864883 64579724 493024907 156810565 497464575 690215236 124678434 837898021 73093345 661135664 29218456 136920569 30193083 807947679 470943195 591178085 247469268 45265634 6910291 977856330 753952926 617774031 612394272 9218849 354535014 147215585 395526374 637174357 638692111 676642091 585398712 564213491 391100078 397038761 418755056 704675569 896022406 18364930 587108638 789020826 154740325 252870675 524137960 955782859 992624545 227558861 857536000 742782243 250786231 819533016 353301219 636126240 849273723 869026040 837066574 675045544 63228097 630634392 738108607 263772996 509448634 453934778 705060307 70165235 75858072 261069646 476283592 707969610 206211830 834795915 871198781 262288300 124902375 6860843 335412463 822548489 207582092 587572986 690243744 286414407 497996875 596806933 897243601 462121116 763712254 415043596 765488258 73898640 730262910 883077952 853454932 58091823 951977355 670209983 177536723 312730301 144100094 935255807 749247495 78044584 698998421 742214120 276470557 37953603 558978708 109954491 850004196 316960767 274883411 984438385 728544854 112780132 38103995 685158569 18287604 571515556 192379820 244381846 587692045 734947877 77329457 834294857 363065613 921522020 232145276 414304537 85243616 920970274 734573154 299722177 661384744 119202049 368753059 948396706 105684391 912880119 879386358 809785596 885839816 692794526 713522576 238525876 297073773 811021841 383024508 787189240 526533010 858211331 289119169 512256994 163110916 4162331 787616429 4569984 358831819 419872715 116779338 110903697 532398186 587053657 156079645 275592840 623166017 711728218 585144717 121442956 393389213 670418228 310100008 457729683 502615798 511802665 213704895 694468069 813946200 382303941 601697201 749165170 214757272 716462716 190728137 973748414 593122978 889075249 937045742 349843811 149876827 513846601 3948381 361313807 965514775 921778603 692360604 183671411 592662873 545416699 207531266 373502370 527371555 724789229 864454212 860551837 495329286 825688737 611993434 460924963 66863233 490870160 64990562 259218610 248980109 519853578 553613761 69631379 769824704 459586381 77159578 494301479 279832001 847116533 259891264 10290242 782835154 160021016 952712846 895787398 999635211 314512996 596321357 457185652 216701829 323557459 935253539 893126730 870490216 373855443 137728161 520429729 842891563 733213903 777449742 333354319 123773871 545270302 708163816 932380663 659232103 539936935 458350598 956773361 806868743 725908238 914723188 191260158 477155868 385341108 20192163 824580522 48347086 566769720 906052858 578994143 164734422 520348193 656184666 469672448 874901916 473456656 627960514 12815012 618733218 38717335 5395271 787046350 713211895 308060221 170215566 764815558 995257356 513025075 659431271 351320896 158393847 61013133 674402533 173527158 791729947 791934395 888296546 459251764 91954689 187939151 674149758 278161891 186340654 976352150 219934861 766731843 107197594 528354215 403754127 581618480 542116130 593590725 879408944 639365479 696786585 549625681 850784720 596771970 559075600 604835098 110046962 44666428 55348682 483510053 569829311 61285584 54878235 498704088 27254170 336281093 976778480 244702575 275676859 22653771 902237371 525199717 283893504 271334391 321975621 330390637 329254452 158574563 825080655 38939164 982607747 562490915 967735879 969783537 269075281 100658812 161750338 428070312 284171364 774027689 21340220 777355530 990386717 73200937 99773471 899028423 674875278 3233250 240099839 587679505 985960722 421708262 410643979 604971692 434492241 671473417 874896135 813797667 451849389 387025073 322250323 630166065 368890391 538254343 515973801 537374337 393062849 711713268 714133988 524267822 681402201 757658485 574991136 428893642 963418449 723818697 575713819 61942889 410238711 388721819 18713758 569406508 851260655 230907566 168594795 221520039 629619155 446148868 348291405 109950247 622139214 214421563 556357613 891280314 13659120 551696644 700026878 255320433 73925582 538825594 733086401 996463396 989553295 653241904 823180433 686463849 15244371 859896487 512184935 669542945 537682069 800348790 254880725 172819460 378178385 623481984 226381556 460949166 558393402 65706086 749450609 50627357 415099512 694936907 359965445 197522937 337758711 200422771 762625034 707208780 872450202 225773029 610260307 778158859 109692642 276712516 661597393 936246304 731571773 424022419 147335563 720809871 437251053 868703992 431730500 727022883 915657057 104879381 639071622 179458171 649876625 428195717 844686707 740862806 906841916 910667989 212730917 327211106 388671613 705557710 231987600 493379654 685551847 187459363 192281707 428435451 449155511 407141255 893173504 680900796 792424322 706647329 38289027 3026603 12867029 50612848 152536935 60340890 252242350 925887175 237201498 189989501 346406968 990776371 332921043 693752407 926217782 715189942 533855358 890341636 757534293 74882778 880921679 457694531 489778143 318875839 284051688 390706690 963160193 380270097 515987877 454612920 176222965 494582283 78431167 814141236 596666216 707014047 644954226 984007535 40781118 475031565 959593667 392706547 834830488 142724083 562890912 614218565 222349646 64940097 175687547 626470582 150341996 410539566 275269272 982691333 302697247 7832316 297984048 381637387 845649951 363969251 560485653 776100027 706528460 187562743 155051275 708954292 781940813 962832958 376903329 818773427 866346559 869167026 904686433 973858446 252511375 756625847 677735412 452819308 284956588 798159814 893650421 332557367 579699329 172418919 640931529 271855137 570105047 554967676 912542966 154607530 875691920 778400955 1111907 305543153 997243047 825279692 468634407 876835196 745110972 349634500 324362148 211783314 768349509 297035393 503355229 611571587 196911830 813318157 871944941 480463635 872628820 310526778 371663096 230607782 474172346 56520688 856148198 562263938 385917624 84090698 774553798 393995961 165814504 468229795 477673732 757663273 148215029 269859757 369570620 316845832 880514367 334123126 508244160 8179804 816475362 353336654 107474875 330117242 349822109 730928978 850538908 376871049 671612404 407232715 126754007 249535517 628138498 334616588 823098388 288034395 899304549 80833230 653118818 272702281 701968163 98645275 514586642 477005657 833342645 329120285 260351401 208256164 517849187 244248806 808080023 677304267 35195851 837724611 362204052 966144820 602584546 532451792 484991382 941323481 856803125 340506524 747552767 252657455 99782567 469072259 965402224 841920586 647204100 850201888 958201401 753252209 639124395 965976417 935348417 35701010 574352978 918265399 47281020 207436945 55837162 908271906 162526414 612905277 737991268 536783545 877720278 85241170 86394084 930978370 224862124 142532039 875877922 314890974 464280189 654179869 173579171 85939687 116386875 736615213 426827169 879299812 961243800 732135000 624870993 290533171 44980779 321946451 43714972 166565447 467605037 280713672 898454629 108840463 629773291 429965851 926430533 650948609 67978581 515716048 366135107 557583822 22593826 714479881 868624731 601003656 845712268 349632369 483787146 985222588 302718169 127877852 989900129 271203177 240535702 589251082 202873066 998787206 251617628 871799491 507519787 240094773 810446486 242546049 624548719 996778592 976545457 395462366 551665633 112868557 230829513 475423649 519216244 779050727 524813400 629425912 564435492 859431968 33407488 593459060 840182689 332793028 347466020 678437315 104195795 680666598 171000198 231010852 886347879 523949143 257980513 366282661 732764812 1999066 51073059 969207364 456173149 340764126 646371901 560194492 879328931 175545300 846721922 927970480 986978538 441878543 253990704 440151670 936533041 427405031 370586231 568155697 637770683 675188116 413288450 532678741 803230142 777898313 212572099 831868359 61154118 628473839 784728602 463625660 61162645 518262282 129299141 848154320 728191904 677170636 755895255 537744603 688155781 351989840 770027427 661596011 998645778 344567080 954093604 168867387 147833113 93590761 184232263 706698649 708393926 414282865 615396908 138910791 980421983 841306821 703943877 281651318 853307314 843137737 581864788 24135249 237613115 773254517 276469525 235983003 395810577 180231124 499661086 463930744 219040750 333820193 988067202 594546893 685765325 641071474 610300027 75166988 123840449 198351268 394162022 262386324 277453420 613275165 806703028 29441218 273902874 783943010 443960868 938505855 280824103 172908083 206057497 563070526 723144926 21257808 352278451 946556336 765848186 307499344 6640411 21688866 912517468 592624931 38709890 775096024 551606477 777499289 422250837 125538411 410643417 432407807 678057997 165460294 16616891 835111202 214432800 884436373 9799430 512665835 564466516 639127147 369105859 666326336 954664964 403950377 887810775 55508240 890423363 462045064 180158703 333779336 947665026 708163561 992782190 329944733 796397934 979895505 158765365 28909746 126448843 126693744 690761990 990044445 323996303 963467552 254555115 864462076 254102678 979352708 162426511 33126915 542069588 536896516 731178153 401180145 474167547 935563873 497272533 659872142 364694872 266984012 711011990 993116557 79410645 599061439 117579613 199658711 546216091 101255713 891342653 650511422 219915287 203655410 968472249 170717073 479644799 656524650 819973062 718368997 89514026 581637302 328770955 399386661 403255784 336864217 664011994 414998985 685068622 694016448 371593174 896632649 726668884 344443138 3525229 539638683 356617991 780208317 847389379 496698268 134518146 195988983 488465473 377137214 975471687 413106730 146189565 680786389 419469042 616205980 377326519 683888464 652888753 613545065 954236749 110449041 417011059 317400666 298750636 55373810 708422869 46113381 897236236 331756454 935431075 458662727 562578247 799630999 405293456 141494238 395116835 690431931 206886420 124504545 553044834 887175014 396716466 550537855 254572991 129938497 255875390 123814580 309432619 602021474 104205947 956703179 593980721 381009200 156181288 595067394 236439718 207047418 887568182 210753410 622579853 598220147 942507597 66273951 860201681 325391096 534260829 419613646 746960747 66681923 583217395 5288052 207366932 97512086 408342816 567869800 457524652 892990198 822689807 137043840 188314886 618855034 925480225 340026474 430276518 446853693 931311925 112224506 488770914 17752662 567077693 80898785 441443480 235374636 31903572 336952089 974604850 708221842 813699896 767518266 918881280 149235697 952382161 678029780 917091293 237813878 228586699 845460355 838462185 419121908 454277702 354067375 236319251 390991025 878398894 211388255 162417879 789418989 675814912 680599970 189365975 453329426 795904433 620328152 618914473 325100807 517091996 585535110 960046618 499421461 340437789 784197984 971274536 842004243 191402777 237544331 514318347 849057937 810768923 950317854 891064837 595188304 643747729 354850658 756462442 279093286 543770952 462055053 391392428 673381184 424317376 961590933 775020292 338535456 460549884 393979105 463762042 994107258 927900859 269593351 130408101 624818650 896934343 565792824 841733453 435301950 170567329 809902544 145123862 75949148 626808701 589512273 397438861 369361147 399428519 264429297 632769139 262369072 852607533 93394695 64546943 820583464 294085716 319478119 597398398 346294919 254000569 350946669 506311673 206149387 710545793 414371444 761344401 20151299 764276238 248045166 926061770 901733920 54688462 441990996 596315810 530857048 640049820 319781809 96379080 77386085 197621534 398985083 522436921 806618272 472442804 686907386 435346431 158878746 110027193 991002886 793049958 488621668 626009567 579660124 874296790 497510444 595018345 293621043 130365581 425126573 545102580 889269694 858132419 429586286 220528234 875214912 950511547 820988443 415885954 584064280 849537443 328414542 82108511 467720104 621596486 311746481 932639125 504714642 555171128 615975448 470097192 927905053 745748548 394501597 322105940 728988590 159791183 757235156 15751516 332739723 889775561 558094698 222477451 341186906 643114135 523451920 922839539 730601572 249220122 569554294 169690957 406271705 245775310 722947038 399097531 284784658 962059448 935828959 82127575 143230516 507344253 554814530 309557273 518451063 937029286 979579764 715160269 575383671 212811641 269725579 251096708 311400041 357949517 271594836 690420092 762181360 361695402 852373519 577535160 864392359 498561762 316988751 649481571 445557053 932971270 651750421 205186690 879101271 795777190 467712252 137380689 777305458 310748796 881757438 138613958 281263698 626160955 941554422 750307961 741839797 509784793 775343662 780231304 506906022 429192405 375582041 426219232 597251202 542861148 973679307 117824080 50362967 885359081 938414872 638369270 833301856 108689487 154240724 531794286 142194587 678593950 857127725 916115544 776813215 705886623 972975296 17872455 861688951 471680563 391772904 494675334 921345332 882555430 897983006 825817768 841289694 260189198 116476939 625443176 727233082 653225560 984982946 701269651 192377795 278345250 396929375 740422711 740126049 194285543 499989820 283664868 60950152 484238252 74992132 760723790 64365951 12375696 160563732 931582271 913226421 40560623 255206532 954384299 419735475 185410420 447955186 703495857 555114519 345792521 296103942 941319433 976091251 778452958 698449174 354734865 2539751 973967984 903307193 477962133 850465060 433525854 976277429 214785126 684722316 664985105 538146078 704658592 60096277 15333476 599079630 180884080 34541883 15439295 730516096 359441312 511495618 407271438 20678680 270165099 430395093 829654459 696852035 544136304 14799886 281970806 758128888 647829525 913159900 463833225 516596046 832597605 792952727 980413588 432181984 923235288 713482320 536596700 239131185 974966882 391206788 831960708 190069309 482644699 603554434 982826838 69111015 100808300 828272579 574656689 954819989 970500290 187110475 447999510 389994422 201131362 453405915 518161490 302997243 908606472 600150184 13441726 464396503 918508278 829412887 351410272 321623696 320475278 210748673 141768384 337476080 273268979 616661737 580005371 875740633 942561803 372090392 510349260 337266104 944843951 241466652 590230463 167781135 515097561 510409970 523601117 479487400 443272483 444153348 651567697 658864715 70259866 771190219 725465615 962942518 588143466 448257377 438060253 404836983 262367094 814944431 517864189 815689248 83724928 652199451 209146250 384127720 526378299 829514864 150057572 515735 654120900 256679668 241978199 969712566 478326169 611083595 376100215 676177561 731220935 425855253 919331559 949447958 587107894 729747700 490283507 595071719 994636946 865136971 738621819 453304273 885461367 868515383 967115257 103475345 700336769 144020159 655266191 284637523 115959060 806805998 137007106 834078420 812463456 138626518 458877611 136902190 421797922 830684804 937513 522075522 345935325 22960820 727849886 232216168 995373405 202174186 879571354 681522117 804186472 7646639 483084272 908418566 693462136 180773092 404571054 405381589 856657572 820227420 584295537 95860220 484757190 672638084 449351626 313662374 344728368 41361877 51785806 268512933 878875462 626507875 887304371 57462055 21691999 240226415 272180674 516475852 369191653 25889958 652876465 915247689 426553850 232160810 597969576 826095083 924133189 38838189 385992292 919292100 950689289 370035927 834506106 677839455 587842007 191270372 190365005 407914714 88050208 775928191 618160936 983731757 688379137 23643230 389925417 831857108 814142640 840578362 38459239 174081332 978232801 56246266 727581255 546793377 256724518 458186255 176546366 370697547 988133218 420319459 307693936 579388199 812236978 149955100 640686963 832449927 505489429 499037697 930844798 650488324 259584862 233648813 118159153 441621221 15944744 418402909 429895629 862801679 244824600 132742035 344072193 950822795 904884570 674863869 554326149 223003978 769294847 922811845 709298003 320741905 360931186 326290834 412683342 303424944 701956532 478539028 955472559 79351430 325910122 734957203 252731741 371013757 532936750 766744841 146110304 67269288 645656426 700151146 154880232 369420268 235246666 134755022 510856472 534571816 844907754 169987144 998067479 2906636 109270778 735043798 304066777 154830236 818237178 408978279 255700369 241580438 423155455 721823952 993479612 406854190 568022195 888688744 508673171 399819112 231650828 928270484 649459256 240059989 645433535 870972751 806598722 446820840 719998930 289160059 943168985 704631427 53245297 986514406 661171354 133672616 424193656 320559626 123610234 916171470 815587700 565733717 250826486 364128776 514182017 640217175 359331677 696683581 681107992 711329566 287475105 118883225 503296501 942083169 763917709 640186895 112000721 725218502 668490929 581932918 497861948 108116479 387769483 324651731 752144525 289661366 529573244 611705611 259962720 544041213 966528930 152315753 956229113 531493464 567280137 745985730 865007225 833574225 490644502 907858112 502636958 594884481 852364200 848162605 431605376 674619930 421223354 339287203 96734790 11125993 809483029 130924277 714765327 994506905 16455619 263678764 972207953 27855608 223625590 287613615 987502555 313765993 31332460 463369950 508232906 838977847 720823178 252437897 517386222 802484987 42579407 370968802 722675861 723413211 294975561 234939201 877049589 876769341 534047369 286081424 856813796 676123248 132712997 495343606 508413485 910579644 997554958 578853177 618607852 530290525 359044580 419494631 873404999 380550023 400914885 837738442 766183618 797711318 893449668 37509411 804833533 436945498 899801282 835983710 778310448 961969572 988470711 74298854 856551373 688761059 276199015 443343716 730126872 197366998 846632683 279032243 718644055 669872209 272956314 307116821 379522214 538942079 937094764 655769064 467190658 727663894 820674961 721879568 649077262 274872740 55036486 793703497 533332665 154085291 241175413 988597581 636049172 715251027 718191322 74021146 412788068 8741687 800106325 662636619 574210209 758006604 409927260 132354470 317475073 757211753 514041673 685350508 568417035 840262753 856637898 75692436 861279568 932004264 456059194 95348290 89985959 684440864 224837338 801545282 418301498 302052846 279616939 871863787 840974045 288007283 722408839 406878342 594130006 605403480 769885561 95564014 594121260 950465224 547227924 693507671 643668749 123819896 561400857 477526821 563743374 680793687 31153855 744070148 671012464 737083417 810645203 683943587 785712626 911003831 280406754 232869783 759895275 90752593 53600204 496947015 465673855 901154889 311199668 121789661 361441699 677203829 292789585 14250226 387858116 801638460 335250849 333725372 692998477 213560263 498617938 910340645 190384312 75277703 498144605 320777021 359151529 342696501 193610072 99021824 349613808 13840851 764875907 72701454 429825233 576040526 311596040 534137899 387226575 529192978 206078629 711689956 913585373 444036730 469698734 207829214 995609242 355789135 702823345 45874046 629809948 308351569 708120885 971634550 98811099 425382174 519124135 355124235 521698357 336603881 146343726 48142153 81994229 551231528 366747101 329025398 754410181 948965389 361391725 798088750 911749621 718405736 940603680 538608623 46234328 99809056 61391728 736599292 525935882 897246842 722821027 924359502 614365181 271189883 846883010 966862261 167143104 237933997 465982564 70405017 524823929 50950077 476864100 879633208 859533320 511641962 591286136 691982672 425967950 347763444 104807482 241434585 245136847 244873330 104127324 713885627 14681386 190501398 543736724 565678617 203695392 144358232 41885765 314401762 394249989 69730237 327428681 825072997 461478745 476460438 716228370 42796378 210149945 44417997 251713897 542301888 93211089 437358997 602474175 301065052 642222348 721817937 511874611 795833928 312889426 529054 520674398 754196617 196864779 721938564 744687589 278031467 664043449 489935997 875559567 333127993 406939231 974483185 850166425 102307051 439658702 457276715 777927896 137804724 118905392 377768372 47966872 379537896 473516151 237692025 460560817 841631566 770724006 234147417 476951668 562670657 994317460 887300901 790688586 216887714 338257399 18894526 460329589 785880869 909635663 603662924 217072756 414184177 564572362 973523219 73108721 514004843 420980058 765467826 784038156 503812609 775444242 258566893 120788260 765732871 461562415 447269167 791499286 394470414 48880272 428037884 335897723 678196310 351359470 583993306 260610541 667891805 734966664 877036441 631963328 545679966 658475976 862026978 852296781 375561708 100844954 49482801 300397259 62009857 938199712 198132135 885364493 699373369 264511094 292284585 802894177 407607880 350847557 660944234 445150415 666750048 790633459 604706510 117763904 733251334 711917917 53743465 815443045 135490987 600829552 437676717 602799578 482784742 717787170 918668743 850529404 252799412 210226474 527450287 77356309 463580031 851446226 807395307 501713329 237857173 413264939 917325136 190040516 317843804 35706629 881279492 181020373 474819632 702653282 365398806 526375383 56135218 904469580 916893182 660264459 506534083 922549818 866712653 597901394 120574270 228564997 9099184 574237263 787704845 140325685 811851254 603485503 423333637 162616668 621273366 333021911 851212594 55730908 840891953 486494848 485963812 5775931 119450010 622342070 835435741 133127243 641470920 370845518 519165613 868989681 826376768 274625101 691544901 910385418 215040804 672408533 280738525 837247918 394994494 541133738 970358921 356578278 348769112 518229314 371240521 656459979 874300198 79478496 549476697 537777511 867132537 811723526 199780641 448507114 777316516 312456373 889554750 647333322 487052426 909736007 15655193 952494143 360988809 932795722 478090597 551892643 415496968 92011428 577561513 664251158 519284407 843738250 848440794 702213690 665161010 786781378 411005571 545297105 409175121 388790515 416303995 671892251 512134759 132125139 711437208 740238191 57475342 626150801 329297101 147271354 892207529 143494615 844808442 116184278 189664746 831794511 985066660 668003390 845922067 106536629 92416532 776547657 865694262 798194792 609086862 262863211 501935764 789539766 90271540 250972915 178347437 885354710 987300662 397323950 662664047 501505117 688793990 89378169 736105743 492961848 507155760 176921383 958059738 172598252 968448949 12662695 561698055 198925030 507584871 756779882 171542699 774669116 492790077 830274449 728685490 776019836 111991603 49233696 444949518 451710271 649938686 547073833 105526278 753486572 975379668 486190937 130724735 896094920 379229582 335405862 715276120 917982458 232999432 745977008 942742459 510441406 426910035 527782850 692435868 456469621 655223505 958717940 751392773 140889496 7693401 759458050 950822564 421660087 109651517 848962125 562608192 72074301 759034034 548274456 647362559 516675130 828645064 904005526 586553861 531272539 878250722 921541624 475419765 967501720 914108024 504604484 488213647 665922698 418093276 541584514 985563951 602950327 861144176 901296330 929751605 839293653 74838057 430976813 712570932 418051 46254644 194228458 110874415 203794984 883658903 473539067 729806487 704238912 552761325 701509105 223455913 448117770 238401281 86577618 233294746 752670491 965413165 745071725 300084706 841146512 412778061 962299555 799014351 810447743 609870697 278944009 7616557 206516951 344343821 606464144 174836572 508452633 747730430 228560888 616137667 811109936 237349005 686734116 288555870 477240806 858208973 65632780 257521448 6776010 856499852 535238310 865551926 878518873 628748607 741372664 833903079 905082325 62216245 678358333 720215361 123617815 860616666 330031070 209866322 393081420 888538090 961160988 460949566 609616652 48045927 380087664 130947116 998740304 938919540 308370146 525657351 681815088 878152 527214115 32947573 20630683 989092690 829961196 186661936 153529807 559505429 467319338 402098550 558278084 599905352 400698838 13406577 718812700 237567434 554674219 555280429 633534630 96070987 238102657 931531853 106036503 576943053 268331938 839890075 835251960 160857066 999431759 185030483 591481549 201475908 26478799 242152832 154583620 712249028 656035525 583248088 56662351 525726711 127166871 266258256 490352735 67268281 945322092 282908248 463219072 580583295 610070034 777453910 583930379 41177843 133802070 889781060 47237872 915103212 463940945 229780325 274748052 161407749 205037760 226192547 181461634 255636755 732649083 998364662 381965270 51770913 390263592 606890781 770560140 190192653 460093786 86644378 475087659 649216593 760221866 783923890 338846575 211083545 772489627 39383461 687567781 340738668 100880485 78407258 514172911 788334516 198081387 428015964 359689025 100152654 594841614 635366394 390174531 57359944 237179056 858714776 252486593 267467045 100302190 966862152 997108800 257475909 78747959 317543832 740034775 538086765 931268331 717732809 101202608 941842858 438514641 92925309 263496741 92330853 54823194 832344360 948504760 428321552 919727394 32537408 141625002 703945316 58909747 101967385 581620985 317217729 411600198 177489689 548515617 675032925 558502279 869449509 710386071 469498008 378427009 675441455 685861865 582254453 462274588 104057 829995790 55713324 229555298 405035586 458595293 831923101 57836535 525308932 431531486 304187113 794979535 741394608 6010977 599106302 917837229 228628655 159764471 365570768 411082461 611683295 626608682 821680492 337682384 535951489 484836229 634956516 961028535 874368660 460371215 718676793 331308133 62297542 770002681 67318259 772715007 321774140 204714330 882472595 1336254 28247295 677077252 705680419 994377115 227458445 698966816 678552378 63328936 601248727 374820104 533742552 656129237 412172493 352449806 582407818 610088304 955984938 792533177 364096428 149591409 124819898 38801538 439131421 965894982 962895174 436722991 991183283 781943065 769006216 579289851 334320888 889648547 302052269 734474396 763123131 704378801 350706151 570730814 73735162 665981725 503365074 624706926 244349013 783097482 542332930 312047161 361775952 41356589 692344948 730252534 896972725 404517739 538562642 887776734 162231354 217200092 11981183 909811723 590094219 166603372 747207247 208831783 765036474 688500950 658692136 424241436 394082614 682335862 438047363 473146864 556440705 956326499 512141586 401540069 581093272 347479202 839666243 420039979 941185925 511393494 661402531 106925432 114886717 211309642 651752600 172116324 392083070 969570350 133704790 592592350 261451458 603234801 413164508 967323664 161611231 74619648 576554903 422357825 407677237 790527673 749995618 230869419 660600434 823309894 638646995 685715110 5862745 840858261 555830523 17917666 184912503 556486386 548295203 777946996 927158381 444460437 923591754 701511046 713835857 413099653 172516763 276980721 746819344 432157023 580524809 488486681 472066471 546997515 128685391 481818619 119411396 252303461 449879639 655251988 530510018 21052452 894184971 743629774 611468550 899683782 682999078 889384495 143515822 129180710 759385860 348806927 908543901 65975474 308232135 566650988 717311488 885931274 497338773 993947964 822485683 701785405 534535597 819675969 180498935 712779587 487176150 810107380 330260390 227055744 678392271 254655078 903157890 85867737 622729502 359499249 904167206 870023435 899536212 552858805 853235005 761483881 413322154 435696300 407355679 588468850 472350910 554806569 91751354 678318945 247389084 237717495 545571019 340494735 920279077 937477991 854574953 362369273 648030619 286801437 934976821 719179592 848041948 990669798 174017002 961831793 402954590 43563467 888034577 603305558 161387018 470651002 668258048 670083736 711010831 416867639 865758093 831096293 862097868 638900159 626821101 392164253 14931766 546047336 387648113 63024792 127788765 554013118 490536564 436047593 627462124 675457260 464900281 123916492 371766672 111323299 774095226 414367680 298406752 846317698 249136249 476919096 312665986 374213734 69980472 116452743 358217760 381596022 54088821 212138258 457465428 6741917 732903927 406266373 399053560 18055477 236424216 323484947 671696765 254645923 139340143 639616964 770424460 372622083 451931774 151160814 590558467 249236654 348781695 207077885 337316468 654727254 226080154 799931779 966079467 726274673 813029181 527348169 13108371 321038497 592494490 277160960 409990842 185427826 199288627 320741322 15443756 395677046 39843088 252982965 467638220 867012140 984607287 748949707 828772465 565865373 837729350 883798557 174431968 909748016 474358154 668708579 543909325 625162305 955074566 314156378 377451809 193797715 23072314 594021657 678361464 724682774 462458904 51854573 910718085 155925616 361880493 31419358 824572766 474897112 150266984 953667096 658678689 313781028 678743076 595170036 546892942 450187254 181084621 586122950 927704131 780191144 946630783 996592237 851240841 617857809 143549971 668153132 200397021 345637087 39458341 66017836 991470455 540883676 416503239 8517372 880436254 742089230 817583476 30148544 641579988 383252483 911085754 735595324 645244685 223128890 927134656 348418187 723001387 153616272 991431792 900951552 187199748 401617088 356478448 706539753 292683415 350029505 401697644 964726200 705115190 242270205 102402798 572735038 258969096 305254673 848463581 27361477 953304007 130666818 174495374 676106904 977986328 479492118 161374683 175378555 496292138 621189155 421172969 971824680 602700738 367319682 779852853 239613565 355648792 383255928 229427546 503849232 901727421 569760523 389523793 461682636 582176862 51498721 2154531 657308077 713375733 837426483 442959495 145827752 75442724 775892531 358152525 605007155 511411289 493666413 731107031 664530134 263825249 281147360 992077546 465464762 54280438 821407483 891356431 727008166 485664397 763841648 601300258 717686428 368509500 475207305 107991429 562752109 21535263 822351528 766561348 235435518 396680965 947311442 175100857 147938715 130673841 196035667 907095306 144227283 925883103 499593197 474366814 993776913 863418812 573860656 630916914 947852266 963183096 609268429 416824414 163598832 550836250 496996322 519307170 497576616 543458720 389968831 338391623 853259693 909569558 53285765 596429850 739275202 603615903 122556060 734415170 225039027 786376139 568832953 999685631 212110573 703039689 82355786 256169642 571732385 372039276 664891963 289674248 837458641 921567150 980903378 517222057 564874674 949869385 687140528 796218826 689543389 775103923 452531072 392173604 767832738 278638290 429790823 182423867 118440682 875909611 55326179 772228178 69410549 957761380 765989421 152067120 231049844 508690560 598009143 53602527 355280553 654738118 650896217 756733693 936245058 574768768 52128671 299318805 848395913 595524248 91442260 649936160 315354956 903088681 111758143 842945905 81692634 344338088 438733986 819860760 555550130 747199101 422181505 815701813 438231782 92702055 899581573 658710622 336520109 60214457 326636802 690626105 577590945 91368441 350330880 521542887 325063625 800154443 151738621 4112478 944116066 29798018 34142817 432184674 933641071 879338384 77764653 615215262 43986202 18904576 79450241 321251376 938703826 609887349 106059616 109612428 507492646 233460849 946203686 924643615 680639392 859712152 487645016 547131291 182023121 867313690 308127217 447686025 991040662 219822419 483555098 811704985 492715022 2946561 709793575 294014656 276331382 317146762 538777039 863549524 22529727 171942382 680834031 183299210 99063148 203195059 292469922 512126313 460712982 19371888 552672726 606548333 600226781 29891942 894402770 936750519 282576834 291559440 249267146 568148301 593951811 961968083 847716705 385444875 365876661 47809644 182809748 664029685 391985046 607472500 727304446 241853567 124090016 534508092 390318716 20834871 736600462 28361858 728105530 404890877 964438777 755631196 581991162 163607840 183710461 333028592 825524495 449921093 854176291 295447315 751261809 473037209 107917824 742847228 991010174 457845294 412187350 125528246 909306115 932309414 423397242 749155645 254054980 722333642 602446815 423491405 438935181 518578458 909640868 773335818 664685268 354339735 588064275 241485244 694963349 210955034 739396004 65933989 731469746 144680418 82894233 729139484 137703942 650801267 289548385 227596600 35692351 952037019 462220543 639905010 626877756 508330248 313395867 871823751 629829860 430982528 79701373 595098843 207566753 853444538 211187966 416289103 673772320 694358939 738544232 165139787 355705069 482093850 446178085 338068446 196540800 653375288 11131986 549562284 456180291 764444459 619300608 501596435 992254261 511477016 750493696 721921733 33334877 926705995 210698065 652103352 211643296 670388804 233429617 73271051 907356882 89749007 471848760 326690506 392539477 940133497 651060390 333237664 823962760 195414283 467684064 210510412 646144786 925970408 548448619 216043071 973287233 357339563 56217999 804638120 107359553 844704620 345836773 858610395 248336915 813309414 165686664 35099135 584885296 314634771 229041278 979981797 777660401 298767480 326883794 529833746 102500207 352898197 718395206 355211999 941367120 481255900 98062247 731958350 412718023 359394681 161966511 744022038 987008896 623896260 169840863 828067155 218794001 174808497 291784227 377213340 461894494 154302656 728101330 263577589 143317683 828756319 37635249 439205130 667136160 453359013 471070292 424817197 695077129 362477603 329244839 264461200 942042933 661068844 385678361 721893008 255218092 216909801 516545934 132949931 696310880 271688591 659126393 127105719 233307594 428989436 607331876 429370489 526172364 4628025 593109639 841855985 323633714 906065058 258977502 945414829 586098890 133472557 829163158 599270195 923182688 270491043 926517438 906797254 602920366 754537330 5479022 953216694 236300127 353528413 119263330 12275805 779426866 549968580 560972879 814018248 579563101 70123715 900453338 880414485 52339490 449854654 353304884 196142916 430699310 964764710 452229377 519168655 911617694 680051217 425998376 414577575 335030763 258912538 328700462 9233099 741093072 778646751 740282048 253198752 834038173 840538566 23576921 322711781 251702522 927374781 936059061 259988690 507853750 349501211 168443144 304475451 620071556 16228804 863367585 14144448 983216623 191374467 890658644 186393709 859344307 1340989 260551951 487824287 395497156 800471967 105568599 494019488 949814472 691187357 182085833 506694915 903171937 634205834 717133308 763828762 367434067 157844729 870322434 820058360 647332879 447423183 160535539 100383041 222155146 698214232 22819506 170713572 59074685 500820201 401538557 560592107 45541004 112912626 938616928 401378409 260275954 809072938 406186897 851148409 149377534 472244450 952592249 782053747 35464868 191747360 260064487 402397643 250632520 44093141 431235526 706901466 212904812 296563268 40714682 393192162 503898269 300631184 74053720 755489084 516375984 479946034 913446577 220503046 595706996 429256886 818910079 462561960 865975685 456532721 252925615 503786780 120349554 897926919 140726865 231760367 357590865 118601280 847800538 532138867 121763782 435301644 608436519 470352098 485464573 858149499 428836154 253369821 716835489 459730649 956569681 617425357 221615110 170872312 954952709 539476847 369331947 308213328 277062733 76379848 556734354 105600299 371112876 90633170 209114445 897450042 204551316 424048840 188380259 618791945 555965544 863126497 785296064 700755924 373988082 570274628 587940482 475055223 606739354 930130833 105348363 305710074 621348883 439035145 424402061 671206806 106354988 924439608 58255974 461091757 991159792 781446128 315151846 521892102 309802311 571862946 825329430 995049075 687006449 710576631 466195268 104296343 444765286 23695979 699296216 606384292 275771074 44344494 45048719 952464182 937598042 382009907 966924368 19149804 204529961 150401644 980583934 876539278 688573330 264563879 461618468 980503322 687704797 476815095 164557319 743221305 409984953 378647666 694674695 437943262 449601772 325585168 720058892 669205690 298650896 582132716 537700265 187475724 43188509 328966183 997942745 561560445 177974329 116460608 916868197 899311158 702979819 396705677 613914632 906368475 325110721 68308644 829268899 92176411 106573017 27406724 352125935 385429760 852063522 600112252 6973495 754833868 171987328 821257028 391055164 205065310 989542239 871449439 914465449 951432346 760522931 66496998 747390869 837517513 34080315 106843395 757653217 705018929 7615376 379542164 786962895 31086762 829394820 271738718 117881416 778519185 771242541 660341542 715709284 247207206 392207472 132332153 827617707 534985591 100944710 979038517 869883224 793365420 750453463 122482390 931111240 955047681 854586174 107875972 723374422 816288265 42695670 580935380 278807762 131603956 176593810 690533790 156271132 278138041 44651798 795543044 164649310 277164648 519400165 811640389 444192317 815672987 29985904 561019084 277698634 255215621 407646621 899860056 705466568 530044087 309553642 468818846 553880726 901303708 166730455 341299122 521796413 89993268 142505705 580558357 440124934 542544490 482211026 166138332 723849357 622563562 248507613 833495802 341972835 996546529 178181729 330611419 643803486 757201073 450374618 535964796 421195859 978853148 475471507 291201479 601080598 690661338 368145627 422064355 782076762 438597375 797618104 688392142 637477102 617835449 576272599 839931552 493561530 401579438 732986051 125430706 951621787 5752322 109095037 112294963 341070570 409486400 590587550 681109368 62975429 556156849 253427827 857340693 573487563 979015927 172383161 469144348 489902785 586711790 86463158 965390882 5434908 507444134 733149563 511584894 39939462 719268980 692786705 278026861 415899194 838928988 313607411 970448800 530930720 129081376 211172564 4977219 573874938 621410364 566930797 548405974 980144503 699267708 314803097 738469663 318900198 455623015 987266752 867393484 496196320 380544260 256497664 482741665 955196880 765148033 922888957 355044022 988501782 138187194 284094680 206428605 125588012 928841862 482414054 975352398 622794152 356572458 724086902 553359070 649280945 842967318 816128989 609588046 623294990 744165945 223643230 903538562 849979134 948723615 124247300 244353117 703701815 804784480 412509710 830502350 876540972 264472413 40447334 374487551 512802514 929290879 381020644 579490009 852927402 270059888 86151803 179393828 734713283 190734771 40057412 428131208 818591139 887640509 18575006 53575416 304183149 837898000 644968917 503979216 250128334 887514424 32736134 345763323 70027610 124665722 764960353 719522088 313849529 416172386 432794365 635669687 59953526 117493169 822038965 423594442 456852143 41050737 240606655 370032214 765144082 230032093 294718172 74677411 250781709 998182539 729548732 737636844 331061704 237888425 528374883 806813744 796180194 457015450 758670336 951889095 205853589 945800463 868326931 136122946 484675989 190113421 53115056 187835319 393635675 737770839 412037923 538719552 279999139 290421226 469052104 693914700 532703085 499413431 922933730 783543538 827564932 377237107 272941382 516058967 145286272 337378030 649231634 55599654 382497660 147944047 318925422 211278664 660264052 87366049 676542363 109591311 885038620 661914021 391393508 145848268 38644653 935810819 791124268 492492910 157946995 22826013 102442679 248545730 782381953 882800036 787870549 846100654 390515613 58774189 833827491 75186644 993800485 196354516 154101392 957067771 283177151 401133473 435389330 594807058 113688555 149006846 245041025 912493897 390560500 320793750 784644956 355139056 878990787 765256999 656022725 450252511 557091411 936193584 275159836 851814950 435774363 770896616 864107006 642111737 690735479 944872073 104675958 267325255 140030480 593718634 961237318 583303149 123186486 433067290 314958688 464211934 23052299 698599589 820175858 672024117 414895184 671807432 401402077 254251392 119518386 902063778 759499008 183975483 706971877 419633764 441368709 856494649 20634889 923678496 401615543 364255844 279865694 392644372 982418901 149910638 649418763 5261894 936014240 90109436 868196059 106489334 3500099 916020532 865344148 452440470 620173199 450752548 22365417 639902501 370765932 74430262 792266695 310180595 247115769 971109986 695476640 376280155 441706405 34999197 996283564 92036092 97165387 206507415 192880205 454556405 191183481 520400771 79726021 121237716 251874494 660035337 250938251 916225244 547141299 125344102 275952588 201285865 152469064 578128250 694651043 549601409 804069649 1764283 776782516 374826548 820278391 266082070 677168274 917185763 672913438 430367881 57280668 334896688 625883488 638190628 176663168 658825971 997981221 804425495 446878208 843738686 706222929 556756814 657409452 802435209 631122246 727363159 633785426 481731288 790557609 334544441 264091196 480846671 63949633 397743210 93510472 170172316 692691969 599739535 948995679 145203114 2953244 948221324 695348976 29957897 66399500 542761988 468690124 904103870 764262713 439561241 584829296 586408820 406237556 437446008 495339407 380380741 977213819 76264087 927152837 356909013 92167060 544149841 871865001 832415596 586109236 678652058 527747831 610716986 803421651 134018630 99659222 330050909 179046906 864085688 227503139 234825163 970980995 913544952 101153006 424810005 134209436 948269864 689397479 375090329 742893954 428047284 616973847 512752374 785514965 630845926 200728525 897878498 987464694 358143424 612863946 759919526 625742576 995722551 780316334 261509127 564361594 567994739 627388236 246851663 468583493 787528441 659276159 734214723 42480897 220265894 913509939 74274828 358723142 828536341 611121271 358482433 207057820 79393163 702375636 63443599 374181950 551816070 883423332 954721079 330676180 272667326 528792924 42498725 543213888 770909744 216773549 585486400 814401960 859351572 338629260 345986049 580537309 258065558 340165922 565119063 274097887 657684376 591787971 379586838 921817415 931870550 727219670 953131782 285284673 749831056 757574780 554979910 304582316 275959723 509253696 619682383 176277376 476130240 767722012 123480104 957106445 706976276 730060144 196582060 405469822 30190456 430382516 319677445 503052848 723444105 525141798 430897159 378679323 712911307 53238940 132122842 537951575 596258242 932928398 485054214 887778608 333416334 231357831 63309240 922258712 486984490 911603957 786487825 150356766 789197070 706390193 579566901 848887525 515113505 302695746 923348051 24553465 686521939 868891859 548118806 255004677 181753282 893242104 844149025 792920422 457577349 550012235 38516654 877695322 178868260 754273230 411212300 343139719 31617178 227819888 822565171 285875128 902653594 348751257 721587379 216091138 730836907 624821180 484156846 924003501 889218200 189726362 338314199 206133430 977758292 980402935 338136039 557895755 659936527 325159638 201611230 597747790 351344099 114698035 437244998 458620538 309127980 455325064 949293303 187220347 624935862 122987124 88286084 488182667 957137986 481686870 813346527 568009428 956624114 776059288 299412903 912871577 515224336 980225944 356072850 152318463 372213199 861285766 375024067 102477935 308056729 124835180 13361066 216399753 815032521 447242322 20094910 10418102 243653840 209759319 345883715 5944457 74260039 750467902 179662993 456504100 51598074 150496772 277455252 613103585 623932778 915633429 581618861 748696373 153110194 950070321 856195835 463080606 968357001 186677554 565046413 428215776 421895816 855323863 475036395 229554894 990514583 291735962 399614642 520417001 765788542 131638257 718094151 628657255 655281975 618376140 304642165 654754618 749716221 476996559 489189840 74546008 487257427 113737265 396257921 542413978 506635973 803009918 908807042 889092376 257883873 89538487 803982970 514608610 431995239 168233814 117856119 286639063 923577368 42842373 748895320 54787381 162062112 47919973 990344717 519779978 324196296 741277796 93334306 297715988 969515806 721499952 659569300 865948648 942922035 102871596 936421882 939201048 135284047 644692443 353398658 330637107 399669149 120631423 893204006 787898693 674114019 30736645 201482378 12319922 768307791 258524370 934157100 329219599 747489701 92266517 34478265 88051028 338093464 979524295 113176662 629705224 687968345 298249327 404628669 849937502 138764651 178247023 460395177 478733453 744936423 481476976 930767147 124425819 906111629 491673944 679185721 999371043 554618839 289230187 468600290 942577502 716103460 785208473 465164397 165004331 358078099 958125607 78104104 203010940 43225243 905057783 165470459 790471124 837859993 912099628 178708439 469568174 411977335 198679743 776248006 311175747 241430697 958349952 246241736 787824615 697831684 183474043 883012201 628494683 723765380 284450120 657619594 405908557 444483387 381192225 282940843 23221880 36689573 944935134 976256764 804565522 610748392 239347825 11750485 62271252 402437330 337628732 571575745 986946603 989783574 369280274 569925867 637180789 22593441 159266750 566857592 135363339 896451469 760830635 417346819 287516329 515886150 986290836 972929203 484566199 34951842 320995464 856552441 627329067 249058391 553471562 60295097 858410028 906823624 256485323 524023538 581387358 620562610 923297875 215790733 981417647 144863376 958547446 226447061 812256942 409269766 79991585 440915213 270651521 849622340 527538757 581850788 833994396 872649011 409514962 366287733 538436243 407933834 725235302 297106710 124244874 352275880 456949757 393726874 491493426 376520012 84254287 932572709 314839491 312073574 27625267 622687554 473520039 921541440 760334941 397121922 237663243 252462401 275257595 640762430 613637238 937764535 810993257 970397148 486116322 875969608 129284054 406323866 311944555 845897192 536093950 308323568 587594587 904043680 805530208 473101188 561134474 669510615 601438201 958589324 879932191 556149100 288482823 629741321 516825490 302275905 309155750 937870679 551660342 895363426 681674404 237486604 163807315 137819701 142184978 742409600 64922367 104863145 952904976 81048136 734610125 792718805 657613667 980466374 530703752 187295422 522220452 351165561 724786468 201705511 346637972 160455115 654078433 149377788 305405870 373048279 3498039 943521952 121809218 565565343 340698766 585437619 212998263 370321366 51730195 319022232 377082572 64093811 753471627 817708603 355539718 655351211 586835465 105634929 238672298 641241660 164391043 280838868 79924577 535194099 746700300 872944718 120157932 125322491 690644440 318063953 42940000 756716793 199428137 318713200 238733283 513111839 143156185 172022098 371238597 472751107 118234270 634749507 171249853 838113860 73779888 438232187 389583563 209723353 317114428 141300459 357963755 885874168 296020739 244847509 333372604 910983069 718079346 442755808 436952087 397140585 708303041 149400494 913055634 210912676 22687130 617248412 391379229 339635850 865596950 265774084 555377020 7834317 200623091 778840366 904687858 797756971 374659844 809580992 842096819 269280973 29113311 785031721 532279872 483647223 353095744 677791585 500543861 920864009 342701082 207861855 230446552 329748150 213295722 130431404 456703726 678490175 723107776 740366899 522107389 283925993 821974930 912286136 813553167 195867707 362060242 220985664 675078374 686140210 823105795 906165404 401611032 943569366 299533107 62420487 117996350 56176487 481991813 513789023 250768388 373627837 62516640 374488011 955864461 447371239 845706649 493277505 435717185 855953873 35687080 915461327 307881604 839326135 361163837 451932940 352733941 760685278 361210810 114957831 460254004 233750593 496028900 238025682 823744238 403768020 534323513 881056701 541689123 47113629 276446778 393002303 891549887 304897846 660791730 508441839 97860778 152600108 908553506 565080241 622747399 285301416 535608813 182613764 417974813 995440970 38149867 530453842 345496011 34355479 102038034 47193875 392601584 483847330 59110005 381758336 45389878 580763739 255750611 163091662 382271725 565535857 885562604 397808314 147274898 477474912 939650271 66486965 233360893 829834039 364933501 490202792 472065304 972064392 634182455 591354195 837601735 169018778 723095721 235719514 269675525 715397600 18581467 649760670 14552368 492702723 362594365 713913695 679858501 400095335 170604279 137469148 596270250 153048990 683998149 772370331 37741194 595204424 700371110 553078892 584260915 630192355 172913695 925225148 806849999 923689960 555063947 275295551 945333172 70861084 697447098 968415614 603668472 499420668 840576366 572211241 834896237 474611831 156278917 517382421 553162245 218117441 530059137 380115960 75392972 416187675 495245245 285499532 806812590 53182441 21261341 389588558 901752809 242326346 594465100 556963161 776829399 45231972 662749012 687360236 774748423 292656837 138731379 899423848 804608140 111587427 326632490 153558884 22830997 145398535 370878040 561471357 312182573 857077496 402167223 437443 415979312 809579729 173961353 544319303 947412077 230904925 20248847 39868163 473954973 692788772 715522345 79604969 297552867 622768173 531021157 11453302 77371147 138471322 261216691 658977830 628650629 865936059 468391376 28283582 790453518 465404429 325002374 892676772 352384746 127215477 295212394 130243468 234357272 29935051 205086706 351883671 253524405 926048328 979056925 889376854 748120326 942722431 64354905 913526975 578785334 670869298 636931297 375848344 121483776 365719273 801118888 812982875 156153645 29310248 237801912 841962898 994320925 450202133 595669999 958458344 210374691 682149196 400699990 958827004 742052384 534927020 294564940 941163829 228582882 127591137 31963525 287015022 27682146 167719547 606595757 539279421 304830390 761424556 838415061 956479824 361437346 891448286 719510491 770480457 543407645 544566727 269196059 9192744 433726534 947060752 608242537 609231531 503377107 919842274 873524839 266616140 198948074 302328586 697361536 288327293 412012038 151135346 349803354 846880851 120218642 544523543 404198604 302095779 63380583 863120627 59087126 348267551 417945061 992958995 688874197 286848601 694594080 34201037 370439014 114874034 606489008 818043663 63380763 808272532 966253380 562855527 904411633 839587006 374592318 885359341 440994804 913925240 273481249 985996615 274127564 473348771 79475941 716344286 461761220 35076649 202205156 88253742 608306466 632034586 767337977 18501606 810774093 510805301 698544076 789481927 441648053 614353609 940116884 763572187 506920055 125277577 955693524 737601756 289725563 360197944 4653922 1472463 407176134 216371159 907465124 525959328 280824285 391276931 733566352 600206825 669725544 935735835 730850671 782166316 361883020 651166991 715785525 182822188 565787588 487511595 977412555 720842143 497030103 896600938 807787726 956346333 257788286 629017353 129052324 51221356 903388173 190830441 48475033 789088893 688770166 795536115 229300701 579093784 668977714 855714005 386047581 522076681 563508201 794086387 446425480 802732979 361960325 639353662 365576361 285399671 76235424 687476581 934559036 361632866 515288123 311257623 43283999 409816037 770421664 54737036 418562327 440207998 896465574 848232292 884731369 990215815 328033521 227678828 737403379 765831955 105095395 354829135 580888842 586553315 951724116 162317738 408460186 441370853 457203001 731665278 344326142 976447932 696695825 333234575 408791506 810196926 868888059 149418762 373718273 776438029 685106453 303426561 116754933 494099550 554807534 241366771 772968973 398048844 845507955 172437 322093634 588465671 543431620 39905835 27370103 3703490 488085005 719180960 83437953 176821785 506312908 103693891 886869269 353015785 721318200 681825385 880649532 133688455 53111097 690691471 438825748 121232375 901537313 65405681 741616663 926867138 389864287 896472351 386341629 618942179 710737380 624911833 961314732 497665904 704599128 587240086 183622598 120102508 700635587 526529841 184059994 317743025 230201227 827052395 270238287 762739968 487147341 185142249 203618299 264691920 39895399 289399036 932051276 187821711 892890454 812162322 341484623 119019658 733839425 467243593 612424031 952731001 887632878 600715145 381414096 823029490 550192390 613344938 1696852 48351602 441724111 589862355 133251119 187688029 554152093 741128515 767548008 848848776 723400721 992184260 854456511 294350111 858310513 332489392 429959546 753243193 690019670 956907208 924187904 883652119 829263573 382232611 477165835 627675234 215466006 598608962 702372410 35999502 879518214 968707295 713304293 728392329 359011680 787311806 35869343 48512996 201843131 336418393 339528547 545133440 455267823 200474126 421444571 449289710 98015675 723708689 479646137 949968552 213204306 846535490 665239508 116383645 864377081 627378921 103868348 74935988 444259846 460806779 83284779 531698281 921059407 410627110 502135667 365045356 967169895 57049463 460202386 81241952 452343799 817602190 65912041 276718597 8362816 303443595 671795448 497011115 173123160 247230939 686345229 234551465 218704733 521509639 790024098 707769596 536974675 86788322 270714733 670782083 914143485 799005950 865420044 283944087 103153020 18799767 944696108 345421978 137378814 74980553 95567067 549585592 894010263 472578289 471368021 911152779 18316430 52636962 740203335 662380916 393825801 626396115 702707076 563282526 600521766 1905166 807089046 713003555 872400691 374722835 568147493 836710855 603437468 290720416 311709531 152109778 426514262 808976135 843046583 50888132 799905829 840371938 358902809 638820370 497594285 832271034 986921676 323553099 31107319 505655838 817949352 26786843 998796473 67469184 846106019 952906486 719462783 149549443 243475306 855664809 871426210 699516934 57435324 647312731 220022108 897086801 868003298 449830834 555584708 47759795 918051577 882269946 406266070 371437102 358664656 690529741 824571521 978215324 797877106 874140766 860209058 411317159 668703184 603369085 460819123 698561252 35049925 671061003 707366181 767572394 37150699 271600952 701873430 76579711 181485074 442911883 30212255 681506979 625218447 614271377 901474409 94610751 110829991 584475258 31663843 518339929 359632819 926418237 193779246 952545753 843248115 553693392 797700710 301955437 731958308 861010363 192350556 791065635 4049212 124375481 620607239 448148273 180585708 232192387 374714833 509516597 910665206 718618230 536902617 811143049 758779537 833402320 344062093 815140524 130925979 30866928 40849000 128249418 288028433 230249923 783441816 387548581 262963576 647740570 908624144 466242500 358930027 807639243 822757481 504595398 610983424 928725544 703159968 70835026 448276758 226939085 444314933 68739419 764609444 861441497 20213016 248643650 349234190 35570110 611769328 684869408 821166661 457298779 106499044 657238408 418479093 406284918 370078666 101219395 991033799 786255266 925960433 474563703 18457683 694000884 257515087 798139913 68799996 79696 19933044 273336353 96317463 93324717 313267358 854085838 890064724 475354889 862150011 144052653 155359786 28584119 209141661 34751727 546464383 764040865 813144708 467285290 941485680 949915021 836597605 313453228 368002364 597242079 462901540 435535219 295721119 25952021 654238222 908894940 117740476 164658501 443193722 103774355 270789942 898798040 657548069 941566139 148025407 475057584 415443382 374256156 675116348 265338684 123095449 635665686 545449964 568337339 913490212 686668202 254040556 456703634 452729390 236956817 404859940 358689876 628502632 239263711 762794307 645661197 207348442 293013549 777245358 356642998 878152408 694855837 932480577 671407928 757889498 977910518 850042174 70538077 411340999 748935533 683266328 216207512 701491133 756357759 617979000 807473375 293198993 713462318 440949793 104946239 859911094 666308102 61984988 101695689 477707796 62581116 125553497 348733501 737904892 523153823 226343401 910596550 808082611 738767637 490919169 803370592 699685090 175132052 623828268 330890787 605091888 363078391 58233242 852332070 55589606 456034919 167621062 614677271 605817883 694232901 521069358 737978220 46161110 564354257 654965785 929474235 312943200 484267654 326369639 456214805 444261102 113214746 155444408 770213836 392464078 639664973 904547092 856487168 671433957 283965827 953013234 122296132 85706507 270014236 686386336 351100768 808447959 903414082 44644675 739192732 446343951 581504452 355941961 988446022 905158933 932374720 666291081 20077533 846923967 590803331 940232586 688713739 606393411 18856680 823244567 395069173 437772257 439921852 255900229 272412037 414799957 197438358 487652077 563328362 118001139 665358181 263125650 77429877 252333642 141153506 589158638 243062090 963749595 685274734 505737659 457161973 509600426 361248921 43231494 238146987 226557251 119010195 611339881 856828028 838076262 809870494 608431375 743735972 466100264 268715700 461846074 855403940 444787286 541665450 754708361 530688286 257913221 994966476 888411983 291194505 319395932 125872015 712274617 308545659 517357308 137244899 575474899 500129576 777882904 377334963 563848106 507229914 764109681 93830114 956505999 107869578 341493037 951179821 310995072 255547448 801642518 43812771 937423270 643046286 251113771 456819392 717826680 297054740 133025512 190016640 542412330 365181778 309951818 913526824 680572966 392098732 741849175 17701197 121884122 582952732 937574229 794014297 691781658 231356371 465938323 372118309 175317528 69504634 354956278 294833625 489590073 340076465 497499181 416916376 10284241 253082187 311172378 278103401 625574839 54440866 163898294 85282979 702276639 630102033 582144531 836539058 187534835 465400284 11109421 634054933 706169757 628658664 927730119 826762795 481501977 906665460 427459224 757437088 122035138 793731977 655572436 187541703 68036657 385473250 400465244 62861858 238208483 964420049 217018191 753401896 617334761 36830575 875802902 131289443 442314823 239458031 541136084 286435515 417011161 545694743 360833823 363476524 325022069 464040101 794077353 309220818 160476125 985230429 385850681 829383014 438673430 399108871 371494646 268054215 36251896 189027755 775441568 903175199 822379423 534905876 295732756 485941503 401691151 268086240 901170370 598261646 887543432 623564902 641144609 173198090 269780479 567698513 371292466 582502964 501070478 977685094 934020759 627028253 321949507 496331353 343664398 238009435 851831270 563883938 730855138 107844536 560896941 427011603 396540037 139916281 231976006 788654788 566661527 495315781 305405220 548709821 681296306 267519550 705815632 792068402 971755988 872603303 875285345 850660500 283732845 139223953 808760536 415873892 52187489 389990182 822923163 523021910 156515752 380180934 184911389 790731155 569898798 196318377 114312294 512893908 775862190 904885442 805578549 803060490 164146847 327330471 498617306 640925690 2774129 429854671 759986766 78207400 690801380 993904700 346045014 394581675 236809449 959058385 549082929 354172688 850895253 380241044 679656959 527354989 846781118 27941092 932500539 331367869 291737438 170937251 79803973 743895303 601320141 925664117 931307131 672127556 933012407 67797622 314127308 707000485 539640137 133928276 419782075 58788031 96235184 653677113 216332265 421877685 281888750 651125472 626715793 301928796 968340511 158353289 952463752 222178240 32783006 592270341 623091070 395921114 45425800 953666133 752599440 75165577 768130401 288033939 68849657 742264512 396905907 897388493 242543052 812509027 601697383 361568237 655980256 323514007 771763839 598334688 573959327 102450177 723565306 238540406 535236222 371739943 767206178 994501908 637482781 426751225 94799413 651818744 821100961 27320616 12968527 95893070 407518156 225583065 561423210 884898934 220407969 975210838 92024705 837233612 775924871 222767934 213190184 568468476 421935701 991845438 736379262 862066676 276712161 206976675 41220976 334442830 571894958 971700580 386369792 919373330 144919045 463296717 500837849 398230481 715762770 411190885 494012889 444624331 96311658 853333258 299640851 62447754 829503044 665806659 76411605 957143907 559444989 950276651 521613526 653898779 529251424 680916295 15743319 532752368 95691418 168715383 914383707 155656253 196016640 594747509 281412619 18235548 52374404 593746234 796337063 699092911 558458401 211271115 260685174 394190685 104327794 457116858 20952039 586698249 972280227 593550640 918810268 9981035 744376304 500222300 248242947 819865809 109765224 454285138 845817072 459231171 997298018 881528849 3666072 915909268 939149203 919138532 349776887 536288409 642739799 202373959 229339697 712523101 163603244 991296546 687234106 413744574 931347089 378054519 345760767 507361732 571737340 602472627 812556142 690290426 501962616 194953478 330234416 430271026 231320995 632272771 888493815 987053089 780786171 572923010 143398767 310933663 533525326 808043460 268723411 843874065 239046836 212499242 517240088 135458008 420672130 637717216 419722607 872982065 921846570 702378484 89742034 543391550 106471810 278145170 193481829 716285003 587101435 312289459 521462496 392342887 185322385 615754488 543075107 647568050 604378179 294676861 290918415 638703579 672297941 794271592 288539520 278695955 17721470 56573821 669356587 490844324 948264984 386334682 48639500 933949957 50487679 1923853 894145225 766451337 415285501 471189542 341325999 549487105 573747941 499205622 475466208 74741302 601589978 577747972 858992832 867583864 240535174 491582837 890549641 299770949 74387891 182960965 748453423 58924295 399599169 4354089 625472013 520602292 110091115 168036709 257900752 825040204 608037704 222562075 303918445 434479317 939495458 880313473 752856173 490446069 402320501 493466894 372489363 485233436 171469458 590869003 206532808 565527467 485571104 778327258 298298752 974199605 849724538 113722581 487356789 240887800 544645215 203872791 457485595 194347699 552776192 21720817 758727096 704025574 858012931 583425257 451258398 454564660 253980639 825381433 892561955 20503075 295523196 502343505 631785304 56345205 722734445 787380272 810496618 547304687 117664503 139061422 917614874 480387022 568137228 123490706 335461993 154533687 45931717 3992163 687685404 503266929 632243166 311234001 954127091 608393371 601626016 662016534 882489379 243169623 231641977 45807416 230800313 630476720 613336096 778420542 726166886 940435492 886475614 941795328 871541855 919914957 401597280 108938227 248439876 699661700 576747299 777218279 713329996 226670625 715673894 980643438 278402915 188101575 23912021 647493501 292731930 549729666 746419644 656002154 913411591 679132455 795106292 21661482 273452534 758320361 389491716 401562396 116518658 623941806 226577916 48068349 776082464 518664367 433803742 794426126 201878442 126245662 382039969 167306410 970916755 695178194 792136446 413244256 407146088 914993479 612631927 586147776 588150516 341257908 112608637 782605614 337137558 509258591 909239614 375783828 701799011 370767433 568819287 338786322 598321021 777491482 91464288 337619243 874625582 729319939 309403203 516691036 227254567 624639940 938678593 678005685 521673111 604292957 934420218 205729591 776384429 199600780 116174840 805953573 311714150 439416357 287890500 420407178 186183546 496079247 432959106 815893811 516913595 353698567 954045233 477019719 203458712 963733356 363070349 603714212 228807512 885424255 859598337 32293100 590431773 398275215 186970183 395573132 341575246 55309651 983838419 503249644 544396187 297672607 457113921 13867900 105241352 898311380 94283972 219919141 594601402 376238865 835391794 389034051 461374756 565760891 992791896 321709509 983980566 976563305 240908569 738590801 840574166 166901449 872872286 524467223 996596333 276021596 327266406 548415137 748829027 443336034 84651719 742312668 174719312 657750478 24452825 508283837 592444204 704594940 727970627 495480986 55484610 970035535 346861743 932007138 443080479 48447094 133333194 667863189 700461740 802927728 329266250 628900885 741939861 944223428 308804882 532705299 69575025 661534974 63325270 696599766 29181710 771945717 60991181 926165626 698878929 954212171 698355160 297381876 865701122 474586730 18589333 965263819 725626338 998177307 748906442 603896747 893061280 438419862 361897583 326901089 949098429 734629010 282224469 292622899 532372559 630766371 611073638 148137581 396932113 383969627 485460748 111082707 796129741 227017062 861288369 108078883 849964256 107409650 79625941 55371258 347076560 342111507 735432333 10804101 615215447 445282332 756142978 335804770 836450001 917199841 237993675 433493028 372125247 146798906 43435306 310800866 324870270 309811542 239177346 328586832 485413331 623589461 906789506 521519206 335661056 950769844 442382411 276609949 130730097 36892719 621712540 728116426 347603750 262374691 91013139 304112051 968757744 352807593 584788506 633313834 878277103 267370737 631936143 777241057 593778806 982186508 369499806 502189521 354090560 294520738 543465775 433847232 823487772 718558993 568482904 81816172 710821303 785827399 341585357 357484427 710142077 725104094 616807830 404116033 682273727 16647891 514405647 627573682 388295862 993114056 121436960 305145229 815041093 18172772 871204593 309895441 482982985 283585256 613323067 952962669 383254111 316565549 490475966 397258895 345842091 303349548 236455543 125091345 501231243 877960982 973753930 955653360 330826897 829948620 181991797 993061786 322861568 7608391 691656794 424913357 270058590 704033831 77836417 416796502 1303043 938341766 162966374 590117544 981965084 268009430 153693560 81409681 787459022 712598364 397289103 677204633 560441065 183784557 147019533 9236700 585990836 205948127 544259612 1404443 283229689 574628075 967061521 190463771 334659619 571387453 388203834 173057001 58013336 475280184 986067942 154846477 935485571 320328822 790446066 822577223 336020024 184310969 573504257 579906851 772865638 663368925 592197361 1028875 909195511 841085960 376934918 98714955 381521226 507450918 265655956 78401228 867303650 805247520 531644281 3786534 66695578 984696185 229467124 976485419 118602411 131363240 940326090 950661615 74563957 888187451 862848912 206543737 946989490 902656441 49923436 148452663 731732369 29300516 333397737 886540584 210368533 737536744 856457079 219159119 271403081 924481151 653497290 310256370 112163274 89845578 240328641 975446103 235214956 280354934 474548379 126361820 630136645 186577524 175498366 624138057 386661040 339412227 603410076 236945980 464033833 803363086 876286677 326076011 649822319 202781816 289033965 380640148 147227683 668373395 474536064 418781702 513815419 502641313 84733873 125494467 272155315 415862702 95184574 884423989 409343397 668489366 460497271 10353343 678195607 611256204 164275048 188682811 877757310 138703615 742550523 17992770 145150027 201757284 216084355 812466013 110287678 505329904 418086591 706260449 886115205 677167508 281104081 603729652 202767164 972319707 280127623 630399158 547106361 618129315 554401042 785616548 291662829 617862691 429433865 235876609 334131498 877556220 806485410 72172817 899619961 422352114 220348247 619719206 64647577 310164604 873474627 223010213 138322579 862338634 22259928 452617600 99255682 171586604 75899611 559888314 426255799 741524267 777760449 907841987 184461863 673142939 639467519 291303005 463075239 395473977 182305881 894802817 799444936 712051268 437473437 883996192 820507441 593441392 232888988 712176075 2862353 674678822 211896929 279676497 661230787 831337621 83365963 234176936 829212196 590491120 819981633 274217560 71232151 845319808 905714963 132892756 873035658 842687163 425701992 865895164 808618751 631593368 618730540 858065570 346412627 629882094 676053381 859989822 752825021 905256654 26427038 184032719 235998113 193550119 833202325 603618390 549442456 252855973 685917722 946377247 734517107 991027623 540596238 500710886 774614288 151695944 463103819 535468350 863756668 829564362 726085209 675718143 289561512 882501206 637342102 459688063 306153235 433413089 38677466 986500526 329793877 565834210 771842805 109892927 762582542 503051969 377232991 402931426 396095485 199160766 161742880 286484871 878742539 445785129 154978425 576385269 15399883 69158198 585367258 656164756 743979126 343022166 303881867 598806386 801429520 758474093 492448518 734732569 449159024 898638501 539995668 593004815 619175257 597380188 282890700 320477451 630039676 855382251 312009203 491706252 975655487 21770923 91291060 862867603 550473434 621082687 843578815 159428052 198249084 902144043 790501371 367475975 780511492 381107051 951221788 32108256 111991863 521988146 556466322 594776898 459778422 815667482 208401425 638257535 298275855 790857134 254886612 229082409 928807779 80168882 989174744 894616764 526210729 216884119 695933636 354877346 768857912 16619947 121613414 612524185 90377149 635683920 783883501 975360037 511798202 104324597 458178679 298799731 150065831 229194209 415817897 990521767 207600281 251433954 796937776 862796755 759549694 909840894 176274050 691922523 262513821 287028695 544105198 791773084 987718140 751260727 588987882 436842763 988394147 966430646 583475796 193025458 976844198 960931464 648374655 431892013 406412703 53274265 702702827 7794312 771841020 145280228 62564497 125139592 925421273 124983315 12386827 440581496 398975760 50398921 535143733 610113761 747073307 174988832 519963450 873921849 600481327 183046769 672603131 159418850 590971119 528406162 293181064 468090526 754312146 432659077 510687613 943723513 115920444 10210523 308669479 329447210 332469508 598824281 147197896 209612742 264363517 591520564 24077351 576102819 726892008 434268517 953712149 774561928 166877548 22457187 912163111 366810180 539664407 696654450 882846531 277313098 320025912 761579017 823024817 479242254 704708334 135540365 152613619 10258355 673147467 98615363 311752413 389824734 145723846 43215612 556186786 872022504 267916319 143059657 742302511 274004707 337594331 638881139 573877125 955569154 492084915 773990448 71913506 806758762 192180919 985518438 569881461 496165995 840415973 703315154 298514369 439148552 426625726 945546691 943815144 943760310 653295078 263833736 695739888 393992037 829611247 777825198 350543806 593714863 82021934 510749906 179260409 623759416 974027119 729143328 401409046 808594876 467345210 836935332 235590344 690200686 746246198 595336632 839310945 244853298 706144614 263243770 143081473 948767174 624887081 409994611 208666787 110167662 375612604 399383125 31156343 561376433 242156767 912663000 597968487 444020742 519988515 856528398 894104784 886977704 215106233 808378294 378018688 93848583 296078133 588835755 126085506 179613154 633529566 802454909 501927548 458833196 397679179 358515735 696738443 689886971 721910867 395690651 296612979 850497005 435964817 399423346 885818402 615202621 594362640 384705803 55590700 869415871 186910255 772793043 362911101 219759371 961841070 542436485 292463107 190189243 986247479 536475198 788955516 257298821 582522524 464402278 501626342 317073809 594637876 441081709 736972114 882036621 148452370 59458063 3869426 294385859 1672746 144516975 302166956 876138216 26976042 757876426 563281031 769657494 492652158 881102571 497064072 993715985 613314799 604553652 611448347 240971526 590863785 156144975 612417006 12715345 747488000 225776824 283770564 725235218 727969598 414971092 402989770 782342894 319923351 236374952 741984112 460822632 879228173 21392367 659272264 513682092 944723016 657957094 63173832 447546660 122208617 405546828 154569126 128794425 190706325 743213827 188852070 546240426 8636789 568346601 989409808 697192016 993236727 623407167 741860160 888890404 595931648 648711364 730740743 322872435 472782350 302722441 303881083 105749477 888971125 277390870 116403686 924049269 735694253 681536890 117484741 593083542 545878505 926363763 213613601 717920476 475174389 887392265 939891447 69565053 132081436 862985989 688895521 825810827 76919821 548596738 470132780 877771028 214080596 114455205 189490191 362438543 136168853 451962342 533705988 583566057 650633372 761150511 799087759 631544077 739518 431367580 909133662 49457173 18668716 357354606 329833851 70898950 983046399 185556978 82248630 506936301 992951165 69023979 976978097 192027812 639136408 74617606 32011622 170078007 687742597 888515850 646994014 290924996 619193482 668502293 649355509 812897963 332393276 692732990 317451996 143581894 997465150 666693988 345099553 95824505 557038124 562319551 910897322 670448000 459355919 830799592 713174111 761358487 959766069 706346132 293285907 209383983 712493403 732789468 203298430 992992460 840557677 675279028 748257 889558817 277360485 582715892 521293546 543035693 129919938 582413713 525070062 627894979 330608584 257271545 67845138 562945632 333115880 912276838 561625694 775644491 785300644 386934940 716021519 36171543 14605557 75764173 317002150 331267532 942007442 314433280 733202503 680259408 495747847 813674189 728962969 235099284 13217862 978982580 119309756 125032585 172575437 572439625 497953991 954195354 875562741 935672908 725734056 782477720 484160400 522118899 408198148 79425388 64491916 476698774 357796641 527162999 424684018 493497447 538178308 695867753 541301162 216598912 142112744 455627373 834458927 821784457 793329466 581815772 304835189 916478411 945946780 152355929 66002044 223294715 546134528 319628435 719755383 490713500 204010572 96123550 607535212 295459998 690093968 194742938 512048139 893104062 991041802 329164728 64943721 345596715 939622346 36353187 112127747 390732798 240760338 448787197 784477945 933975353 997820662 273101555 619118965 206446670 703774831 823400600 395087963 177314484 923068012 978337065 471851610 245344756 328915240 490305095 15987617 684357667 90267045 877792235 882761439 567082261 749020578 784310863 304424092 207740196 279537884 578014893 65465097 534227902 462357938 339618674 363404986 576254742 75872799 110436474 16829422 312520878 4298674 131432479 145345163 144872501 686412461 218134374 291287757 148059208 670341878 863516247 889901230 164395524 565790696 641177920 929997700 368783547 711603991 991229680 910575591 159976855 415049908 332797048 403407551 231784698 697724341 739302315 729511421 551624628 606751991 560964195 480008894 537076713 42677862 798408472 342583428 695845180 762686832 668152596 537374295 64729500 829204633 662052960 514824833 529674784 746787379 361754199 591518304 258538911 632294788 510416266 667118738 36876662 209203892 489673556 289826657 62939258 516110946 680557206 465425798 972046691 199477928 79232754 88727947 584039405 925167349 344193471 277646417 858906235 391227094 42930669 550382213 444896223 293386846 635475613 682810750 726035649 882356359 705853536 459930237 94145300 432330530 328002240 45161065 153864626 300256461 69317565 923874204 452196658 857991294 314335882 245415079 684197119 581503627 579650550 500998463 127373414 374375392 865901728 713446137 974854355 859314272 185860209 777868515 746312109 225277895 565609367 780581887 970729416 173913804 415900460 622034411 703923671 813479483 965262446 727512783 231544822 239892194 903850419 588259535 132321686 382116131 141065302 260544593 412583133 907419835 212751896 148789172 524230991 260858186 966988886 698894072 759688923 723100811 688526854 408449873 225364972 785710722 180176190 693518386 383127302 330464257 671109284 57722011 652755051 637889934 530128584 730026746 782354560 478683453 655306327 218823682 86687773 115364882 689925130 524323476 140334870 803267064 168253406 331759484 416973795 132276475 294792090 866249487 420837334 384366861 285897698 752559371 250121105 700884021 360415010 238721148 877686495 43081651 606003910 426078747 292329023 379956051 916595256 851874090 930131433 780341354 793726179 884919783 373646003 118994243 218276263 102313155 279767265 766243778 600119662 768440251 145978795 905307630 360430525 785754423 339639292 328187449 334501844 839514362 331237904 603454120 320706050 314728417 622196592 900012926 633939634 944144527 586587977 569800383 434551268 933962892 541985317 964502780 136255417 15669987 907098889 965738848 892706797 497977604 824449225 754554 473211769 892453884 966433544 252166774 888573948 814592765 915740581 444991525 157480828 955135831 9890776 996061822 712415470 721760087 267158374 842852880 34499483 421390640 615049232 904616424 834314298 124746901 688758799 347548208 445046117 611784654 647451145 718752148 190490410 57862931 847928427 599659958 794765374 955972141 963725239 551568241 903337410 647672210 75761248 4001136 199367036 648473214 521796460 208734498 59278025 71234317 518889151 612904800 957522097 11764100 426716242 819506787 837320532 884147999 129391359 537963040 380097013 613819816 584039627 711194083 805439917 853068479 396724067 255675786 725785921 660445065 673595340 566618629 76934622 96452261 687840971 169442320 537969487 671469921 405848158 45956513 407164549 609240772 945187022 916245541 568114776 309668745 587893743 197027370 884370056 863383823 267694046 558245300 546944502 241423632 119004549 311193317 975018854 148019552 298414179 37935005 177785600 352575441 342134845 828947751 531064604 715235549 926049884 414113645 154794672 41212357 696433136 283179598 973399776 119465708 961996210 116721727 446784876 599178836 275348345 121389316 361620558 300071258 447443378 89860957 365116816 527716368 862811979 884885795 707625575 347646848 249839676 712621712 406185951 331714985 657914943 819939489 587692606 684871879 537375444 423132433 324203860 913899069 742495132 675522965 39073514 355021419 72803438 741357073 216862013 685540681 972519280 421355150 845464831 663647852 867776825 601768466 737785847 22516972 931351715 554217450 819675439 790015108 92998245 312288405 728412643 667057633 778462371 366493022 182418319 257897293 304503932 943691823 659537413 871874261 667584437 285844151 267778423 685774018 463199101 788808989 893928269 84472393 8165633 920041477 802847522 314689827 110220796 42401928 354730500 933670607 447980501 378029661 72277279 861316579 365729784 222824446 867238212 293335900 526195390 154259917 15730081 563888593 699622280 745681840 800409587 905121342 995225072 958953641 205847007 610612795 16110085 871140526 627453184 921851859 783515960 788482531 949932799 197787834 737491088 327983114 888822754 917690506 88629678 474452724 240150169 601343154 177382121 769538790 414746470 809676864 497615246 322570838 618019538 341062733 390091343 482677936 751306585 597373322 529966704 830010774 908717966 662809730 286220736 660622355 380186756 886592547 385731998 923691327 754261217 153737847 237860649 755103155 490719342 33074040 614616445 836458006 884318385 679292287 354964903 170633975 479711140 676572215 208532005 587478576 490977831 54538821 689684398 836804413 308136082 591272437 623253511 166531462 888265701 127045404 431996441 159104122 449656218 503713051 634118469 931433163 710834521 800120308 408053573 372488675 983008804 126241809 792903113 403950464 770879719 407322295 219395881 453680023 870177704 271837792 747978586 624033549 753134588 67085394 984637509 698039338 6680690 311131331 202152969 67377323 116597161 178956810 693011002 385115628 300159503 498897604 884721303 562059406 708590792 998985158 535486491 517959734 129435630 951033748 276072541 952012499 759769282 199358617 793705531 933441565 538384635 563527623 911580820 768881567 446459808 983219120 87857257 773133665 427290652 893441668 293829550 723874543 999700510 841852390 259885677 292777957 508431623 336346230 35469895 175896498 611067431 520210152 4132203 470949259 525350660 206962560 99828782 604314222 213745339 675359856 821537028 201591228 116990114 148237504 382758474 52838673 176129343 359430563 593078778 675469358 629559442 553950228 526787542 91011024 429536618 126382326 337961571 606037127 301418993 521452701 440625655 687464679 735421289 627851153 741220290 757770229 683403376 475972142 468650793 785800340 757388822 377635136 478685573 677192973 911651797 312263002 232532738 961031795 906755942 606190007 493111573 232801351 102017696 119879514 338390013 860789317 266277504 339679539 922027480 261947955 794118580 972847493 986932046 866048225 646211108 929612321 770167762 546296256 934964331 548902509 194716031 194195356 492508897 923532249 486223578 334884842 725340190 7630605 630044522 408038867 10644389 554687366 686471436 124434217 546771623 899478043 81107842 973084324 790330396 211198844 895400004 73650005 706045727 860589631 605063764 871944931 641625294 66662136 542346848 540684421 790439631 889581957 747695363 632575897 21283891 923007197 20853354 760970085 595481476 682741627 173349198 103075908 751582793 874621026 714052230 315756531 458715838 820775460 320044087 415380961 214355936 52780523 237607821 417006824 956494412 449622422 90092908 679849065 482642693 817736121 694223189 440312253 72172366 700838757 117074645 603204126 234953458 357069576 759675108 531971869 190602432 304998196 540387886 820703456 580591539 259544107 558374034 8534790 347874977 464303519 839250437 774309627 804107851 190945721 469372420 812000731 721027013 296496289 85163327 167572657 361769677 664819273 245537178 843310316 521151067 707771837 572166422 493373163 23230018 119197029 906777050 602451642 859498099 297219766 742506118 191028921 931897604 83741597 576707602 256197799 55555286 362497796 362745169 359168253 591174193 354580988 18734707 367750540 869215105 617075423 586405736 735955529 499515364 192257174 611116964 967272821 171623503 286665914 783326870 858601468 93309129 69752219 479987052 223791521 788970516 697650222 134621980 943564167 808217969 240198701 831735423 969265396 245734104 614318393 914436236 430652624 269344157 530059700 955889170 89951405 388204449 724164669 999609499 601948689 55190841 580013907 992161811 968227788 370532833 137858268 13163782 836753199 976526498 936841090 417246251 638995926 819930896 351221869 121946172 273844531 518543332 347945368 296982579 761413583 112239635 185233497 594375753 733541600 974363785 209954322 785605518 584636378 721219267 550783430 856246245 421387671 812842730 584664868 572019673 856101677 163760658 151209553 456411544 800749898 571337276 300924978 686399556 526296211 30082450 984614719 695458288 990046153 494207501 144897206 182150277 571011131 787763731 832402049 527238391 307171751 935772642 989624816 545249610 144985760 723049085 119004649 135952220 539820639 328501062 543317962 879760464 48852370 730220298 351872646 8755076 969345002 34529696 356555823 836913910 225973811 749378557 465035313 27555932 82438116 996157393 214747136 124996774 228919780 340976169 387095851 433276825 885189397 312592387 578645881 384463148 688972421 34479099 514683655 540270507 44763324 122039974 781382634 149551030 823092516 835501691 915975914 49237791 479443370 308179500 693685382 833418427 258831365 513429193 978898583 830146738 522611027 364535697 858284674 857130565 820711997 294082675 937007971 271592927 913898794 206372242 676908856 653815100 418530662 946882209 829071162 186524703 535663582 405093087 667330808 317574283 581013326 285505014 470146354 825577613 600416878 384963998 777131127 428672386 856043442 450667728 420023367 58486271 470356629 455714394 138196260 301994056 827169365 435409696 329257819 408977794 279939907 105937927 653205764 63779459 91731754 882860292 345307945 701402695 658646865 239617464 2860508 278908630 305818477 590045512 599189251 367551314 548043287 356596907 627154071 467216293 484752302 537208069 890476366 558091034 656270561 192459371 44103708 367517001 854886024 748156852 641281879 567912465 910287674 667103961 704424114 275367662 962468204 145364201 951480749 733912220 434113597 726642614 731036519 901947981 261062165 170315873 136135635 152875670 723145401 61642281 640594899 66048285 245309569 261824016 630921912 878908904 42287038 857248237 925396778 114609888 925761314 394601239 673406505 917215119 948517946 504733129 111232485 627611730 712975461 854888870 749567435 387909648 414577027 489892327 824586544 275372579 992124085 830991565 553736137 434225906 85643267 405185770 494128420 582472448 963244470 484173084 945431046 275606722 780951831 850165439 916361010 510588403 946745338 805702394 604802872 898696228 72361134 527767534 550858226 536982974 625253930 945190415 954594396 779652350 567796758 793157930 597319693 685039210 837181667 889465935 956388978 951707348 476821523 968082939 75562060 807597854 761063023 280894520 269643957 261052842 373959117 113057700 352285847 576669243 603015420 279870827 793678808 956900395 924689663 604534138 229393044 805766948 859660084 159069519 84807243 8233991 882360180 270742924 358895572 778095801 718206604 126542985 978089921 575962129 25939282 675344240 278719866 473105694 1827389 718458654 625712117 559720838 222919083 862986699 43956006 253187916 926041926 454022714 256506079 145561016 447717649 190596948 536372092 812487139 563272514 279205148 409690172 725350526 58256211 950421845 48592087 59523416 63717164 748250261 958148872 560941228 334356237 336739661 123642206 219937403 655925931 972851256 847474238 127712580 631501279 260453461 826521071 923741043 314707835 28605680 349353637 390705214 110512662 863033357 931239828 527698565 468917543 933715508 580349330 507748703 223555884 255695776 720167607 25580903 920584944 591009396 577094587 108074313 12776232 824969873 724926229 295160539 338970309 42382666 697122404 905207272 942879041 722596076 302075562 143312200 959415375 870187230 967108475 505794603 462026445 488516123 769209503 661317775 273622485 637964258 5041097 662109412 337826178 249287596 956632429 459517709 537171819 538332637 240678452 602426076 512015030 853524183 530293471 475119873 172524042 78628471 596919182 932779667 860946932 298484020 71362995 442882211 304635836 67416749 350086403 491026754 856752398 648762080 991519785 759426651 654682894 794904640 276445943 864093207 54564507 482553875 59608493 927009816 934016161 425483463 67010845 333354443 783401449 824795015 318961807 168513146 881660844 625262119 599704806 77856612 240902718 546400978 517346664 408185014 902342029 654876989 995299491 894675996 584708218 84073644 476512226 228913334 851545589 684884775 415085336 296469501 233090738 526176366 985969826 596945092 72611586 851566504 308223420 124455877 419045158 531921008 579311105 650483165 137527915 984529970 19747464 597330394 249635274 46477436 368916793 717338412 575802776 730820022 657575215 70411328 319495401 570777484 246033616 186811254 863168889 827897607 821155692 209664100 555752254 666498363 63038191 972358802 508131726 982737019 870092506 679653929 817661426 312509327 10517731 148926999 726812342 700483086 697021362 393925166 365460689 975966515 51797468 824924240 714891476 498321915 706491883 465176972 838960298 101535647 809777471 952778906 390499927 550311386 493506934 714098427 407976972 874612534 831632979 965573906 327947895 190216795 634602830 335152756 684595761 885220170 392811107 494249206 631365413 704231895 780503533 39450439 860552401 984736751 478824770 829946105 121650287 38497909 567240223 389703405 323463411 424072398 382976528 526793721 629215648 462346005 245398591 415133246 957305795 219893928 795351919 27190109 155867113 364813299 897629161 113594939 197238591 699677815 228684794 273915492 800119651 491731013 423066612 917573865 487793433 995206956 226523955 870061714 894614048 192126302 93435334 80190531 274390109 886218953 68138070 998729268 916553921 271442296 746027277 739566938 256564881 889145309 998642759 476030744 11980899 831695988 440433607 878860033 563207727 758725319 224627473 140147193 356950808 741588178 273762797 722271714 233124169 38865756 433323396 297045095 608023059 372393665 898870567 52754142 941666557 949187641 416801233 12490610 49435659 303384475 659651671 949190524 771902121 309138535 788252880 180064359 60117010 853835786 753316244 163012720 461166327 365623191 65905016 629153701 607804162 128259623 405966151 707407951 86948556 995282311 683356076 145630919 423571788 661644500 523191859 531645304 609560407 603208368 233578098 141540534 469288696 924648364 769720723 706386516 152983403 687541526 177724588 711101771 491264724 681625070 914403015 963846991 962641361 622796647 166052764 705337865 912779636 585080958 889983536 928613024 51400772 977100018 604472705 169536814 479431772 29893687 810596378 590108347 921155318 821158462 213828542 683043971 150471375 355485774 662224511 547901901 378336807 12218170 522180496 74554273 57678033 409895985 751631411 915099344 623950606 226939301 489563822 916870963 530762719 951887819 549036287 438770214 896756699 807482128 984684019 767952172 155304545 661120812 559369467 633737896 412900450 2627197 633959456 584293545 223966375 342077825 18655957 493118016 463069450 346085709 399997281 548283998 527423422 124514521 705716391 534626944 76795296 404019745 242685963 4951209 161917179 978183169 466019953 961992976 514969510 132030180 830163279 771265480 390680301 301681893 425757044 688347021 221025758 130596673 20948801 460625703 857824039 277006368 661541113 369654118 7717493 91535069 388415033 839447312 271785282 36734581 288007869 528557739 606851045 1973504 510030961 136439187 605303651 873847892 250225921 6909074 512005540 418029409 970641824 499027415 539014409 200080211 853177417 652664038 906922948 203480366 585215180 373959883 267044058 140565334 997708221 229853621 159983027 888922841 687211160 273296892 509888248 995417217 424660616 376565983 432350787 950619578 772003367 2792514 645721639 864360259 604492101 116372932 147098496 539076476 756163040 49500827 88299155 13396935 499769078 97582568 757963669 523205341 43663173 357251751 283845475 730343860 899664673 48629459 881016980 162484819 352525027 752566859 46305482 306471436 873987568 141712923 253779464 353741825 958468585 85336422 877975391 376505806 540206134 507489609 243329617 512301006 247901167 75655156 537156453 38444229 196816933 348550774 308999131 541446484 894795107 448956186 498686543 989469257 945407341 333271577 626900296 422591524 773902231 470198972 927695696 121402907 44969433 124390600 210569349 360074904 552406438 173348405 240589718 515348503 396209924 527827236 344134171 459704154 175967132 34838420 55370532 27495511 357052830 676768288 691483490 151734369 453184807 100415280 240601789 968334796 873733358 182840291 369387018 610588098 484980328 635515838 89874047 845065775 76092451 859121990 221629885 800583869 232158198 578083458 541492172 61842201 339330710 460252729 536419090 530148430 785251264 862363275 609797366 280638659 428666441 509747763 164613641 149727358 221821992 852349993 38722700 398421045 819838519 8917795 384561391 183153924 855681950 515079839 493524456 274656025 51741412 179541288 285397579 672364427 384680111 265273137 828875826 226812727 395596620 822233100 158097654 50898259 560266391 876144864 135102789 996796273 300524550 826409543 84912002 760002567 995940258 53137178 223355415 707279216 886993116 218029444 473298643 847559765 854345427 579976825 156275510 982804847 832794540 422563651 622809017 68569682 476332914 547723691 358370613 292796685 695617143 63175490 497359570 525918060 686357492 658302296 137613689 474165436 598683204 370015697 571896113 497557984 592296576 306721537 47987696 576978646 760716768 173969202 912956610 602789025 700841496 138594085 714550437 53133208 594811800 843985675 159726114 57263082 568981735 648848956 357478289 815701727 793764426 297118188 432949602 755131222 552077551 519597575 242208739 434365491 920037874 936512394 915108641 560831136 364913366 924547970 997711831 106279773 621762742 85449636 408616681 564837488 536325425 518055054 418212411 143640778 310076903 15925847 986419068 613180114 321676324 267842124 657640693 418769110 554640108 617610477 89859197 172908550 700753845 194423378 641417962 672629930 833824984 61586357 892210954 495988442 727159070 389041282 823691755 877771298 465587369 80380243 530380849 802830169 126805804 112736776 811910728 420739619 415281301 497946521 618668128 911182195 172637068 653919789 298494354 935766967 917204878 208716766 632288404 396830572 287194318 262325005 717116055 520697983 138989520 805304385 106244562 489141442 619176655 689809543 780225814 900207998 549674717 288906890 581434492 545803160 171305733 733652122 605862583 892159232 308348171 908559929 202718980 659543048 82933351 821377128 913490712 574788681 259171681 9161681 897639055 521915601 797594217 672316965 994508231 525298065 13063976 193381004 159565699 542642317 517763838 70124246 931132501 317503484 240577021 233510218 911127604 927291354 518641879 300103117 910474113 523506017 431798821 83178604 515357531 684889278 290031116 863073476 260801328 870717243 965911669 194396273 344757229 280165632 5567612 709513392 26032187 282757687 647017555 153497664 764906662 697924800 911079733 89001533 901501679 972157842 436644812 258599768 248489574 920251620 643288245 131398817 105716598 356928615 527414336 188542452 306989108 257939709 443605881 294307590 66337079 706692137 427252761 220699443 283669140 461161393 881567367 759333140 175242305 340822345 967406226 391760555 291867550 514890532 529091438 292301847 180219110 440083784 965569774 115265603 725359123 805034499 575163037 570616021 407553113 316939905 553152170 569149292 153159300 951308359 981551174 402687154 839251859 247179767 284316045 756113095 17011038 945655404 612225751 402207566 62308955 497699666 391444064 570496201 726514115 314086409 895240718 351898473 973218255 321092170 658157223 139659814 848615736 721605029 352137536 794083406 699649758 381994412 129314414 140311309 914627128 149755918 159921860 371521946 130181549 982974991 426617316 370849258 251093615 176850017 898114124 608851466 296950440 460884445 130849231 14089623 800140486 217825471 6713961 291511453 289084263 692783957 110767196 879017729 412924815 126635428 65622236 927713677 600757254 923784051 629349681 621067574 505209565 181464310 156217154 508144642 73957253 147667139 436811188 677238196 837432388 102893034 461726143 330749506 772914355 93435664 306270374 746995733 50552940 735088912 975085989 500635433 661702390 479784742 63557207 544547195 584037075 518655500 68974622 578930258 50728415 304868960 701833611 292309595 800161048 266258316 505753188 257891095 679947336 394553537 628744952 171357457 982819352 261804032 206436892 525555693 850893500 959579258 193676108 704339725 253992476 256588473 277951339 439933524 403880195 744124074 299756341 527722902 945043039 668241197 82903249 179985180 61006787 8414037 208221733 4326309 836487379 691051838 329553733 872742904 829780602 595012897 126693365 731960236 139203745 230613419 325947750 492529675 345204840 298941379 161814417 699825491 64646781 368617701 313285693 120067792 652948853 538563053 306559328 38775662 463515311 420515571 322096884 594397315 288346789 463111491 404291472 792045349 153360171 305573855 356203138 217761575 966441706 650130441 523788581 600264251 696117902 679389253 528489345 950101994 67839802 764570317 39937098 233736633 364584005 815327275 144269354 218434560 86408003 310079605 721747241 262275462 208428564 150727726 265983469 756798474 814058011 842605838 89172258 818272327 655177811 493490816 486047936 217377274 624828587 233697621 37526772 876346020 699861980 512757164 892299315 582074876 749832869 546155272 323412281 321015024 143302738 328728484 436112802 357228316 713388108 862056693 163977547 38600814 436652271 312942718 815160954 355433643 233540098 198168080 907033291 700475356 557648170 96998853 103742259 378766644 251809642 626632834 552650865 932061225 599118212 863648000 597775914 781958848 402853060 280697686 306914269 232625784 963439382 607922703 337900941 725620592 986807561 372855368 344173042 631951118 427488702 173778368 497535464 266223594 900520250 194535347 919011496 257589448 817386276 854082298 273137566 891918297 30918803 435226369 980758873 409116369 753549272 402065707 573620513 832056420 551357669 700434274 188833136 495671153 249095856 650550300 880664621 941889158 848150969 857155029 791610413 986625136 670087504 416563994 915302649 150935474 658073927 173350195 584663400 164152272 220492778 279432887 795424639 878007464 285294599 261947823 239332522 402755654 207869679 947764932 581913755 274380972 692888048 557351793 785087597 132330026 128465295 602599567 145280424 637145960 450506069 53940155 88401381 283264143 377299398 281121572 326152810 956165863 288834339 282591089 310841261 238507745 731435061 642031857 132888453 269480082 906483501 379650969 822737220 707256411 557951446 109824699 640104458 33544272 704309930 593254901 180434719 65425210 425629319 939556797 910447750 661407600 215433250 274160015 929467299 672701715 909914006 748507617 857627437 184331277 138726297 863549223 474016773 995732533 718539032 466663553 561624282 31670608 686060392 954992601 96240137 279169031 856502660 616064708 557349961 641587174 857161680 992422074 702127421 702324428 109796601 525001836 805086559 395690526 478521932 261360501 866963614 780658351 497509595 657491688 380423028 533795550 87058005 471274783 580349372 199770916 746360654 28542373 446759614 275810088 165187996 656306637 991991173 960863151 182101682 93093011 886557246 55547444 611716431 776494667 630996424 683766946 350229305 748226506 922136675 644222961 294450027 30127240 252628825 486659663 249528052 522132385 732162656 807106278 594521015 896431151 549882133 712611497 678138225 338223596 147902402 681329168 395176466 62983391 62012059 780074896 650023461 291687020 948452554 729095857 89877811 358175474 496516271 212655455 772562953 364578873 881336742 980261051 455721475 26303530 906686625 964662819 124626740 858660789 703438648 887405824 512406940 13017909 616371693 247328365 522375431 922320980 7510197 696904414 775575261 448179906 733039598 212468231 125231440 490711260 671212042 150785044 822539160 830379563 131347107 209352256 522444529 303541751 898832804 558199570 340030381 387241916 188470439 183540930 616854510 448639522 927928141 606821921 658890865 238125091 21686173 454055368 399311562 4621527 390822189 838884912 50180850 957467901 389402 528425430 922870820 634038405 539966235 929462672 512140224 259435046 904056116 300398432 125482067 717892499 250023616 295512754 8260510 978272186 369458944 296740789 187313261 913144165 493125008 583155075 358500107 134644435 703808070 210999423 359695104 483225242 212473663 655788231 303901544 104710182 88619640 551834479 734268537 728931192 944384884 774393295 901364050 569778217 79126114 799337092 314083523 461546568 291386204 738846502 796617974 737059228 179794814 592426469 650267564 694863591 427129357 506898633 584462243 253743487 605539090 263131353 497490117 588953483 808675408 800974068 3782516 30204124 669892490 913413245 887936001 991849093 791933805 81416043 152415515 557047699 478882150 158174025 195050812 106440896 929246842 888378295 964451382 528217311 679392207 952356021 883939276 507540406 503372451 596172478 367033460 797716039 452577899 458659392 389407388 105980570 716117123 746514276 163341649 644182915 975963677 881023019 976818305 739244947 119035710 822521945 30939952 470427440 955109417 397426254 114351362 895517170 703204452 340903563 101583176 567149410 292634414 454881256 286182369 919103421 27629268 288612048 554195248 959933576 760254579 738261721 851615273 905543389 26560734 934590344 904201416 443483848 28711478 506862413 76651523 763902497 164729878 716667969 28298368 423432232 517124291 904253685 443612292 687218882 50679127 827896179 232906048 171748297 21500698 386699300 384417836 702302800 286799921 179401771 265549494 349518620 749466521 850241862 570204245 663830508 150391367 794606013 128407726 911543876 541926136 433951137 991097979 776234557 649707599 61623993 724074662 79471944 178999568 712845495 208795633 843878120 720920350 820152388 764101839 166902199 27037243 746490194 114709167 623224742 233962150 569679822 394994910 820023450 554966628 405516593 219219176 673985681 601066718 419578626 313434686 467952096 540157341 851296149 942975393 949478987 805855439 998441285 814764169 845849657 78998674 492749740 69556214 302525510 168630764 907746912 534835477 53038555 42417406 387300470 180058726 714066869 201892146 149385637 287320167 355544491 724826590 363456101 723385438 715715001 323570552 653345694 714306746 379042019 554132964 961105498 887517967 208305718 651398107 448121154 110367185 272794415 326660699 950036730 888278978 177795505 514049550 979404236 93981853 414223556 725518665 565520879 767126639 974623446 512839820 402996928 745431974 452950932 282266945 591620804 54277680 166317337 353557621 543573927 197551991 497025432 398471776 261324602 274577838 470101738 675143014 213580031 538427676 537249729 728149951 271917354 575871129 680917419 941864539 175170319 711935225 265101236 165440187 771011644 562480646 643381466 617315077 121780954 263331238 693349020 229122191 647341361 633228849 585786645 703534356 402629631 612562700 17986852 62951462 632537261 847942247 518308768 82142569 333719524 669861870 754345033 457926928 904578839 958723452 936461885 903296563 734413270 124711621 296908608 325772300 7111981 504572610 891397646 445210256 191086783 457621941 758717402 383571190 236192893 321853607 638746556 230222918 81340957 263123430 194844852 969155468 493227523 504321188 503571115 610345819 838887908 883994264 574906282 63417567 174354642 453696475 179233670 415499491 781832937 401715695 70314355 999749277 972544967 47876072 122987882 961403468 492017790 774401272 123091084 59119756 659708575 468508024 735387183 876501501 185839045 683335122 620335211 752398961 320390522 353313310 287287807 226073864 369875150 601098618 346000162 154468135 654199629 781898847 78664680 447314317 672104898 557038505 52137772 425255864 507341525 243642829 543878017 796620621 583451880 659156133 820739078 66414473 458139673 449728133 150085568 357319369 61818767 110660531 174742254 710532157 322954907 224364459 641524262 385383289 726750698 706597842 849374931 636984637 878992118 544496802 161964053 241040662 256205367 333216894 475048084 193527761 72710545 679215982 691438931 167886872 548652945 338984976 476069790 842499694 427562837 484877709 555675886 64335716 195483407 255242042 831637626 258397655 870531010 880686979 195975322 971655681 621211212 922292739 745668714 450063011 901538235 75593660 139156231 286122052 286429182 853335952 638273978 838477590 765232958 39173136 200886089 808090689 434124605 280376965 941966855 469684279 619437138 28774295 929515544 632017842 127180695 270456678 81498915 447901757 25613585 572866546 206144592 784317452 334936142 501782233 923783555 243032648 478970797 383515202 133196960 247601203 34339767 990544580 240474715 934105110 918966856 547004589 267567454 207157490 218791412 673376023 765034639 533668714 502898983 492648358 987114051 199754065 949400327 396702322 901577420 940490417 542792966 112970225 371878409 331454753 342736943 441583864 355587685 707276687 544475461 711993399 810138154 651709789 562060835 779256543 269401503 203663208 810521554 832951837 213410791 35681278 873841002 412933473 175069572 641670235 576849609 977655720 116283432 128054663 273635428 110993869 459312174 674367276 737431891 273087116 455185989 662851104 640849754 489391859 939981424 321639709 653310542 774382581 467774930 661250120 364810166 39234058 782648645 236769437 667426745 385217582 139416515 534797408 663885953 513071856 913072483 877883324 560961015 554445562 331571892 692857807 991948542 740218877 3898069 779538325 675078154 574320812 344961442 675350090 502289029 974684958 615124197 210365883 870173480 470978137 921146269 417915149 916169584 388602802 835187624 176981643 92475540 115030013 77721545 363778605 117329083 100928002 568061294 574638359 327006538 550896706 463912251 568396244 949303359 500967062 595356530 295962203 618212510 278175137 707665866 52842304 681111698 315428360 52731273 134708869 666256226 920632750 893593440 572973795 947232240 211859932 650635120 122379279 421533619 279711570 793462690 889443267 956606182 153500524 465436094 895256874 300550995 693195757 154287989 121847526 206172334 28091859 919937958 694320840 260966331 403101212 341170276 364570756 861767482 564572570 476892972 660910188 963808017 783037003 397662086 625697083 268027453 182812262 102983795 133263635 886653971 888480738 845072661 889836480 484417750 859668056 533318147 326313767 918043610 115350222 35530720 384959267 51905526 65139345 759239600 961022077 837643720 566364990 944133405 519729468 78478792 187811475 680264261 739589005 470577009 834976592 672265932 196249479 40222848 123054010 362158243 452876160 493721165 535170495 345349957 872001369 737278628 385389907 253461500 549326515 257372861 642845877 493608558 79549778 136024659 204989055 410164803 892284579 256862687 240572182 93760732 725863215 244876953 296156951 575649087 831856836 427525068 246076015 577324315 728798826 173674097 26793499 996852266 594136422 682704066 996384685 633099842 847260373 326174450 978673380 631767269 602356749 809477154 637984970 700123177 243639020 909688782 622009706 763952131 761636274 285375732 934427113 934840620 815145062 157401449 126547612 315630793 853943506 179736972 72226363 326716991 891189648 659199371 923182679 109755981 236724561 372516826 346075189 655951194 685812323 648398922 615375642 345534354 815874114 94152170 556248339 443682804 15767718 485405640 555771099 940114071 806225648 574637136 524556925 13474139 371252906 924732464 363923381 665981560 79520305 326107707 431797036 552900980 575799740 385283548 869146678 887154186 440807600 244371660 430517134 138944355 953538834 166179207 118539073 52292096 447262144 551659877 960886004 857627864 529018349 969380322 281201884 662784213 249604166 810157383 397066152 325394744 566370127 518088398 683308286 473035535 549817823 78394464 892970763 957160632 772818799 565860548 985874421 371514419 409152798 154968427 984691811 627145379 564951311 525245956 694022508 782480052 71884345 953597429 913966268 553148519 830341215 753739033 736840713 527860324 600638114 446731054 738402777 527507150 768898976 520665179 809533321 724719943 537215594 222534550 659231779 443167475 78247901 336309601 508563405 20163514 524252530 680972074 415294160 242513002 868918684 602554382 885725558 216639012 41670801 903983858 885259781 706395504 369695921 144897565 133179265 150974531 640526213 92286064 616009346 876960878 123716415 260098659 61703980 862895124 456057919 174019897 152269605 692921049 776541740 858462879 806292320 757854644 410029195 709497630 734595066 597116706 414901028 525824350 632077142 233340946 935525594 506282792 621526133 987701750 934507816 611544391 436045642 251344357 530226625 840397500 974475777 949846189 97686939 633444516 53527028 952805329 275198744 124731701 200429667 55579078 412918854 656435280 740360679 278941285 4658338 413697133 264157139 158702032 875684934 107106570 726161122 890964475 306463787 866020840 619351801 606416845 42019478 86929121 368626785 625559040 736853031 667060754 65460130 145032955 828207704 71835063 875530348 251383805 212182337 468904944 89212358 29373378 375880179 814511401 46239678 820316164 159245118 359608741 63178259 814011617 619362484 524720864 510081063 307888164 674972845 578818119 565476915 233896456 869253122 969264161 826638900 625243803 26296815 695494968 431062516 840046383 900613426 908441737 783111299 768443667 447883420 544234029 758665929 573660816 93795992 572624650 404184343 729090267 680093625 630896765 192015476 102822426 159615582 532361824 25471404 923339788 58413117 781647926 366439273 499809793 685515213 572851669 72569044 660187715 520607726 921473145 506376102 230335932 15734021 974092363 20949401 928430465 233144013 386910329 495290833 307546944 311017763 73852630 675879901 326411734 325340100 724835875 425042666 669293928 159216051 694886925 89768199 745995513 754015018 141242087 525867184 253419296 96289859 801337837 256304715 325953157 247675433 252587793 137519589 904768718 830832557 81950228 454291516 475111191 83849078 396212129 903654666 273886976 764923506 743205351 897882260 293820286 736537493 237600234 4390103 396780254 169556773 395458701 122941802 230003682 401874664 300565490 204485357 742357020 921533454 428962461 682270832 153821411 788705156 694905070 669442391 708710336 343060447 404281408 563366660 952634803 709829890 419015372 503177920 485883206 783400358 541036501 74155910 278519023 670430655 29941276 872243131 627557864 461012573 725228867 749712210 322625232 351836265 58620580 66921382 205423618 980928717 796263222 287934817 271472912 657248001 218186567 874621109 296904087 482161508 164894472 866362976 829247339 899275437 370172769 327387236 660326684 100004578 190247989 712514419 626778573 555790615 541606295 548845558 800279408 895728300 915601448 656160974 438314857 519272925 731658986 738450312 159272816 152824919 473859970 11212479 712662906 787027500 848821053 386001974 471001561 631261896 113816582 18198447 910813295 428168619 310237845 526796817 912426876 122856494 405078914 31339568 67358154 64762447 380279655 39993200 861892382 641972747 452372474 947215290 737917724 342543983 39391446 59247734 511026076 246524261 928871656 84493239 563170076 390337060 565070859 90642772 499070631 612475543 137027437 767400106 561042933 806521669 978261979 873760143 180115055 89207278 426862659 251942864 394721839 948037907 579317668 716564110 254413444 362235452 43071775 637015055 960894683 796188425 977551111 905737972 498025200 909540985 625066207 240349387 369968673 547819364 839091118 309702537 642883562 860933998 74351215 994809997 8591071 882243661 465879016 635529203 875787379 340600810 871026947 131721847 10104322 104332835 381669097 926023642 846338655 557421419 290275779 309339925 515382466 556331526 465714180 259223951 831982307 20789827 298141275 262916534 490840158 497864530 543050938 261638732 786463929 398262068 205313291 274593441 35110310 47676561 77096619 641760802 97829653 714718659 181856680 438688860 307060537 462952900 760172743 710298572 276999081 875039175 597248956 358784451 117934968 994261665 243522242 19908985 467374060 785262690 53560196 252258912 70091187 642312669 65916165 230669452 563124518 100243087 107290191 670216508 334577910 66220134 979672614 203731350 575623833 285717931 48069598 512273740 329711105 584804549 408676502 552133305 851620366 92924480 639029284 392655558 45273493 988715280 458097008 349949126 456858820 729314966 96073834 414573266 936018929 363510380 644140179 885334223 662442638 148400048 637574397 169832162 536311800 779852789 494297586 331432486 537873552 857019407 285306164 300825227 582543280 398682112 435156561 844253631 659361698 964447043 798802194 9127344 422432207 762862804 333837236 327350390 250926358 278787543 986151323 61052498 176814476 530102435 785062654 112389820 442188490 89387653 213935350 334866528 290212003 633368258 149520497 73718790 132619237 244560951 133678408 821011717 222366893 997642939 938347661 281441953 524426002 700705639 801991402 415024417 33015557 694454909 895549960 975669272 185142931 507979170 457897982 370459310 928725369 369416025 911952447 782099855 114502732 7323265 548252001 358604918 886222221 184615799 114808694 961667175 959459050 851361979 205518021 997338297 425547170 815680172 718266805 469703904 905222714 759836963 969346445 33332937 642537911 723641055 878767815 640416098 938035794 760595818 812719201 244328251 36351205 601227008 84003708 546576039 287196550 370747083 190331772 92665536 77519811 674022732 118213330 245978580 478768658 778927295 456395941 59132433 136500707 968707296 468774340 84704845 265600329 88136226 243390174 133736645 827263388 403120053 330720543 52355954 820971214 641123923 496796936 672406555 119634993 235373839 171288716 52851161 82321214 934243696 786668807 486396668 444377489 394691974 884401865 194332326 938272210 95302854 446046503 8516690 465509175 838506277 455568249 814297327 429571747 326532273 693080576 750035289 691945716 23309896 170425908 405314455 48974334 892390394 749331298 192753923 892170467 895504772 43652149 870889757 231336892 881623459 219087367 174674691 561652620 433595041 508248057 413488674 984641455 165067005 531041239 93927533 265029257 665409008 698100438 340971448 738713226 372277116 273864388 337816574 616553656 89368977 206894226 662156028 785849447 901108058 916702103 257359159 60588930 302334664 191580224 692044956 476958486 258779836 390794644 311690376 283301855 554435501 594341461 457904660 957023619 11270563 234534014 700215175 942121489 43098801 308442069 658801743 620313866 903821281 192563433 673041178 986860014 297762871 191239960 559199429 823366632 400116305 858371352 448629088 833257345 286750671 421165278 521652228 388853340 600392794 584872322 573562860 686856632 262466502 962970131 272580954 738876864 762480279 542741532 480280458 717668607 267960932 194065086 549980317 286714018 771019252 477193524 841799329 758874759 13801433 298769088 40535458 721846953 852492873 663739832 939913952 528746187 894786630 502333955 134408552 482734855 166941275 883942902 167748792 399414217 478775988 724811560 531078148 386369912 815966373 469949828 53552970 959395126 904438825 337433665 602895107 114372158 753756259 476503695 447995291 915093262 433489528 670895143 432410865 72621499 700748178 736548634 400357011 70576482 171570879 943593164 15080284 641641364 680452909 738561340 884301418 72757327 192872690 988460289 763877979 243826496 467809843 988189265 821459314 722615140 305101915 132651331 149622956 549141866 224740068 497862225 680824876 706016308 39204429 386553632 111514448 598187361 269832285 760390623 646350785 978493332 14498774 593368656 484556883 929018096 397078742 163114369 951387805 328385923 130620704 579481957 338893589 662509041 278566670 96063322 912784258 46692239 450315686 108600066 275596422 200188722 579299119 714933435 32108392 456135708 21506112 950697785 498010987 561068295 740623000 15299122 181400210 249925166 671792110 595087871 418724410 295683941 243331925 204997970 960168054 802293377 652407877 351097021 526978687 83732883 109743114 62158276 144516747 216360548 3253142 849275030 416147491 705204644 349047925 508511240 220791595 786829705 920523573 863379476 324847724 943357356 412586034 578105098 894882347 592980050 604529021 480582114 768879455 399439866 584690138 993945416 997722372 776490773 81127062 90690507 612750911 797727083 939122771 499590040 768921732 264071079 547218673 627482814 73809189 365157421 54182199 749018376 747744929 353901429 236776223 265990745 893978945 817535311 84736182 589645093 180904644 31320594 466092402 676067262 645066982 144610444 935201966 863507105 415950985 997569129 310458925 16372978 88013148 421727560 945768571 514966439 274854411 387649348 905381842 580766325 243626684 489635275 20269909 818189245 749265446 189217395 49799059 275153611 469020277 824897386 157200787 447338719 709802030 757556335 427240859 810718067 697712231 526054965 332020312 687852488 326646974 437323176 284568966 823399266 399348681 716397001 394308936 388846901 518165879 459456286 193942017 957490402 722908618 55108532 215842839 547487750 384289947 713627772 883167299 412071535 70690957 352940714 880188580 942174555 627368807 832240184 774030561 647794369 962666172 236572338 819062153 817837075 838171275 370927534 197492254 856789260 699890973 399411885 629096838 696180798 445980801 31300808 45902108 634454276 591364516 49643647 387674088 993013071 12089891 226658019 914284946 669728371 562493225 421706540 215329179 821991977 345055490 90262400 638929547 119983271 212834795 505854479 681429798 668287493 710445973 770533092 47542867 126315260 169980343 345804591 648577033 641101402 638539992 920222165 311502902 252940739 89251841 736699107 975611954 2887923 403510041 414934602 920439736 791939501 145571216 376456218 216645399 330246974 153086979 977119082 397435923 281551245 927012677 576634284 131005476 923971758 826327837 98588819 20065550 83987835 284339322 331452648 117397023 785538278 159831506 116174767 604762277 274856501 178972342 778716954 348502275 470631684 193175940 412043923 171744609 893393094 152974579 683723222 866267601 599337895 943718372 854983279 882899117 871105966 519564110 158352716 78820774 171277681 638338944 939615034 224901316 635374952 918776761 725491018 203890059 492454463 609744545 722767088 863999353 906646276 605425144 628867070 455878269 806134105 297219417 133976171 928263756 136798128 981108895 31157446 150219169 705280791 422489200 271514940 774989746 292233635 430034912 690361789 699875025 425616967 796310553 621719776 557363194 250840150 817378408 217677266 782841496 894297845 78934567 321837893 837990550 440542631 520072108 348865775 284364170 447230680 938689228 614117288 859400180 812218228 992122334 153891248 426930690 184152331 335101530 829261745 506540537 120762416 675166375 84561144 924162450 576740429 519835519 684812489 850784831 833204793 753826905 921760150 402994028 460160241 892929257 509617951 31185982 223344863 767173821 992439422 754715455 487200947 397985847 604935754 15625484 214668212 270218404 125424413 712641410 27973620 567370488 514954294 787350347 425427699 266817895 655124685 946578829 741532181 832582922 296758762 809485736 935406894 342587676 939186564 361816831 330432113 460709260 218763598 840285721 396149065 93909600 650011772 712758339 296764909 975185101 577112407 908866454 69194391 934509629 470315028 285369209 705289442 177874969 584843999 699739101 61518137 772831347 673247639 537499829 172422176 743269350 488969441 175644032 275593529 924830562 155877954 712136304 827110806 676456396 440083389 158872604 771628456 963161693 396967955 135583082 293417949 571334907 435873787 376200245 214530996 640759628 667139193 678817931 839078837 597274601 460656691 847731688 803972637 46126948 73982517 573165570 464983925 99792314 739358263 778520613 757733283 589484490 951706970 820389709 895736866 552968862 285222555 315494187 228122732 816534220 850702835 895715369 687559041 845328841 729943125 48240906 468753870 987440706 486494493 62163087 711152891 160557050 845381219 748625241 213155389 298170006 618230572 167191482 116605208 302027422 668873069 769240366 107013415 863737077 799851908 52870181 545765562 762889415 304192754 79204705 166562799 519409107 983034996 686779202 665096823 318177059 774380956 282172859 15192382 21932985 652686394 647933112 899465115 717682772 654951189 898465525 278129681 661566214 341529110 883277239 17647181 390596366 663533595 851207732 942172276 376695824 626244616 606022307 133503630 750513371 176769617 746655825 278235638 520659862 281950031 477067151 818909606 773814001 397750371 822280825 52818699 409301892 851654176 17516770 528910975 337514479 644889919 435019749 12405684 942043931 797997762 108225948 697608315 24629321 212954211 243731250 485730325 275652864 627934972 414250049 208016136 988971778 61628695 271183483 805693076 265564836 999887014 763256916 689013971 517254679 489808183 603375353 978790827 585205980 910824436 398867522 161342376 311262482 372731873 792250873 28355642 777453933 936504564 393753507 645693335 717846146 537925119 239043410 300368293 447868894 640899633 5263116 522045625 106708104 295099316 348579238 673827488 232357132 357775390 923336293 703605308 994655994 243613889 344455023 380528853 351104292 659065126 465531338 701375136 391203091 371594222 827681920 2320436 775738727 123290632 360131712 340683794 612788776 630026869 431817445 976684129 346048968 101604861 359564342 301223486 711614413 626627609 846123355 282821697 245014651 199368333 87682007 717437448 668269940 522649012 197633975 240837009 189980196 737566519 735259741 117465836 162540811 299543534 973340675 699274627 652255798 919033048 553912603 216400725 651327189 548287538 643747750 853140216 148787425 325255156 138861132 589514891 465701940 400409501 282843240 861150019 939368392 596176820 420470637 145591618 231590239 113526028 636912232 132458824 760694198 87541742 596944361 116431377 365773261 739030906 201408197 35282372 702977135 931763003 106681234 767445429 587504519 867800244 395264805 989741403 688851875 914722383 340306653 40136145 476680215 805895303 629115175 66598821 20018307 293147990 47647684 762951030 598375606 712715433 588395471 923467871 874819607 250611002 224631984 965861397 740971381 389479185 983727554 604608348 30441640 223186660 525170293 484465976 841098402 747377974 759402263 444827039 406746882 151353064 101112838 531857095 845366763 363943820 267519451 686400074 387941607 739164868 40868097 775464401 483896180 825343247 62877321 277248507 813421703 256120868 904693895 861493273 568182925 650845339 223766768 960404990 424270628 624507021 275485578 424928545 299242818 593397391 173151112 724412389 857894300 334354607 907350022 834460266 447213467 714567797 806263843 523742181 779804013 645733123 132619347 184802975 766776507 898295584 546337324 300489001 662866051 909378495 518426392 763097424 415014002 45172094 639269450 753810718 888201616 690548008 169401275 670080350 790373619 820875763 713256519 296423028 826318395 932122211 156928246 379498522 33648673 131971465 667380775 633393279 42218184 21069468 280443114 623183760 298364979 433994375 230389662 760123580 647672425 338709762 375831261 536746720 592829404 681989041 413863176 586141606 578466038 937154854 813529869 747280870 774324194 878737322 194761956 276857057 682047100 950017262 570827517 315305540 858117353 4292749 157933425 544533708 464991967 688031316 967972107 195930636 268171470 826037014 210406738 977391232 508139362 926537969 310126729 638389567 959605255 511828516 193195993 894641514 3674251 281401778 697946605 368323731 296152765 18394368 651461896 548294847 108938703 162482333 860499230 332607997 29599602 63672796 45717895 862031135 778054368 715683255 870376777 296126265 561357392 718819766 193749300 980648755 695414091 942918653 831700615 944769438 451490960 518280244 910040306 393304212 743905459 812648650 181557222 751578223 318554544 877556810 80690471 829816850 316679868 201988460 468801150 544775376 847671961 111963296 282045525 730257896 853765284 546694918 374624648 687063768 631099818 648362292 505592539 704971766 457130827 134833145 499814957 485116669 425705121 463532677 347691968 395165881 28341696 272566606 839053188 372032472 714072763 97494537 783646442 499258035 75893523 863774475 364575396 346952050 225312133 474494245 865952956 871811389 238703807 811989022 833339879 718003400 178621041 589725659 690000585 650407259 738543167 295145304 502937036 177608635 448688861 613957110 516034283 570431242 638257786 105972075 953077427 821335319 478512663 57418908 980397493 178545803 613151732 96201536 850667842 540515672 603605480 337835465 797443225 232756591 376022626 996529917 225102527 845234414 566966814 574846288 871357167 221217464 406370644 781040837 731709639 347187999 149380542 706412025 664448073 853031037 511049089 883780186 152860574 319238634 119471779 682417443 736412625 120633057 470364773 558637298 931678726 419858109 787345227 456951643 899852201 866143487 556035346 451413012 673361313 449801590 118684228 361901396 998599949 593492503 524947007 100327034 480718441 764583638 560665194 206375481 129927676 17322197 798903930 583227826 228889885 980010444 720040745 753915233 592836764 363170722 200682746 48227530 115904553 734131390 325244681 199959393 238483188 546769222 513611367 541202755 604588723 285252494 779482768 125118411 281625938 466068399 299494758 655458809 485558145 645760981 827741825 293651670 786952475 218434000 690809063 730626989 796844701 397652272 46527222 840178317 946155501 606285442 443491311 520373022 819173232 423444709 543065642 821199179 845722967 495654394 186968261 619165367 398067649 650840586 512071569 934574286 708674949 405057070 454306610 940432645 54445210 425099757 106959032 109780581 986735633 940838031 905155900 374869819 530867430 335350828 333738918 617319058 710050760 806258463 458134633 330535918 124353328 633731745 641852138 968755258 872520299 383754661 622861672 178132403 17759982 809833206 892649063 994404573 844855305 508046203 535058329 344930368 176605175 164319905 151038748 134032711 103486677 329580452 812289077 527179952 917173323 196322579 426775015 485178686 661727281 467661701 731555577 868640067 724131994 400450201 820680576 752583131 687208910 547080533 303724745 944301739 183921725 33063019 547454800 690856859 13080647 605306704 128245235 304529076 131216236 203147397 425133301 576264832 378829827 234302108 184613702 567596791 692727461 303534709 303108267 48672261 115054148 296204800 888482493 849131266 982318726 116353199 582682139 840614787 354415834 339062727 128444416 378120224 484478200 683117841 381105655 804407826 59592454 162663700 569994879 918860774 281901473 307926018 679529922 24734459 788447160 322715408 576906973 271563433 867158630 667868867 744131282 121264564 304196746 345376556 313176859 13301933 568420256 661615223 595988607 204710448 332544187 126558660 518877334 483039042 887075162 644217058 424399680 376575677 374967009 86526142 556766036 494826348 726848289 839862922 283299548 668426575 616771783 423879190 154886879 330308003 606783545 517408894 383378915 126112673 628577056 852833211 372793570 797608260 58421308 417208214 985390518 506618624 196991496 37239408 746373235 540816426 732132143 816798555 131513153 407015103 268270037 229877150 680913677 627312185 851005170 58849544 191850868 253014062 588129169 188542093 936739483 417103339 21959491 563221501 21427662 72952754 258450173 955206569 230067434 444646239 328091299 488766366 770083566 322645162 196989094 973109098 82965664 183140416 616032134 346860242 278419269 580760030 738206156 50604193 663414402 360789676 90307363 166766846 882608097 327146740 967168788 80364943 776986141 523562016 426357211 188152368 638955982 4362297 985082948 314003753 976924804 292831352 494520890 465331765 917687192 946951199 951844195 354739954 728808095 237348948 852453159 856502901 551788037 353542030 658220977 75730668 57645741 43064138 707420300 33812625 86304600 843310810 405343642 550228505 350426532 389963814 622418497 726425587 985706878 52950026 932586867 513784823 513081583 201668828 122311638 171197119 260948765 596797240 345852953 433560873 521211480 404885995 43567067 356404483 758849151 4176948 956852121 494735024 751732051 176850254 784570091 389528222 759757755 620334342 93321657 80090376 512876738 419806367 711769019 881002800 228947754 629818769 172420027 357997775 256904159 529025705 730947895 771647082 534681065 361795813 677507414 940776858 200673858 860532473 409129478 34835424 542866235 222052800 865748162 599072878 469201832 916573782 400988637 402726555 830599958 590718856 627756161 947595638 782438631 677457394 39410377 849533755 573885675 469383495 670188734 149151680 878096327 96399905 625115472 455974303 152438133 899178022 157669286 979593260 924407531 448778392 236451173 627171502 693595501 230387631 993626426 480484120 432633793 174769633 747107744 697702360 953031163 884724091 720618691 42447311 649539463 295051741 758518536 557780867 90217751 282120029 410471847 878407906 34064794 112556217 955863769 150661615 263852201 28271484 529440724 254795331 603559663 953492522 498251095 963838300 566752183 279488143 928538399 793063691 758595568 771868618 450540746 706439458 279892358 446567962 583001003 52854833 700686415 626878025 105483214 522467475 895968104 848798310 378281892 588741558 648673907 243164719 592491419 885225925 428937540 886630329 74069846 536625053 671872921 39852948 540521474 567017738 619824701 216508173 672087274 303298677 422019238 168727230 741991707 569362565 862324689 932371145 772958426 947791396 488364477 266442731 35169935 984466898 660661974 717941471 278162945 340299023 87756681 420758090 621752406 482770558 768993376 985193856 339646656 50052432 664292649 755220905 410497634 196652194 785334430 113833267 458382431 432006575 400360551 588480224 241956673 382489571 145578152 721905492 939140773 347198784 31546044 428340585 760517573 309970696 736466023 247463931 690770151 547258511 923790683 842680138 108105771 844780605 174615876 156802903 524492558 81650941 444018425 964262909 240137455 668407670 5031632 789403073 563845397 650658940 134419171 38925437 822017177 744769266 890461259 949175612 55438855 426849605 938601257 220989867 578095064 711343487 269755752 714419370 673982468 804330986 706586258 461804824 667015895 746957529 868368725 508074306 14567890 892676287 113871743 146428493 240988054 140970331 301515345 702527454 109616031 52089511 193229590 159692736 801864395 502182456 889357290 526105261 69100699 126010568 455549427 385257781 399361178 302735983 891354873 966827811 935634444 633631490 533401260 351631093 4010653 785190672 642661187 44851315 260894641 597414231 9454174 959374241 243700532 255395970 754791511 325152856 850000230 844717190 652572444 426945762 726480050 189643061 398261229 806912370 397960357 551862753 251691101 860183551 322511359 694313491 479732259 324266429 344922285 972245464 777202078 564345987 783022392 105487679 335001315 910821657 18408361 99921585 480466861 249041068 457895145 77018700 317742450 370603770 18261183 845806529 473413007 240458788 201304922 483495002 83290359 87062298 299808974 90751604 442554530 665072964 496728818 720511868 805329245 606977435 781283586 905625318 499790787 451518366 537119281 719167910 608922538 785004494 118167968 866974226 819183215 821694869 288896576 620549459 239747400 506612052 724261374 425086836 538338011 654927907 771671255 450461683 564671759 833725333 184682061 785128374 956413196 868850775 422590566 238103809 418809649 810152765 710695337 598271125 207549722 540909343 891814096 485651498 374132740 987227052 335624932 651093794 163478887 419986083 589358579 906704076 995022360 533878575 436882610 22995594 157681021 796080301 942579979 618748697 442557416 716327080 724154000 846496987 231085723 587187595 858077939 593964919 890151578 254895267 969699407 173336474 84936460 993848763 96664657 92633971 900979223 644242479 893972066 88528454 44850985 504326337 552069625 671450334 506734474 435283387 250963344 335126747 834302231 324576162 656350116 75906687 571589943 769667739 289294680 714875282 550100158 414529094 669577485 977679014 9771875 996823321 687565809 882196958 78206079 176243944 195093365 307154711 198368010 394433874 196143511 950868468 464781831 181719048 610904625 621332087 451326570 466175124 526137412 908392493 183470865 565922183 102334909 553477390 210602569 281276348 462707601 168560353 714913134 394358401 374586649 386283673 590603778 8620387 87283759 603228803 856308994 741155001 702807196 267873118 659900212 129429634 324107564 76339341 577993827 835006384 992618492 79354143 8638420 607819952 349256775 945157357 289554667 669345002 58474092 435062765 55681318 264582751 824355506 2783833 834859370 516282223 598315760 526452153 63140469 4842139 843390214 91371820 495791773 795029730 475118442 487697308 662265638 720531797 155185261 715373354 270620947 867027592 377880759 459927907 908425008 447739196 516219873 303240549 284833397 178624513 778633564 876081440 259848396 557115740 428721747 141482749 283770841 42514490 605907138 806257830 469728185 428785898 507296812 545464372 758557134 104956763 659771435 904273563 19742379 762344686 162387564 590231615 180767024 551464704 124372370 112815191 162056911 819480729 562177465 552923962 894646552 887841930 467390220 197134385 379819288 324644163 630245351 925159220 516756656 177032627 38272864 816669777 287010203 60108843 962259595 939953531 166760247 734920368 461780678 753855697 702932407 57345595 536173174 158972847 820290107 674971029 920319031 593824916 46580720 247963353 938313763 345179834 743500986 148750012 975116042 426126852 517194926 445307276 984812124 435539082 744168684 169033662 613546285 561079865 817789676 952188096 381554137 843796949 698610183 192673658 241065463 682227021 156545445 185276443 561918713 871122573 330239986 269296840 31869468 383112205 196606449 697082338 963035042 617777404 432755705 462187489 206053932 447230070 132401644 550975392 800904842 337229656 409904159 53308431 852786677 744757946 753365728 795233660 479537796 873303404 329598167 339773034 176100994 973679237 823007034 283446609 918992608 444856626 687758888 741911492 935598576 372132304 475817130 77431281 768382450 455878636 858241154 833343388 658764351 988386215 359959659 866362425 744828971 571551975 151275504 872707862 972963277 535552485 255953949 916934307 346942645 128003432 772699177 578127459 425214603 518183421 480449695 986872425 860960540 494980204 383534821 968309296 477190634 355387497 158115601 163359875 361896911 425612023 44998325 960471189 39583256 991556353 67932820 671095409 326613977 714156821 778690044 699382797 169154537 24451844 967942719 397721972 709518117 882078607 69824608 167333901 225040506 485136791 243979665 914708547 126699848 126337240 336852333 807241630 520090098 757324016 17004380 244794557 197477549 670187294 970056911 289527978 315475502 791895541 751924283 450549101 787500261 950388159 932999522 741430826 140658906 940617198 485939337 996977497 533257727 884174683 496035637 819248101 869772690 275536989 233318225 928626428 895732094 717993433 943111262 194289024 481265504 344617475 380911808 621930046 865126178 94404759 362915753 576597748 992926353 121309556 930432103 891083348 216823364 731322621 140015970 20702335 609753039 469274042 181287262 781216408 888056674 748244317 591553913 855374227 764225921 216566836 666198971 160724712 280734920 470750000 120749685 247048996 976283350 322329175 208272129 687141211 988287016 611441535 362378330 630736398 637756012 354237567 367765473 859754436 610005709 240969016 163768887 428329906 345073954 325353744 294026025 51672395 10987472 621741552 583638621 510886794 544288492 325359367 105277612 770447761 53563386 530383626 211315846 864881377 998722718 927593727 435391449 717485955 775681356 559121066 246623183 294935283 706489460 537504322 373321608 249706672 517712746 449509265 818684332 955077588 806800089 426378218 325955454 375961807 533605293 170685346 577677000 227577191 967001277 552614343 962524713 519995654 660330314 247064006 162936561 508933468 204422446 384053984 939544444 124867964 950067162 266199778 291678941 751068985 346419246 424106009 221091533 283747566 291704413 723349061 297262700 55104154 128063477 343933560 413589841 671732588 807076054 362201497 179195558 527730980 190890056 92541116 651915608 593471720 874981389 133448593 338460334 108482020 763004622 35815298 582206726 914989164 512642675 788825022 585670513 343009496 547769988 230763011 391984874 44956341 701727504 339758264 166923978 891256236 873418268 886147329 610800090 474397327 159002833 942669793 956921567 726518895 301548276 895335779 45196437 746548570 926433498 496821525 541979609 259859623 130054981 796059064 200141574 217934917 76580576 205278771 374404269 683766893 308048045 996496833 66078879 223636634 390167741 804051937 450739237 968381367 166148207 943717640 66005455 189805312 993454638 494370930 282959825 399287070 43496552 80910287 821922194 41079603 107309123 194046858 164765739 14232052 608383057 579734170 561697682 658637211 989024498 409238049 548066664 409618203 780359525 516324487 722409091 113556233 876089658 655771981 891746602 559176833 595084996 777044804 699634664 427728303 85106084 943565657 546112900 283478844 788843155 435472108 150873418 484563044 843463431 865288073 442780985 640946842 360882330 51175741 879359412 389312608 146847159 5176180 614862759 622928673 746841788 152199876 13555276 205719644 2765333 624895863 95879176 394259192 748038018 214973615 689651531 487891498 334520217 303397286 293756984 634570919 90836358 476150095 703171664 666153895 608022272 314962894 867693515 909487373 660937501 951371333 731321933 934385822 92982270 831277297 474767135 314208915 577687087 340649077 398952075 298674206 442952656 678680062 292616505 890030119 332416545 863216411 626304324 698693062 102869711 803486725 681520626 618015346 252884363 565762989 19997203 676485807 856746173 535814183 657263546 131942275 349563766 270197493 510668589 384875753 720378387 384441767 400332503 315261671 335797086 562350228 253097113 722518200 222648456 590483011 189925614 592866011 863554054 250933082 140733973 737016879 386625414 13563818 18979742 306286022 965004003 113066196 49855546 264187669 324628120 563100141 377021293 614107202 399354120 609664952 332952517 764693382 344576825 880118141 818693842 321293604 525446968 232325770 485017192 497533918 448122781 235448363 407526234 259558263 980602465 640607060 412345942 659592007 95052186 690923143 857821349 623972058 443536010 125282323 107538297 440943846 419315265 475179904 289239266 552493531 655114508 281996781 878683261 62784583 798482155 749491770 732962178 749280581 310955317 152128863 461768852 36981584 333612482 277260229 154054644 246659357 380772307 592001814 295890226 293260231 742938346 966914236 466649279 717358620 887340992 656292324 254421207 371391062 248573998 754029719 558049153 110429005 632644639 67072046 847641173 949304886 822583213 819409033 467408695 334076509 228149555 261182876 95506285 875762979 63392401 469048831 18900082 158869530 881693823 493287837 745716976 434262712 850225991 477509560 758319016 27859951 348509825 198739756 124056507 94686604 736276751 403455104 695168652 308478121 373420349 468281684 112332185 868629392 598141344 908750027 30915446 975206051 186303355 321252174 619026208 66399711 55442605 241471153 521657449 83537742 521238490 302823098 783878070 757894030 782556656 58522919 849819549 652759925 980583504 745410883 570386541 247163402 397728774 229587430 976951511 950370133 356176483 653180917 597828289 538064002 7238724 86005216 581320103 890262254 849708396 315441767 253951576 810976832 276910118 655594392 319331448 792294261 233703371 701585085 17949269 961874757 571827005 500478365 382552839 743730944 953653816 930914992 794193607 464270767 856866819 695104938 665781714 279284642 185394584 832436986 619225244 560685279 101497192 344791678 330936778 65730928 201136096 26043585 904267819 380601334 664208899 868628903 675692782 813577237 190269414 848013240 46735344 824823619 492600048 9297054 15141059 680354501 656417209 159260334 841971913 147281658 316860493 210030091 334399935 560827358 140268332 314296187 269724837 158224692 960584666 389071178 922241454 42479743 887457155 203976872 459396510 732246364 576636380 456314952 744287018 380652024 694991502 750542268 626991065 226848185 248998795 573806551 94798458 46192927 38410471 807779536 258170645 490355802 324804798 23558199 210017507 880449566 152848869 211585985 180202536 803237762 77886265 166520622 348397796 787189187 856870075 786426725 603223127 689602440 786137054 880614764 975681589 517721005 481642355 790135676 867510815 994754980 457680531 226777442 960762115 484178346 271264341 578848451 649704546 873294986 42884678 717130658 730223588 832445535 689931359 913839369 818629163 674708776 949175181 170101580 518167032 750173253 440680152 105943557 121732991 274857027 644656786 467083835 9001615 717439711 83944461 225635371 384311653 166327740 310692486 459286450 300600607 482265676 901054875 718749867 828386267 184007616 944563657 530728639 447215241 436440000 113300152 449634765 869529779 972233909 837845781 939286796 665408997 299513005 380471953 341132914 926917527 279346403 777524059 588250566 985343110 180438195 629498611 442496817 203038948 203554876 487825799 281142837 199520107 353367371 195804917 963761977 79468099 413140473 857999113 853802834 321496189 240186918 148354927 862673899 783496011 904112225 949700814 422966633 169376299 747440914 434438177 432793957 850884313 100903456 886469800 882058823 814602139 932814279 430652657 821286043 300398675 975704028 111923393 249751008 96413998 167693753 647154092 956874614 312188891 956390535 222385529 571540632 430910045 553840827 941305062 841971183 208725597 24320913 366286587 436598408 847630397 470438847 300152289 670097021 897085680 365288471 638319275 747123089 342981798 724669374 677660087 537909714 722779978 655904608 560190593 597951373 641937590 819784041 479009373 823482964 156714186 174312130 385692779 709123441 162396905 206603308 206288435 348018464 275035468 544760914 549625631 889045121 738664332 260714410 108506708 305660407 179228580 970601932 11043041 382819057 714078953 244448728 910704212 808342898 115222729 580710059 773525336 461540904 26891588 125201763 768480727 132805507 510240491 727754913 929464683 892290485 905733901 905511306 877166190 785905317 545452214 370106288 173354694 970720901 377813638 730071567 651354208 110421450 583536150 749131053 235601846 968070790 162842087 417127413 372143876 827119231 587595209 737290004 543255071 185960913 546639429 289964672 119164463 786114576 683443233 505690481 119285888 895740305 558960380 347635672 174977257 220484247 328999221 321664676 137608554 811837274 262776420 228672336 820817058 789315010 506436080 406368379 621192872 807782885 465906192 375063334 121081419 515774750 588762817 899237332 224993612 209156013 644089370 802508109 534095391 382261190 593890019 952845597 862646269 533132561 275364382 218090727 314974573 84289349 10907546 695401514 349670457 547453221 189841010 725655649 534809892 664326987 563134130 631137596 637129992 595584945 809781232 318434829 754720729 585514083 762564853 66955802 479322305 686482354 667144630 944241957 355490883 140905309 482376218 723378928 418913456 705310091 98565361 521673663 728668991 47224913 983143765 441677429 990632734 301139164 396864777 661746307 996018762 359022450 44420349 796278210 28782597 21695721 130659812 318475349 70724639 147219210 134190188 86308245 219526956 339251633 156916732 541393683 15184080 299876035 368317823 425744851 643827189 191173254 480923918 945374440 802480746 846743570 504739392 963645225 88531709 232371680 638399555 341242223 327655784 874043005 812176262 241178285 580488226 84559327 364881223 368885463 375437897 870292308 695996435 222590075 576144574 433581237 110885487 637641476 332958381 25561255 331017779 565776681 83701253 225176283 862644841 644832414 756637629 872217748 30499014 819799876 13742314 757758068 924969677 844463755 258065275 667368608 726021458 316480806 838844078 280110424 262840063 423734501 836244156 222621683 497947725 264034109 93173025 248297453 271572497 519517134 659656641 44095744 660117104 379464101 828817391 48008448 219000572 503299825 809525435 46487546 829559432 307822266 228391525 532526474 78165124 453427357 860459597 400053129 239312364 294962474 225392213 740677520 153505679 120069848 617646765 329214090 817424168 233991565 122549845 631449274 521098758 539957788 926808146 161347715 177825745 817922698 803541889 144589306 99850187 272399684 391913681 583676312 443133230 474382306 707280565 904546598 246084836 517321172 808545851 393037354 306487081 674230640 939597864 775880290 211306282 467594327 382685438 95727061 319747508 718679869 877184624 449109988 103642691 418813029 741927925 311709036 447505501 832822619 367047821 917025490 97059005 865497285 804042790 149119295 501179853 826404265 918066333 132886780 938186931 554680450 83870180 352886165 468048902 26138940 57391496 441618844 773726910 254993237 122087286 686452544 669555468 498398247 600378726 684017068 684696172 73698326 493015936 688614863 108117184 911566344 833245295 814876587 385618922 729019600 55816789 102853749 584114692 23635327 313651428 609659546 770666637 682766622 865536615 126265688 768822976 303033774 613395624 396317705 80933661 111538568 422877054 622224950 345157149 361952195 730211933 838160688 337177337 822259178 579295861 819314953 289918 664174199 595038621 778006637 473218471 568510608 992668812 509871130 141656163 714141131 63541209 87797133 99442175 811698450 311544784 844764520 816629503 996652958 652069197 282908819 18807219 854060605 781873355 636975490 571903988 55748507 401797335 521456746 145745216 79322774 721258743 33767879 903817796 293879630 55170902 772251582 127672719 207055634 193515426 306545282 94272325 226215638 96783993 325885890 481227960 543473810 938243914 691073522 370459296 82069972 414396300 432949288 929465742 980303724 797739368 603050289 171437962 214603664 622797986 633893301 454820171 567003173 641330245 482302949 505504509 152465090 63029119 910131820 326578711 755165842 654258790 435880548 964294661 334081858 923513445 374333638 428046745 178851629 24903596 101200055 467456716 211329717 372199432 212501190 753491774 382552447 976083188 181603535 166169485 533511132 293513191 218620754 733058823 853803446 693732978 620738464 359835711 528049745 187316971 21919069 974790585 223159219 68134005 465158626 903513190 238960251 931874744 682291722 675404978 204633448 464568982 528981976 584608013 145976484 514330068 475001282 452342629 198498210 329375051 714353990 340557610 896153658 9099001 727039546 700122110 497510303 54513915 767602513 836770772 225710436 697396112 737690551 999998218 628179204 124942830 795645952 653382887 966035902 950108597 180500806 739455641 805338903 596711924 939858603 914529881 149591470 935506774 576919494 154339258 852236336 985852859 619357284 778020057 351915753 412592512 20372000 306233965 600695109 741270362 475126926 569869304 755960750 909170868 510326321 612622509 761248032 674227365 11972159 323159326 819359808 306367358 288459218 681710350 545197160 749040197 234755227 254176948 392622908 638781095 789464906 96622386 288977810 731961431 112528059 990938067 478223700 171927083 903944702 601480070 149294979 17250988 833155637 903748274 53996710 364681919 73932677 671018716 51448893 52058462 405825619 480383905 421643851 905331520 618877391 620483832 353518040 405731860 328735428 192921892 485626700 55230465 62058011 207435205 596574122 863520087 406846448 761441242 909484158 254992697 597717671 508972628 79117153 853372441 33290212 953478194 761005761 192879569 567245699 533514926 319252858 528443553 597809396 836904248 703258698 935196714 513318767 649059676 955390219 69454194 730854188 709624449 976518185 839709325 313438515 680668698 869752118 415724167 539861680 125273860 821710949 932128021 503109176 589375386 322629170 573253291 277337496 804953396 227874257 221452172 21188327 300453243 512604701 604702684 451567845 343739693 372533507 857257570 90369458 915175035 738058164 120425014 334461681 216847991 929605907 49816691 935656711 3760552 286738540 508523179 464968960 595527163 680437727 779789668 11781667 229606920 698015864 198907820 791107982 257304409 825925052 837387184 683201518 177905158 684115661 499808178 884152068 503701148 468809102 309603239 544666985 51427950 207479408 186603347 501100191 549291399 59310964 863190278 634746765 163442012 569544024 447004441 663072821 302500459 208993334 767454993 431615326 777291394 787594762 438315050 696232195 727291339 45742459 572771707 837822205 938285002 985341852 196252975 625897298 587608367 207371397 548097288 754578456 345935727 951991931 291537151 201784610 189128714 155916199 305861842 136309593 559776175 56366308 84907983 969697246 662267273 785046629 741390334 709563110 610486106 578601270 664038166 296084762 165681894 266209974 603335776 363220236 76301204 111200613 486150684 615156296 958245642 343926889 118958180 615925361 649928257 374190582 294463296 569643709 799112233 87812693 113489378 683875143 786852544 565971405 825143703 595040489 479438739 823071281 167501553 500279935 479623093 260927407 453357698 406955232 878653682 4923859 608423128 680051459 660921064 197369489 414520711 802055769 631083125 257181317 309449325 855717661 250320459 369699383 6137776 578809097 824463650 976432382 340307357 561141968 760337893 880248071 860213732 165148636 245262346 554023801 85805999 31540977 806482346 798337478 380022892 519677103 955812847 207569366 976384632 591882924 896712949 142276989 906240534 152946885 463147027 521391832 553006733 777281121 935403353 370025425 146778100 481295736 958716294 701264676 769937450 709339601 13466615 823722370 485539009 897822380 331533602 711676185 701222944 117885417 976922897 780431117 809789121 577658689 336806745 410558321 780656914 23432159 307708723 463248235 222236108 686661604 586476847 137339338 370536346 354568982 730683794 920161181 277471672 699877676 524312385 188200697 82975595 254433859 393971861 985423020 608959976 176507222 577011273 619643954 547225362 240647937 473647283 699879281 973287975 501818547 369815114 284965779 299374019 288491816 501727994 395134415 631317395 401958161 411640579 641850793 681485965 340747610 604252 464600567 736086633 704612466 21944563 106910309 953974255 764549128 415918205 438934489 183615718 697022504 574108461 385246648 574312974 343291782 386707168 643577714 366321186 462097068 11999604 161629190 832123715 869889495 422695711 482997697 353559904 236901707 186484590 356841832 237293766 802776063 895768670 408983508 26979541 109283653 205452490 657932175 718737275 705233908 283262927 479648200 201977112 351093772 875437118 102564855 775800719 730117953 472928861 757806093 889528394 170491042 186190731 526524274 374522136 529000303 537146757 477747986 907897450 720871822 975807394 351344236 312577150 684548148 961505808 204579338 829125593 407108457 48396750 916117534 583844349 356859168 356819211 392872382 539133944 80490656 810610631 175068467 590316114 988698648 961599514 662738021 754083330 894760588 821184522 847648107 181965358 993311582 813997384 877158476 329541934 132146371 633209438 191083807 509178883 531860408 199164208 717097536 640293468 345205899 618561416 551303683 829403916 903617114 430587557 57310543 262725201 515001108 558001362 578114954 120594305 107848248 526518763 849261266 980918575 621182515 547832338 432415611 548652876 880972122 131437101 183579153 634004043 57940695 164354545 230999296 934024173 565580698 251789368 503037144 939089531 736369363 394181196 489298599 463511590 458150192 411559025 299160269 986032381 279224767 616097876 151604393 404636750 994288058 495944021 390453099 126529978 411077713 615257192 683717325 556097446 865934126 625531173 898006365 931214654 214031417 936440702 932594086 777418903 602944639 37144196 417635599 405731373 172596731 570854099 531759625 810341693 631632954 185109486 344027519 868700275 584815876 827730506 438746182 177822685 242992522 783900757 583277663 572843104 913041226 995391370 81703717 760109551 628022650 59696733 705464163 228733249 462896906 134340722 497707556 501525250 660230371 559453474 973220865 815062342 599273046 786068840 985289622 342713837 392983926 247541229 55149957 604241967 346135680 775851454 931061395 525858181 721500673 389381545 410427774 72461958 427049987 441327530 481572955 609740726 970881492 714196038 131990528 350645177 969683782 520555846 562796152 21752859 292353737 684797499 309135377 805697147 453743884 734553196 501245671 253053149 644720221 376306280 590700428 476538088 169649740 53566776 504001807 774562557 382490543 853002473 382162517 829755039 647226737 556280384 535661089 6780187 492063328 948388590 306950986 690687190 974560014 936933096 106581381 945852969 546075243 4307695 114994014 470824964 847811437 928238143 531378267 652644109 986275655 745504748 373246891 134957827 339560419 392608120 312671909 19093485 77666741 800409783 415230342 913065327 843072740 549734862 868430599 947181838 309501788 71975582 465901069 379065889 199604677 804794846 411384168 877370000 581406006 891343340 416743348 605543626 255000183 213220989 385223292 34952452 182758359 901632907 890187743 582630822 595696194 362845792 610354015 335708766 230459875 722907895 697492865 502235275 448821884 941499373 45484888 282187732 40067564 880537177 876745056 474692993 783701051 704532889 218286356 880592794 250966631 888610693 821107883 166244966 977474464 293077846 954169421 802601294 38158808 270358204 225651217 771121930 957429319 309345591 668165706 235555005 746065756 563905373 432633551 920376438 399318709 774927147 370414474 684586614 773840497 950761974 579127763 341077194 316936060 354587338 234644766 447763981 553143278 499527863 782491258 221663833 585963559 100440960 380263619 96338187 979418733 330010827 747384374 401021522 48189209 41597474 116060643 817345733 97775456 650782557 536249148 968413588 546079949 943897403 18640207 788335948 142200744 396268948 733558825 62971348 924972020 903064933 233795849 56978965 706185026 872514224 113619886 588496774 907775788 816035221 827231040 564893682 689575673 500449817 582140049 738549884 201947511 663941942 5619524 429688495 322219757 878911778 912825145 829737548 956283128 993908338 476318952 72706964 988573493 127672215 539152931 799499862 978591634 429544596 255734864 600885146 643802505 770205327 865922763 449644321 798605796 81394220 169252345 991103874 427284201 958884833 927198744 460184951 654857893 273814721 28631451 613653449 322166466 904194902 375168552 209490499 155457938 105916275 717916661 539287333 757865519 774342647 171080825 8037581 913589086 98702089 365903410 322689318 246425256 585266848 397534394 919484474 125661963 575519185 247071740 975872859 474500243 515154831 757256639 755345743 228530061 254055202 88003620 515042189 205200593 467279322 311322768 38642379 143821834 558988011 98397563 216549281 752233627 273704495 57636016 877218878 237540687 977432400 504062806 137501898 437287022 786647876 895403584 592610191 111810003 96476974 442721865 266373691 538742346 297015910 159012822 555456985 420461680 18424445 612262401 155931734 271939797 54685965 473987493 209104789 631169215 498548528 782502300 959645526 366200021 927025087 350109103 522580229 970940744 621399071 10642438 277210654 941455805 601460462 909508145 410404010 71131289 766852990 406085289 754779320 793855170 830100049 659207028 504650738 701847367 539854072 597908699 269603712 960430988 325098056 84332082 920664030 584521616 992771045 688963167 69554529 385911787 963870930 506003273 230798113 578865614 708308775 796086152 833879554 716749953 329169507 562131762 556661012 936999729 78205837 163964436 769138119 185429830 777155088 986839861 853284605 747060880 276236260 640735629 10164184 327612407 218940431 435791813 736540645 680138520 718271849 918421693 937353949 693891345 724892765 754495443 364641803 745939314 910750703 832754423 209142297 603771006 470970047 99513251 69944789 740852700 800030822 840924270 573292936 863176386 557915908 124958218 55283811 877384156 212693961 338120249 937668626 56968445 490906606 364394022 809397676 386147742 215465792 728791083 550351265 163790784 643409784 644727216 172484348 591786724 727168668 315828102 981279534 322679257 152276018 362906385 17291087 395560432 377488213 401422888 38169747 962987973 141094151 539876212 205352957 371049589 788809296 376851148 985469179 6901559 480336805 752497477 144727844 207187030 780177135 334288104 864188662 65800733 491895389 301749985 351228073 996996750 883949628 87325861 882664914 608094115 40317258 518642631 10362767 531542837 340837347 475589314 284054269 100459556 66775809 309554259 890338530 791438915 199438336 292680980 210507943 745530703 735340771 867491728 176919010 290402809 615753120 929410114 49027808 261885751 576606230 334052779 322408653 419422849 682295341 321837365 992541092 174159345 810704050 537924652 902676759 33518804 944346737 993365412 6019947 666240028 870060669 598246238 133697855 618164628 515589119 295154462 118645258 946593979 902672287 414705086 746290517 570130475 4298624 664190504 23331712 738657651 210720349 624347843 197652802 772754785 125003321 889646476 633916787 216186408 339236398 308637779 628879263 449526447 594740298 302223034 545117692 724384360 339938116 646832439 603913686 698956088 703114368 524998210 6640583 200728946 563824272 656244164 622141155 241663122 492175044 637851472 272562693 914926836 638235634 247552042 777465387 616027857 271950641 337499684 380303556 272660320 105582762 642699944 819557507 429154485 200005154 470543452 116038531 645657864 978783324 369469659 287085317 197205638 312484896 934861947 23606948 974035963 425619503 217669709 711958003 282187905 486796541 940217683 264070345 52076912 437904228 649392594 270713889 946343019 122287715 968069511 208581084 688067748 948797553 99502650 48653841 354280784 926205759 464170678 561939462 56326341 859031695 729243000 113954891 380908277 967366172 812671585 544746466 809807593 218821034 180084531 104452497 403785056 961028379 579045478 141949840 171548365 634493898 799190122 31641543 54092057 48874678 731025252 621662267 242750177 557911975 224498550 436192104 959323188 554534327 440521684 430163411 963269678 42041043 430380983 970809443 659668247 955983525 721866617 383344807 533319576 121796070 712576339 229791064 545551361 32090329 683569010 452181117 47557034 704685927 481961958 639592435 956428721 675328842 48981301 112746876 58936189 676529749 828747294 833551447 872853533 337158001 904002252 358967191 180365137 806386874 953379753 814737683 731087548 496081431 598241491 827351791 379484750 722685853 58609874 298995687 839352106 38538462 472911162 714684654 889844192 859520441 223862696 628425220 488372544 8304131 149841071 929883247 750991946 228842063 266441475 534533544 27976793 130969149 780514921 992710822 312780529 913670972 441173033 999652680 311376153 795898246 690780065 466326739 745090709 134581759 809102900 164881628 1876687 646076056 269088737 508763513 708682816 40762479 396193175 906635836 688695036 352049048 15174959 466502271 95339046 160237777 468950719 130913314 653635020 689203831 718363094 314624871 400571838 143228462 595817216 998382483 280993831 10308910 941454496 81823363 465367038 924598576 232744547 668619054 472092818 599872735 757717519 123973467 506428982 486760758 497712776 8800042 581407589 690460848 218651731 538868579 816366098 112556797 698799195 340566603 294718175 614329274 596339547 142991273 851445811 664162068 88590914 710994488 227065709 674670288 959357134 584626255 998881981 239053762 710484539 948229670 312781813 652928782 526644172 143161968 278563709 355602500 596489321 129776289 924741923 408309304 396469398 957814767 684711135 147303010 668934882 549030329 685160363 157592891 270377674 282104713 8302257 716927237 927004870 929492277 739220759 190299339 299507289 472804379 610094771 378661330 179767085 515861997 503911592 600989997 114062674 170500056 791818858 407994361 857714757 849888717 591596013 984611902 253443227 736163202 706763139 179697587 397288583 615499134 281350672 445360730 7463362 989884067 652278897 419292469 625575222 525004969 564515678 924113467 938927517 887587766 438055722 581595943 759394972 804454594 814752790 337452730 452198816 1689169 970628829 311686617 505585606 888677543 98695547 142694428 722675971 330777666 344005598 49081975 263589022 321396922 996229786 766912331 858631806 426740131 558756839 394594650 255938461 795169724 78133408 941814381 836773283 90571801 22242395 271799182 133281820 973864707 294545464 291534705 64433732 10363472 342263550 726196701 51339720 776461893 276571224 796904475 413282422 76951790 966889626 198853434 370284434 571225224 372344073 290072161 816903312 572011378 766327087 695205880 116327945 446881980 63901161 101736168 186606337 469032631 819420402 475426898 794038421 187785890 390037612 75828618 729891660 595198230 120906431 723941347 978264636 643808371 940284174 797904259 29330328 109781331 504774153 868277220 799504821 806879086 747394117 873665723 894451364 129968743 126013275 26542210 265188658 529469051 655983390 388484741 658647842 393823314 420282705 58412514 162895201 279374676 172024812 726517415 644104859 841587302 648600543 634690620 888042475 712778204 605499578 54164181 626881780 227025652 864722721 979575509 314434973 11244069 431417537 896946623 400349990 146469046 109065650 394651707 401901207 561644019 636957296 513025488 763380737 920553089 773153364 679241749 627502722 381910668 635488780 89610149 248560901 639201875 84505804 560931448 968340722 515483997 897019357 867356991 46372470 951879284 641787496 990746805 423905343 745839571 977191828 638957562 255410867 35394837 423760093 820586738 86661617 670741079 859651871 118128616 342991698 94487690 848532968 247194469 16792156 568209519 463488894 403569145 689337335 717981081 910478791 904388821 391779913 564338706 792063564 372266840 423962016 693071665 314623962 20700106 480805511 652920430 21519440 644920036 966934657 933584084 852556218 41600151 625666911 322543940 911829847 478863959 46131995 596659082 740185583 357925210 886648533 631363067 716922732 642057555 393759977 67426899 559822392 907159537 55830328 956957477 875384894 849474026 435075992 989335789 863595894 829710673 849873932 832382257 182454671 376686093 723460908 936946678 231107506 829540992 110609043 577510587 626321094 185849213 867308235 595509345 668466248 241736758 245670900 29760406 950648553 418109056 322857302 710512935 714169884 489605344 486372102 987567454 97883804 238391771 394825393 214192088 573107666 869872721 359927796 10201449 113053438 596821028 430104572 556872613 717383451 35201271 695894390 288006979 833450092 65598029 460820360 581087742 229203562 397714542 809475497 88766261 722767322 36994969 562100366 410690160 838672207 230095375 174033198 961911921 610608008 539744788 515088116 676321387 472461746 954970301 793412890 245892790 705678625 274502218 807327986 667747009 228633404 24970099 655945912 853750065 348527884 205030322 843593051 18717028 702088936 727613188 650730787 289421913 599266570 766622283 927409276 576184660 592424683 802517534 349820484 513787813 120421536 304781421 940202094 133486985 138223732 136619054 42672025 995280365 126735240 91459650 209766600 20774414 998350296 156859527 938721637 403391487 715665397 267961291 365371164 285701892 204570325 753064028 905989001 110579960 685825863 944996861 486811236 873500383 625686843 614753080 81000362 272948784 130862178 538793015 17547715 831218581 830165310 273167254 559823709 160255095 750116363 352405878 15855570 999702064 237090575 186300458 960910475 107924595 67982770 676567362 395555973 167476740 728751972 490432628 741404154 107663780 24993911 709856396 729762293 549816509 548281639 409818137 229251873 486995668 48717783 211812313 698590294 72653859 312479117 794101307 45017935 118028000 863535687 922225228 5228094 84753658 628993584 980545082 640876080 680183538 440759441 258109669 160354558 854033367 653748489 703735011 841961091 891737802 885970055 591712837 446164635 544266184 59653066 524418149 865010458 495267556 636479593 273570513 540567559 453444426 278385209 173234454 906554319 934772901 991223597 974982250 209266898 952977079 485665345 13753547 31575893 139637423 777690107 457421944 37733678 930638120 277351848 340030011 480503693 403087352 639544260 591978416 482920273 123090843 578994241 931866631 49976462 540058166 908433377 635490454 240145005 254226593 164418977 110774574 819399897 952283171 209645123 906158762 383353500 627778 673573933 83850191 400201311 50071714 184947484 116612525 726242155 410810608 958926684 66839740 549197578 331942198 378804790 551037483 256208688 906668830 882290485 212320992 469195147 844599072 46541163 678325964 770022268 340081347 431520421 298001923 256636443 799488499 214167823 513300983 419356811 878701046 941763138 2911115 11377016 583837181 621094564 140383672 645820966 297425560 48871331 491846218 983667591 666651599 629993038 108280584 702153829 58241714 370168028 926749964 479253785 240722994 688247831 56405050 646649255 882092713 122012745 577892393 921234675 478866524 596632711 378496128 895538114 802323846 842432957 993131999 384709848 309031430 863745462 481357901 464990451 813228321 901537358 885313251 273315910 982325578 532130951 211526350 522627225 773985717 171090182 768003613 728732388 597623968 822887245 312367953 535534014 438810973 31687807 390300107 567317083 198154243 202074542 789170077 859086416 791641868 580499380 53623345 558645315 360768546 828274049 483715886 802147798 486071748 647236145 980281529 57217391 444580488 280011074 442442260 366041994 651566157 491250326 197770465 230136708 411805829 492435863 174715347 913711854 301510736 548320612 672198252 834818779 398525250 982665340 721161771 432128282 979290035 411055020 271083821 887758745 722266882 757654395 120370796 381537341 239293123 217591482 801830979 335960868 4885906 18725960 822131202 718646362 735666517 819432592 87846369 935402406 980999969 24609789 902509667 362549839 512739429 689583020 441126621 287776964 211038751 147767609 269020100 738872846 480376636 726768079 312208588 95855063 472946006 300243512 369383556 706723068 464357121 183552120 762831507 97802020 951121669 40108921 207652131 830949928 125251412 620091016 863259905 47760729 917602572 882612832 738470715 106268354 567940487 97604762 242682445 136598108 407992176 637904080 416069553 959830871 294711270 985668869 685741112 470039064 877092637 669984319 811682323 904062256 11557393 536366459 534324495 401427637 309107290 254553894 656854788 555575547 339793753 655048238 423052635 216612379 648255835 953692003 782724044 435639728 308167433 484822762 589240916 631916635 418808582 882344506 97980138 317001042 360792377 237670631 719725031 275527664 840119753 888557205 308421133 983879512 756748773 940211355 140537588 522253628 827549448 197035621 761331108 691346443 416568849 920997645 192285407 687137874 525808582 103651856 503399168 452510732 865365132 804027461 89020304 465598804 482150244 827134344 779922494 117410012 338333568 594737865 693716858 90954439 161034792 666151574 392143280 876898690 144028680 142398452 864445620 708409972 882964905 142464542 119730963 223616847 8121841 104745490 975061035 187017873 445945162 116819668 285795317 781582678 904956283 730795201 750355771 659715374 395962718 396658054 436697243 641675421 301284742 176331827 456816297 102044488 716807020 472433377 943584013 195154680 412037543 286678553 427233976 932571422 496315472 947615468 960170347 193782582 176539660 113295525 524273447 750657926 479972651 758550340 219923933 262112574 402527159 18328378 611382801 653956378 184657847 637431992 754066686 829142362 300394642 655659420 714409365 781417048 439963591 254605648 801475146 986849065 794106882 493815109 845853560 458231115 196006457 159278092 696065528 685163047 482073195 423786548 409521359 756677982 218083656 805008070 408411533 657859726 850920748 480047293 341075603 378815242 284833761 814280685 989679394 389040768 325878156 880158862 503279806 750639377 692504619 402428640 467566786 717360298 268509486 663400190 427463023 836072842 782786046 875988024 104623295 726719963 290319478 228596541 988725063 221036620 801948253 346457835 972137755 231015778 800427867 191155600 188897193 713847706 288634814 909289826 115205108 911933590 332465090 400954072 455812142 821149337 444500491 109869043 183406212 22769794 455732600 906467384 135986182 386246071 2796997 556739611 774056039 198860044 60793787 540866430 271361418 869642354 322128391 467133553 810795502 57790942 494533243 399009879 429377608 340858409 924894955 80230135 173548541 506199725 13476313 406565707 99955273 381213103 913908145 164528059 617356695 898901888 868195036 696171879 7628902 454579073 614308197 991359160 47556485 266475207 436752050 959846919 290124450 587240316 780605421 164649153 325270528 870694246 977240867 367031786 737466051 952048631 654674036 491919276 513300041 777200116 590527614 194722899 338710615 293184231 319959315 168821607 658605838 582696418 205266046 282956719 173155711 633418316 182099163 97273982 604205675 965512853 962425165 856309637 973023527 540194936 722870108 918832626 627233906 346789633 563503408 280865385 651090582 842149829 122500995 344029392 724401993 843581959 446287298 497033315 812973950 432203660 52860041 883704045 605498237 544019718 862251899 563322954 890918789 587944362 466340702 986366176 351015378 582674424 286504947 980300582 451144435 998837844 561749752 584202674 501948690 166385721 299202544 158718463 453461625 581765646 37189887 878556922 935359146 602577249 523750579 517990920 184996160 814337710 727950492 638141781 100426580 360170816 938232237 656999627 982532156 98310386 424460672 323375333 647995103 79232484 907014579 479206812 562522941 851034614 449553834 776381127 468822343 474210305 246085913 89359667 210983168 199328570 456999631 661946270 281764829 956953750 444879464 526289109 620321331 254540917 721270195 949994768 971039547 623505690 263747200 306381311 750769313 234506815 276672449 529532092 154401775 443449583 753050604 451799983 313719801 758322636 518944797 209175001 578332578 548871006 449141225 118588903 419012468 694111216 685049288 507248145 486323519 899252595 485005706 618594037 979985454 289733625 650537161 618290572 377092570 1863885 78820100 608296586 110052346 634993896 432274494 263727428 932264596 638339415 68338383 469735014 27125377 408331039 825138294 810653424 392619830 272118032 635409936 136263645 467491866 650573729 759600606 918186338 273599940 443757551 881276446 721734337 606276809 197230158 641045467 637699756 691464514 922138406 685940719 421273400 759678115 696765643 654929187 698575501 926863381 623076756 408166475 189174334 56702031 131591171 394033659 58671977 709643082 94027814 185437234 607235540 332767260 98540125 900728702 355580347 243008508 734671875 599234051 841936338 96517969 533403853 459196494 218151145 223291712 435930998 821647578 38108839 770469871 599850314 316158581 996282696 497520230 605384531 521685332 414712609 162605759 566795459 575524322 249356884 695458761 51505188 419099475 558795583 130596535 107317091 158886949 48037937 932444909 48540525 860052048 328587066 720169212 632671630 38495317 304882274 47212807 483477775 678189998 997925946 408880601 937108091 315340859 861954812 449576325 521620571 73709026 809902418 284853248 497996489 1036635 734383381 318980555 843707515 505200828 340545413 972775454 134763251 58962325 447037624 73718556 875987876 357012401 730335493 675716283 145947041 923185076 178851842 398916111 569571225 899373630 217936444 446265509 398726042 969004707 427310608 168441092 568995308 354705469 471046258 121064010 737297895 777973692 716017648 832636176 4047337 281894159 185031057 237761356 116414368 997273113 630051060 588108037 742567913 955424514 149746257 191055250 229442510 162982090 675820121 719542977 620389921 641043689 809165257 922763537 391848881 91066782 186436129 123816657 845194272 93064646 496987490 321259339 929826160 431647868 304443838 206829269 17660570 205379973 621675709 269328158 828804391 316560096 340002646 948617004 704695086 155295898 39561283 923726726 823204913 518375483 50753802 315495178 406371420 941608282 5288923 531671755 416623058 236274842 566346046 596033555 967992078 920981516 285541246 741046131 906063795 272588706 134903987 940255013 853889958 608418548 30309627 509593421 868109681 950399281 557471374 887482553 140389080 242296458 711147184 33872478 126176456 696630477 823746167 658337547 854975670 338666016 419986287 259886290 284703628 439809747 112164684 253899096 156427299 293575394 683893075 394482237 707052719 835993305 88340136 58880943 325945690 759695838 708718260 801790060 743538253 308085430 642334458 798308284 708774654 942459230 689443075 161078962 111792692 25015872 190951771 136726279 667683183 539761117 674774989 19517927 992738603 313824678 632188455 498755081 488104812 1606411 459491619 513974320 184339096 190422052 413108613 423455451 379362794 900538350 882200333 774429952 671274238 914560523 379776235 612347891 383915210 381495500 654735720 630157316 577929449 373839839 253934787 447505032 582137702 375383570 454489564 312982752 877645529 629248519 275695534 26299583 602884843 238333608 850330631 754147199 907913963 233687028 559978878 934002633 682442889 812170387 940068734 828141682 351390097 302607139 999504562 484921645 249547893 293488401 186084265 784608522 825714653 649227995 762382248 583308133 342560684 112736241 797697021 864628680 996767054 520504342 46697733 131047448 88741605 783464385 929061326 762780479 150542736 115295217 28385269 14011875 779758725 166580530 594811730 365479238 438034152 416108088 966463255 823743662 868303540 372077116 313919617 209142317 984136262 913925718 188475477 895856600 904709513 729493412 147932095 658296365 730792023 987437181 918501233 268841301 790314235 895619303 47936958 6365625 552507109 251129311 617613368 893376390 283172690 967922 368021401 209791121 501472499 916584602 780061053 799614494 644146951 647381428 570792792 687729917 201222776 183766023 903200463 792611727 873324013 590085770 728357312 327629018 985963360 821087180 315828867 420749286 409778734 198602557 819018137 955215497 766202579 814919854 550250728 212574649 853170161 197146761 508509097 935519422 797893838 608217092 378342704 687242301 576399640 401752168 149042894 951638600 601036509 702146310 524190593 511294971 371690184 856162450 408256038 455110113 846481557 391724164 738153999 962926979 337127953 755083354 316833574 772985548 212508238 674630092 635613441 807706533 551338738 303288091 369572571 58740720 82864800 516607776 334348717 301888 977807411 13253588 174478380 957921149 563374867 586347687 369744835 426549811 366529065 929744086 512396700 185814480 815662806 516386673 561565344 253209812 885130958 365885492 305856928 919749738 144202917 211708277 287346020 364883973 201248716 468435642 969700839 733727806 673907223 749518722 148433871 429653383 934809811 248509329 350555373 480482151 706214608 162405059 709487450 580793800 997750434 380951735 852712788 809937817 17613338 236007344 839347365 348268318 326434720 586032899 227123660 197406660 920255257 214241149 993101001 952232385 667867202 519010766 622882988 535021595 62961834 401130641 785080841 262973319 85003018 22938281 275096707 943041255 336215371 536593282 451738083 812113093 360294371 683065308 677413428 324219611 172858992 792047072 135841100 209139533 363702921 611228482 843566728 95740614 121260348 964515745 88044548 499612569 755934601 835139890 211874865 167434718 315182647 186655428 793244555 772198653 372339606 64907286 618110220 507024546 578899710 830556772 444546211 452903023 773345740 937809385 757911670 922370932 648593362 9123808 129761315 232615778 388630854 585499723 627316177 309220030 488346477 98825260 635295174 140795475 388210672 390477854 22980717 470219113 694894880 920054745 120327152 721162127 514259297 942664089 61958374 665751304 998458158 842743549 985356208 60121221 842182941 671471573 273022492 220153644 754069765 388380349 603037108 256111045 505390875 679829157 334820294 198483850 404632080 643087330 840114656 489561652 104414371 911097565 380805026 922532390 651710541 824940675 152044483 925993233 857439595 142691973 426141461 790913643 175488095 376999785 614562387 960523443 858272971 481161878 485239540 968793917 591778603 257892445 311489664 314562907 713910592 513100338 385512826 501385660 113196247 991625503 912811940 113699575 825557242 873007099 851553509 238277824 649036055 869583434 425344733 871830496 974448874 375646639 148701120 861055590 678799581 944548310 276040287 315445486 124915243 93348284 754326032 537473308 985578692 533044585 899448832 592065045 978644187 701604817 263387905 267370812 564420017 443429103 124193496 291022450 493168646 910563072 641868918 896988066 447418523 320170099 339856492 254815488 421060831 712431113 566791093 900832575 716708397 672088270 718320158 898922525 574864822 196634397 546725710 369952526 642187325 719523168 539288558 132113323 978660450 206845807 404680027 800483439 138321176 113533329 877392462 861924317 673483832 849121700 892338186 67447405 385773620 985867595 550381441 838774341 563799899 699846220 480135394 893048925 306937184 126290571 841495358 107747411 215816438 921355429 371794771 992215692 223711104 159195517 538584824 788438839 35654104 915603104 264219163 652407848 397207176 135215463 539002747 183142927 815487495 264074348 226099837 134635383 376331427 212519465 559797893 929200206 18020746 118897008 711227857 372111772 269355306 272916193 278918705 438877098 348536543 593357270 985177484 220790458 332210395 3545240 748820768 39338694 525822184 375770382 520372468 693300657 148898647 283990316 739608831 341623954 37203205 984467652 20204508 106180604 576917437 933439173 159395822 897499232 528658096 291052884 291891234 383058264 944757741 744259029 988067539 641586697 588791341 543693094 727382185 760691666 731301421 185616851 634763473 488951036 651557213 625607871 292820831 307570661 944741770 666434908 180635872 187185493 469017436 326245627 470832357 311726151 872652684 317246302 94903476 45776340 433183478 953126238 787410764 767423973 246883810 302621479 821854558 203308709 92506667 993176428 657409839 612464819 937836557 691649709 150669595 737321571 398829984 729230115 552213079 283525023 139160126 661323096 840491983 98881878 254728625 219921492 918817628 365368003 300868566 600300856 40588463 121836509 523209652 719093469 533540889 923268800 376666525 422422316 359124095 543145756 242016981 337581988 557102024 39823849 261415585 823295712 940073186 5600545 86714993 532788346 67951264 415724978 809998053 410712629 620512986 648566323 122518591 885328030 629579763 403256433 378864366 597569804 648163480 311740053 73819062 920877739 494672321 272278210 8461501 580325392 205077592 171466359 408177717 783715182 430039296 208276612 544279486 790898459 850913557 494976275 888177826 42174811 572015048 372083297 84913549 635613829 16252838 345053836 115000016 333525268 227213953 379495349 491065133 426028119 693306306 234005647 589294748 84251598 333349430 364571726 557668990 965540017 550145502 897065814 73942557 609389059 63750104 90131150 754523779 284847466 157136394 31212499 356650767 416002089 260810975 487324141 879204538 185739771 306436794 773015854 467202211 248366890 917128324 587123544 71345487 803301031 451852607 884911792 524979910 349794985 425944169 58033133 636161411 662840253 54470312 779138756 313809578 107151906 28545438 967611714 351374107 171749116 308098399 17603807 672981016 284124123 591971436 783832816 322886869 616595511 995461616 535555650 315334071 338078367 361056811 967176386 970854656 456535145 60484490 54926463 654927801 95133358 608557790 836072728 266687556 998150173 105552211 464244083 437615692 44777239 272372042 31215029 893323518 476225381 848823137 466311168 635394819 710574277 896899918 221487739 671822326 720159162 16142335 991977841 642840747 484491311 657028400 210543737 467984551 873589033 637076449 306169961 454859890 934619673 745041464 435578222 368311979 67090214 191468573 279613514 160320251 298719713 843405706 169973084 688685029 340345346 299456303 598795457 920235306 806695590 484329144 820105133 466750313 523864138 990134139 204577905 885479736 309582351 268931983 483105589 542752359 364473897 174588586 635920373 404299049 736384753 394828561 129640612 117158023 918823265 690146152 445451350 21905056 773527797 214733549 152078745 880825567 602986680 979777345 661337455 275268593 689492451 309930244 868296116 10899403 355731874 510744097 656864410 172096708 353555014 428277267 903714516 414836942 687241690 293751070 968057495 837853034 700949068 838120117 255386648 71679589 281463076 24479036 31582392 13546635 812987771 898695408 951687943 694568340 625530780 188056960 560136979 633914500 3798780 180860147 427375121 984111598 327197096 724530919 800189476 916830834 174260742 57838079 137252048 945865281 865125011 670066670 470550093 117024801 671846749 508441576 98367484 30715144 171912206 769992271 150308189 686812517 587116820 20523613 547998556 174193754 215171740 73378984 681221122 849305368 760312226 669022002 174117445 895622369 46574008 482114931 486782117 782193950 479948986 753593859 568974963 659792420 949604385 269104478 331190568 279448609 453304787 916750940 803664927 319487015 261891418 397318505 282028533 941029623 485839049 442472734 708156886 766257468 166650797 642996857 481390495 152600042 807984563 249944424 338335623 547331989 951041081 426314015 873128450 8513591 274185602 101393539 406670728 605856841 528037530 686168457 484639295 191296247 997512966 903970659 137772307 990233882 619266584 277599139 197745509 857102868 504313486 619402653 44668521 21716692 67006612 832493243 331696535 581067803 495087721 11373765 373107806 980913925 5171733 869561863 811335519 693747878 126531757 661702900 449224506 121577031 81287337 853968491 227299861 175333735 536784189 210216058 213340715 569971239 856319811 914258539 924541420 479442250 822735742 388343294 272838224 823694195 854219609 284599215 423475999 874016566 600762504 760150072 31237045 219975656 751588995 258021432 107764297 791190491 862220556 350293602 919045134 490530146 489593519 199286141 613634155 515774729 251791438 278054253 418740267 340356135 813589883 97028738 196694038 578583894 265400644 654437809 493606680 466952960 545482214 818905445 584540466 773283637 482819708 902766858 630316895 191992692 79216285 3076827 984092026 600074138 446097244 412429819 681002283 149835339 636968789 389095402 841306828 872663620 599686526 358828038 531624411 844061436 481875888 667123169 749356981 599470107 179554001 79973461 456131475 704283574 252033680 262355727 479857553 421561078 523359587 355122105 983192662 453923588 894062556 598234637 885802019 689470491 47198767 585928879 301153496 638990329 435373150 674975089 22709702 499808299 975040017 624161719 379365601 284037541 107391144 529356793 687304984 689582169 960362265 280147599 699450998 220866104 902787669 317575100 817334706 881129468 247372083 622541095 727541843 312340945 92344854 543928856 111378584 668108505 155848335 109184647 42203763 33755439 240303676 537831420 52300441 616783076 724020187 998845324 312835942 503143417 437121590 457870562 928502749 679242246 109707996 536299387 463150105 635519527 895683608 238795090 294760344 976037359 663678007 577274011 933194462 829504497 518425152 782029636 828970787 898468793 420136075 986359487 74699049 569291592 287495600 709592489 783790779 590373684 106409848 582016694 672055607 711269189 112172409 723811237 183048829 196911333 242604698 670003951 6335537 530253036 339498475 943280296 255071629 927469246 473523660 313679841 277772892 735790078 689619341 98391641 502595505 513178533 382370013 892641088 67875936 83267792 181737182 403470582 811789874 330964645 52349928 426503860 664327777 776923643 778206271 474497913 293435287 80207058 264425331 398396737 46544098 381098439 54420649 943511699 987080334 431497365 111483247 468251909 55787903 718033669 331044104 445895324 586039206 691758721 456901639 431967750 970990331 945197870 955598933 398824154 32942892 802405713 250172729 28049309 324399838 403458792 291289900 196943996 809167840 663852621 391635610 966720044 810491418 236853309 596926525 437066638 607814805 872904848 223423265 46613237 63365992 96291143 901748136 107410108 104876377 915211592 336749302 595590503 65651883 76999126 5409677 970043383 514998852 944214935 118915875 335034451 464669316 386785561 338029763 80288631 2613057 97272968 243325897 572185614 565703303 977172306 688673179 486797196 588876399 802983275 49757306 443143100 801093799 256197891 828557211 385027809 320115758 385280339 117640649 801937913 254563746 355503672 486974769 128160404 195597415 446258314 881667972 19255575 870822277 639274729 456600911 673371106 378494565 532327922 393160859 966109152 460864938 88926195 598420128 652503304 956750324 100322102 751376599 571405023 572596312 991884757 946423276 357649541 404812795 396641278 651961884 351247856 374388173 775539947 453401473 165241674 388291038 310832754 780197825 444705268 768195711 891090775 729539304 169483500 102350116 34104055 326560686 787758649 195164622 521516724 698471162 593732146 305263149 102100665 58892378 891997624 77884946 998650778 434869767 416782892 791767689 301724376 606281398 454375678 617838627 288414166 347774800 690289674 73492881 923269549 986899544 516185183 842484995 565843032 934825445 309579219 240825743 715864389 548313497 499867388 814345883 30514287 559450056 95615167 726218174 476057161 536516417 330645794 427900819 113201468 315589336 531779519 66764767 556675585 984266821 539962190 80098228 866014134 825991558 55364055 369406333 289929615 67958700 185201906 508897074 678990540 686872648 226728702 969246192 350838828 462307974 258712546 535711244 868658147 373686102 392415240 47128368 362594345 451036767 63120900 528734576 957970354 270630247 472469076 276751343 935318286 779492605 991187958 85066587 534684298 83550968 572611925 125068842 918348570 749555661 705341224 260934840 818054031 238517101 673968026 966288153 820910358 254844043 179276632 147271486 180875423 303567721 669939162 642889266 148568167 406335146 451578898 393596018 152620265 989657592 142992100 735732592 491912458 144599789 311227693 940142795 724273723 300063408 169809290 483770791 752602117 174749861 558708601 381838996 211433076 385130440 609888283 996274026 992503430 771671123 332627647 805024002 45535 816921684 536342156 449880829 654053074 141274684 885986474 101361017 786230934 398930084 889380158 408340387 468654475 832822876 731196395 733214473 810582312 266056721 759222662 986836528 179808434 394246988 743809709 344381977 905832938 128076013 387790755 807666653 374911058 603730205 261551773 55569100 959665755 142420568 470122574 611412191 594737037 878434561 763711045 760272158 279320524 891012658 185522429 730697319 511184165 345993817 270610599 136638124 553720518 440957729 633422303 800056367 602655731 837254873 524948866 372945391 502219574 843257013 748183594 832921881 262078836 787784936 603695882 719088082 713415793 830641918 473079983 131352430 3848140 544386009 813147307 859984179 632459923 361724007 444556209 973966443 352964424 461276660 464968050 651345468 471386972 531920175 409863989 744515643 77429375 824873291 511678071 220836763 914556423 605269588 507763276 785261947 520026424 768341321 798270773 510077663 779957583 926971642 748571374 84159951 790102599 20681749 207820935 667084497 143722970 682518985 480705484 668743455 827090187 528794225 647720106 137318349 844260726 563969985 919322379 962297304 687193349 118487968 707925021 870873623 624376575 742248927 352008134 51824030 932925225 200052825 899578272 943098789 949321939 947221626 401459254 246683242 637475559 72133643 536108251 432251114 538874401 617029563 309520673 534509934 15268173 507769262 527288031 213358446 268194105 729800343 93465650 396973158 755985233 257268190 314694103 175794235 752521335 423829199 980388098 921013642 140054423 649556357 890777849 918920224 64407837 26795123 644746534 694054268 393853536 195944420 5688284 264256617 121633232 643359251 365568838 873420503 64111897 311052512 189450840 466016621 356436116 66156160 971263802 302800141 393690552 729174553 187721344 980044627 817858859 574623697 215356997 348943455 6125102 916604232 540871918 934214093 619965149 144562760 221718476 456488116 523542941 446208253 528328310 478761991 249153171 230152446 755801329 362313560 989180609 256929727 424813325 142259967 899138006 762574834 429046684 124718017 604657097 292556036 793057019 127245970 36045084 292054985 59798861 174598531 907128315 166332542 155920318 33366603 165543529 126734757 402833860 412021731 476015748 884611133 629618658 719887010 480194315 414871336 361465399 874710119 738775357 490231025 400470239 66414090 120266984 251334070 517422331 430605968 322692682 515910004 431469799 732667439 363476621 311047275 116078652 41519743 965453821 345075454 1832801 817370187 676531903 446484895 349465956 812215943 255438780 236793433 455733621 593841602 555143787 315587254 832904739 88845055 863050617 326226771 732748412 86604077 387630958 822405657 465687653 611771198 417583021 222129434 290075295 710340188 662780560 280972795 683069358 65656562 3625957 892399581 543505121 805273068 271004869 306777267 415008400 555625688 992748166 708384990 465890493 352766234 374733986 437749237 332082158 171130821 171735097 471550963 742268242 282298444 531668023 689337117 431377375 792328064 120448066 210331644 896968813 651758127 799634138 828099289 513143661 102434911 227249755 503423599 155682600 67063805 154685833 545467394 130686607 636759765 633665878 406847046 255735721 374967889 213488300 467925019 15704640 507095702 566655989 255044851 917756040 164676630 635987587 927075980 13264276 964069417 42225719 967971342 373132715 978913250 495285568 340255019 853452478 280978977 6536603 134700288 792562795 406987294 301267851 945291725 522018169 457183497 735094478 984503089 589887332 953506949 750274892 456915713 408846800 515281477 493007704 399874834 876036139 173941951 409305409 137437540 798790307 902733043 66025485 241787276 564951417 426453770 715143352 117233672 996598835 127839918 874855046 65906640 121075195 911067535 11068793 316397967 955146436 508655491 65404165 51725641 722903896 776022470 158158851 868546544 1502059 655920580 39438043 915725018 28443567 289141574 734463903 959554444 257547665 232412284 719959047 393461443 339214005 782672581 867623449 866591348 71100072 274540934 624081424 486153146 676526886 787616847 780031342 353536524 748070857 782292322 746035737 352118732 415805877 993406884 187964501 207131348 675617898 535313951 393264108 559804547 696106264 966725878 149337856 597074430 219083083 332257221 845324064 477209811 383583625 159212935 780053936 479797321 483463276 322611354 807354634 37788828 330244231 920746053 988326073 120353040 482305142 339061556 902934252 714905947 454262924 718970530 640207102 159295018 787858720 340732469 648291520 228932483 382074709 562062102 871497242 728185057 721336495 645348178 819805557 393327553 8836562 698731345 315138183 548142501 111957982 3507028 741463942 9793085 505748939 810444384 552912018 234317954 893234148 375608946 137237785 877356230 295144283 641543670 860463911 916169762 988035607 689071572 443371698 440886453 61363956 560813198 711394374 700207607 459652232 265969399 745453895 554010002 511262846 46261281 497132427 490631640 732102622 703048870 426213006 565247342 624336699 63137080 561255940 536029826 230996161 175861665 278349512 793314937 393299246 31964264 678601456 539814657 959039913 347979346 332294798 526834638 296933370 297675309 242931431 159838513 417289132 977097273 878412793 849683261 232979661 77874944 616920101 794071715 159263267 568077799 477944670 748258124 793290392 559275971 132494447 334263059 39884320 785669452 293091232 128143031 650997058 306992707 115178036 33607612 899859132 725982661 268387337 79727862 536290631 13514880 831551758 898819547 8686592 38265788 95889842 143226277 878457928 33511827 766226060 54497334 224921337 754526457 739965837 737516165 601854868 905804477 883737716 474818614 640611095 52891033 729413685 85793784 893652544 856111235 59549277 700447347 998301496 863481097 142908888 487093199 249087996 684811361 199621041 923460613 974907385 948344427 216234782 674864167 964373431 218179659 426205201 432724571 754548440 452867777 517687460 84375138 875205438 184646319 685159413 906341800 166028618 967173526 511303846 338544912 286873898 894686908 87269077 460009005 136225040 359567985 500206699 726421770 341405435 846653201 717679784 741136251 151919582 748322987 618273554 816831243 207162994 652205709 982293945 987091562 868851094 7275451 733708947 528397970 617859870 801017896 916919250 551255209 671277587 804635650 366668891 7406296 826096824 501298331 86137372 974836706 295052735 609597194 810310207 345153592 784739329 692218777 146634641 292793354 229642375 755836559 400772035 543714415 632921530 491373443 467902039 529974678 659460877 683317522 578759630 93776759 782552794 634204767 591980734 411839965 413084445 630749973 255222033 901446131 523616821 681558813 493451434 252218675 630794238 636904898 563902931 222047134 878931031 468408397 929107780 112488649 674171801 810412680 825637600 663727900 31270622 487720814 527237542 4285248 901354037 680060573 539238198 286468844 41019027 798484187 341983662 771014158 109394483 204839647 511467114 440094642 60125070 138657552 284418887 18420879 836408604 940746328 774350233 104650233 353867123 521613486 596665664 442654487 153028832 989965802 441413012 822111086 320840787 189810238 651270395 613378792 182311465 109483168 236219355 446309651 562494068 964033375 112895191 176468229 402657779 271528453 865589233 23676189 993230105 578663383 316738498 649905672 748572298 329501526 948004841 3253491 523688859 494028564 257484554 151590098 564355858 100753748 821706600 826298727 200792941 285185087 21928498 952996506 34426938 159376686 530087802 353141460 439767323 56633102 500535936 744592630 591319413 389712872 264066160 824883950 358713684 762515909 879661903 926487038 778107802 975227793 630729131 917898439 973369095 169106702 310937880 34465442 664958463 944117393 765755485 767472432 643972893 81436142 368239903 430962353 581544166 341902230 24918049 910288202 406806841 515489670 806250445 174517017 357295738 177545743 859791355 402473801 100552951 33500183 76162807 698224617 617897204 152553687 417420279 490233378 945948419 889621880 466749896 556918737 618424610 196246053 542278316 346619093 346862941 603831607 848005645 54665635 935261195 221301027 999709808 329484711 343828784 609502449 348366732 530711937 570589161 127858718 639025491 786847929 654958786 273524671 534020683 710186390 722228559 761960878 115277713 648511682 324685144 461318386 690367057 891414240 430239941 972565903 841151612 851611280 437245574 213577992 5438389 528071815 615855212 863994928 204422915 422793751 841606913 399140729 623874855 921043119 276972292 990002013 320348458 171958927 356658719 287393976 120446321 23364737 901616388 213363362 858620776 318691935 558747705 804923758 451622694 14529450 775256075 980850101 180795609 366519562 415252308 380853316 520173552 838431621 668002350 216053713 781571686 281208693 531780788 173492541 894385916 81822236 516593214 867734919 72300689 222011009 500002663 15346936 175132310 515871811 135890471 514316637 558056954 12002209 717795221 899246451 408187320 488950352 205274075 371823252 362304168 604621771 986101144 367346897 615089511 342194291 958956042 888887869 12766002 96455010 615079180 876310149 928782599 121945904 898857106 422650617 572081729 317487732 225961932 921371101 644148497 802290182 280732879 194450186 274413629 5443843 548568934 112638561 665561835 155031759 191711249 858424182 971114140 401371376 50318173 1872801 458570449 345010535 187782024 865393326 345446432 321829114 187539841 468563117 103656348 71433218 776793345 450667932 272559471 410341265 206835368 434779351 896719331 303765176 824315937 736961353 126899278 283723712 182593306 748071595 365055482 294456298 780268750 592566735 499257504 695573429 298784962 986013074 654584800 548573138 291998057 223441613 471168348 329503409 893170009 310899971 458182993 567207552 907460565 728016288 844241062 456683814 846409571 103457387 106330705 121801738 233688945 122270179 295051151 357580038 275978540 921027993 319885801 356834494 568140150 374828559 342796355 433808822 256798616 562921333 945745001 841140735 36593511 432702301 769040428 344701860 603009480 432345208 665038653 530065922 608698555 323890853 516715988 666441078 30399244 268284097 957237331 322475014 101958072 467720729 222439878 165844939 97485666 80251126 4512261 131720467 531816311 965077775 44907541 413310526 318363381 683652457 981111189 696361045 255123416 218824800 990648567 866990569 141252944 382870345 566239105 770129812 866808184 405145590 939131167 601864536 435041042 14604636 872065354 790659205 94677911 951217038 778354320 63762050 783226307 642648280 908688074 787947884 732527681 302215141 476846668 84516307 190805737 966328765 59427835 536273357 507877208 583420897 304776209 665786972 290538478 701597889 20906798 846483659 693703342 712630952 873893312 694871171 211206954 963936755 228641962 176287297 607222278 883205596 4193360 826426432 426805936 202431107 619486166 471551318 902092730 440598003 871578536 662262850 446228774 158218779 265433214 875628442 726525893 584807421 790059745 88638256 641154267 772456465 728856556 88929154 604073911 236595341 347289251 880731966 813318150 761107779 205897461 36145626 685130251 113879693 480989169 830279168 678599732 994088612 901267134 770264611 466032044 4498142 570171476 73559258 110888922 39788385 763171197 445691363 264430578 347167114 963692648 699025966 319900833 658446127 881832042 803842298 39431237 295366669 187659295 854963151 107675599 372127667 706200715 65364704 806046979 105166566 604000781 231652459 399022424 668308866 60910326 799341514 396034974 351176818 965491848 993125813 583255024 798212653 278887580 913441569 988211631 726518914 888900621 263614186 685201386 127697004 177825415 336438586 89275138 245810217 731168616 48164020 200514279 897633210 70698265 189128306 984076642 251843187 280771824 687371941 744447062 333524000 961147348 264635848 486412030 84910410 724723753 689638909 987041442 97778210 408550564 705862651 913301011 33962583 554555747 835640524 662115719 207796835 741090257 227600499 473381046 172915039 523023750 754071863 306156659 284934837 320662273 799836725 422483935 766304345 914572283 458259909 253550246 431088085 496915318 471822981 635002600 20182121 490535403 162791495 655569366 23160835 752169727 277526781 996623178 645850259 749466371 271052507 675840915 894762812 902654131 583912633 67607120 80804257 118330776 160360512 35677162 944127199 76473382 891171689 341452633 153162272 456652762 980385735 21312259 511572516 616141922 617309742 401915506 924672225 570587962 217132138 23603929 362137840 666270483 147978956 418534057 566804759 266685316 581058582 307501277 557235816 348428595 531367255 27419142 996882081 972111805 676111385 20098383 68257975 295306466 362321125 130924274 561833823 916653721 930166914 402214173 347015579 526856929 848421419 130192769 220130592 686098200 7655580 584326662 87226218 98069665 325702894 346758438 230897695 41459860 678890765 459675322 265165133 127668391 916495939 980959140 350678726 564452619 438884438 449692095 99067792 56587864 569936648 588169224 13613591 800855160 305580599 82484644 128212654 956019686 911308304 909956237 103895997 473729178 492572022 475277599 793754325 480613232 414180678 746000059 325090288 915342474 358767742 815855810 411692691 212933472 280733220 133396361 202933129 727020861 845892988 77595344 805437863 411695195 43759299 468889027 853312189 142117860 125785037 666396026 329402793 547518623 660286085 331292525 438371552 374558810 883282857 389748042 217161126 302629140 440997353 492874634 473565410 480222043 466170097 137673185 175866348 717435877 705613295 462707389 970782053 620236904 807816218 936792819 776932798 983145812 473466910 839852131 35634504 664177444 373203847 111423752 401918574 772614881 19176465 51982793 221102648 123133512 30925209 150722497 122186759 522921014 788122409 514523344 537205227 376437756 188936948 266585474 413397510 456398759 775920718 565075273 551959242 940093313 416006348 8687272 89748439 569223488 499567199 583689269 696050808 651645018 995603897 665564164 136435634 276842588 219700953 3313677 972134718 453282093 942766891 777821362 775182854 223357937 772435482 280873594 233560229 792459480 250164864 41568965 958350274 626583789 342095748 71788300 275600819 681297197 302755198 78560064 724912268 76886999 57564309 725159096 716852782 390006124 97739525 926591706 57136261 39793325 713029325 499211749 106980966 309117385 297889239 765162111 514720686 220212127 800064663 302989420 734727164 546542334 510648394 162891318 381633930 681830022 942397803 21253496 792231118 958905809 518898988 192238247 654237444 674055473 348781769 892961841 815077907 573559906 701246769 724069103 718278367 397784925 400270011 430453077 315637215 582648942 129571889 545397946 358112538 285815432 453868225 380713447 986264187 887729033 598823462 514103925 885012181 961430365 373499410 198278397 374727419 659712764 562128517 346244479 801514843 543216106 504745546 691020656 699330996 239369449 9287940 522847499 979431797 540957835 925032975 613530380 375204542 460418259 412702200 796863122 655939376 356067199 631352262 646443310 196521045 42865690 392615619 248239305 487994554 64592102 277275076 952344046 58407182 976435399 738688271 33341720 103690272 303335644 844690912 996722418 598419785 448881190 983450279 426201619 831194313 83605993 42289322 540775622 669545013 272721724 532715687 729720383 325743041 276559738 942705394 35770605 158345787 856638060 67474296 481173296 213665176 788231232 374807921 12612651 33330998 132060574 565487223 301481087 391072956 192172255 355713528 564574659 114441239 31987981 998792117 100158010 821928331 37616650 204702700 332749591 752359822 177035908 207958930 228275084 484280240 417057139 715067423 895124763 365769814 444347380 789843016 390136586 517088440 281966874 653115904 740386339 126401373 578580515 651619252 729887475 496353710 311057846 297749622 67275505 636394334 181513159 623611017 550239248 727837448 705899747 412037636 776658162 648033446 224769179 65241819 432460662 486877257 900079452 515240923 114475038 865947675 747126380 448655458 621503610 110911849 358072011 753313528 828787865 546627252 392453122 756082565 76501979 220257515 853003758 998194020 745916345 557336784 72051927 373411857 302197008 635358342 317552537 619251720 981893766 225797783 496229542 661694899 35483963 594822196 4314303 37819960 24089405 102795905 615004796 796360183 631327131 58461838 300525789 487469243 455139816 651542956 845558416 401419158 423926545 401508839 425765090 921112501 309273184 94434101 72957984 810308354 547109366 622719847 236373879 928636041 265271959 703345403 245015581 517167365 943701280 378737000 182290843 82103457 209445392 683515745 180490284 591959833 685061030 576744575 44034159 892962652 918023362 825356334 518681611 173723712 475025824 352249973 966660720 107641166 648755720 38221987 77729610 440424334 111444802 835301075 848589174 743736145 454538321 191325912 307464918 629351524 836404514 492711098 517534901 942395405 928669991 326099496 30758709 48816110 912695360 309820469 641667482 759982437 257435845 270672438 407851200 202119210 445991384 954920975 100579473 359204817 243942493 559520462 39749485 872701047 138252744 457557935 484324751 691714875 413747398 513364511 539547973 881526200 931029174 289949036 755268719 146913912 557089611 600849730 991559873 844149526 748682301 425467868 979936554 600004076 35798714 750625816 473851866 649949901 182880206 918776921 895477538 477667076 2296506 673189595 130319389 25361224 751360041 229627533 782468531 104775257 525629661 83346674 454216493 832091116 491238973 285579233 702578406 625880696 878063594 785534467 124845574 402458496 962908012 499594195 473020023 313638189 598251461 653501110 498656405 353242077 317864442 414312883 417986982 394226201 737708019 848399708 573377885 961844527 74858956 351103029 831785293 706420724 658298101 899450440 822484361 898281623 418390136 863060041 516201687 805740782 197950432 37820951 912839684 187146604 642400278 323625390 36958343 602384045 588739120 744572298 303016031 633355344 961235372 486287022 35079756 883292544 238071384 853149852 240579835 671837919 888575173 423354409 112690011 723293735 753904061 924043996 381865274 107126493 864616513 571235068 854199635 45998929 669463235 238288529 377434926 40214611 260924881 788445278 83115697 221287254 496277141 554596437 585190931 466206288 961317706 600767800 795876949 642287059 769625613 11697036 526852729 233921285 818074726 602795216 895749843 124309399 172639000 767765865 527379339 52056301 193518585 664641165 825855107 896000068 427078669 334224335 254981409 338948490 381046458 525110750 632844714 112086153 195096726 547400820 236140487 276922867 766678990 367684758 617788556 118128423 95951119 917785992 913094600 491310184 793589121 583153458 217427631 49415731 452149267 750637271 343106515 881877007 923670082 659953000 509297737 371876054 64833306 960987347 874264859 117523396 575331898 930490563 162007563 75231336 324053242 664340312 131231335 874151036 805585534 989091014 519223688 29312334 495576473 646958628 249770681 119970485 317707995 120822239 540780832 22181746 576028498 620420222 589058607 463964067 165234455 594613861 100622169 761608616 98354449 796136437 185048496 136326676 151538 255876862 204471747 360607079 499283924 479548740 574106769 907379219 6039301 487792815 759961589 182312839 839664085 191813449 405992488 63510791 136710441 88580147 812974633 16568995 864337620 757568726 611460938 633136441 882863773 30118272 177138024 85888921 138874004 641821206 152095438 707847898 728293079 311979893 348349276 926010592 327715086 452155206 703967705 118151637 149407235 567716680 747239252 910866814 785820541 320912861 754519465 351947266 981175711 226035239 111233967 632852307 664988672 422039257 236153689 393398007 203440925 205494313 248086329 87783250 919194339 853447504 990798639 151023631 863858724 817605376 609807597 796322714 667865821 753159020 714520239 216832877 492100019 154703755 950023348 680695421 780938040 648064316 503841364 665867846 51289579 905087483 61629068 930140022 51379966 356677941 36588085 488477142 976017779 398040921 8308872 82213341 593103115 375356816 753570414 22907199 67568023 887939952 975503928 980527802 736218524 275776921 953934271 189265226 776998039 787742416 111250379 681764240 283747431 272175292 352175517 907617090 392808986 945243000 393768535 942811290 997717488 24674503 272939990 783431490 610313733 188077329 582854419 320293290 373911170 991632153 347275153 826686635 476186949 183157074 238736064 199668582 111155067 812666262 281780266 717644734 87919156 481049255 784206375 753190601 245113470 308943167 82102826 417112265 57948252 735730646 431514605 983268726 517797989 85889287 897703962 977276260 963326878 860457461 287073506 411165793 7211702 816133208 621196294 878304540 428737303 334421932 904108782 622686776 154792401 864060973 135246893 241350039 38689518 230863673 412712773 289675559 646100640 871459253 613632623 917392311 369250867 118564453 187220410 598594498 186351039 799827709 525383229 790358542 29982511 776225479 163040570 502401107 900702289 900284688 33023107 433798404 771801601 123558029 9555380 226940443 813360515 846786714 206369788 756692306 641510213 728119800 840996197 533234692 688451174 883007815 445225939 574066689 702844229 923588112 81125349 310398101 324178068 258141258 642905915 809636833 251673662 861809190 794423273 25559052 232409568 282191241 834176558 408632317 877378185 295883243 345482110 682575719 606449729 493847508 213908099 790245430 84354652 445746034 245573658 326706795 322562926 27432242 978139800 624758732 937598786 626596062 81110155 677485103 62461412 475397014 15120706 145865965 497049559 136872226 422535115 929934248 77577502 528459198 983251559 945501361 69370269 484828671 418388296 985659364 961978373 954301192 629065721 980198338 185188907 114144440 951609949 806890173 175797946 536581248 740455716 806117258 13388283 156997662 416066655 774534265 230199746 647980727 205407570 982964481 635359032 39960731 761132486 124660581 826275678 26934697 4692420 320036388 765533243 453223272 537217388 38294495 545492577 301364889 537893920 324208597 237847692 891912829 910965135 240006697 418176045 920266372 152441057 187627398 560042229 956536148 867173342 150345214 170464982 581264444 700264012 721285725 703185061 985311574 31534296 714608653 735761066 96647639 160493718 554728713 641749841 853419109 197569595 682202603 354489548 58120454 826853221 653543445 716177192 391358354 680697740 880506779 336303351 430419942 738449970 504042921 199794998 617246603 362401512 339327317 621827042 573330322 454806486 316150716 341915652 424249037 822863004 182869837 820321659 706870507 166022148 715470730 710124150 265661855 121784643 397729299 55094010 922114252 401731729 321642762 970333519 785450546 526728303 816371561 324347512 825714638 755840015 951007814 237073804 832655052 481827562 214196888 287382068 34102842 794019804 142831186 549375587 798982623 835430190 133843505 645370642 739553366 33982343 333466213 741101015 843062288 362734186 972109553 535453527 329849815 916453194 702228170 798542186 317632047 53595211 248399184 683523070 432258166 409277330 230032587 323361593 583402218 92869157 603046436 375145122 441987946 965650668 514988054 934362904 267933091 550060292 8116568 427283171 393093294 375384623 146582332 641158569 888537233 28518401 700737387 107055684 202084751 159365535 544251631 110903757 792100832 420386108 146853506 479597441 786360711 792977334 434400314 917001436 675635716 792112363 488734496 663049436 467189019 929776885 324334681 415968560 580767532 468410085 459134419 241842535 795501431 25596846 989518982 691779273 867079588 366155025 634639697 601825104 698563734 607321878 720209680 19979978 83425816 323960013 717916409 366311246 271217379 673455908 644181212 142498179 596023139 812383477 687548927 972682125 787788148 298416601 247972079 105973133 461974297 61842200 547001057 452272529 495260372 136491651 359451229 35133814 45766174 942712095 268828881 435610112 503021852 661179106 457483336 416779055 694577647 657243533 500542505 995980969 879521389 760683090 3974968 372037273 290610556 509483623 216877404 965606952 956965476 110556459 638211912 146789505 334819017 307876579 946738764 696006012 739138935 62732347 646345944 441857701 522322640 872270973 676269840 282260396 487118697 4826422 289636836 387609590 940475697 713314402 304529896 520632670 13024968 498804356 664605905 352036676 489562795 546579664 506724010 596776864 616646625 434548223 440104248 421820737 874991134 79116293 393070633 740192590 121406572 562707218 130499363 670248390 432349792 514053784 876846066 911132031 749032290 369740526 574651945 975905667 130452022 184775862 278373936 98821765 76507617 295834616 532487231 459028808 634820106 201820163 338663211 209425090 999295365 542977219 490553491 983801853 814126743 365672122 311935838 475105639 931329184 778126123 639246756 250934326 60538468 499959220 270276288 97623433 13484887 227347219 5196826 87583907 263640715 176764511 245293384 337271067 394369626 655120111 374878321 714144634 264344729 202123268 55656904 776141445 726786192 157842504 470556804 240450879 671506796 274395111 786963098 561865237 245598962 595019456 845920893 342452232 416441590 387145877 777380183 849714152 362748417 561041973 162242307 544599486 320537571 882432116 471398058 441260818 761712770 760547349 248390422 144510918 826841068 316853494 566714132 401002212 481280334 94649782 178983714 142946851 947597667 527516306 748946245 25449922 450152607 796467502 373365669 715830740 94809850 622027510 365026387 967143106 84518551 110095262 706159885 119749130 481442916 25978669 779386355 534107875 33795234 622424049 176616148 413612074 87283043 653597862 781036800 845888666 556986019 889706981 373777260 277768793 540300042 76163668 857298323 799196865 383913435 275486381 152884986 603838671 83048260 832931189 413833352 520333934 910206174 616664943 687072970 399160519 808106189 802492004 270560887 996294318 796417732 213789146 564915543 58390892 232432242 583541765 925261162 90058831 447686371 668520617 326409891 130079660 135908377 730071816 391467256 781255960 182937858 428137187 143287253 985822866 791024371 93498551 951365437 203362650 798525576 784168188 895638464 635113850 287258656 362938463 447005741 562909092 825018376 142295684 398604699 742337312 868932259 580849398 332491352 135733720 726190564 989393014 480642562 359104758 409825465 512032083 39299037 11618072 388895833 65612677 108895688 13046820 224738017 107391840 148926654 279113827 806372786 566168567 241216342 400339724 779645161 952914282 56321583 634192510 388637186 709502633 71694368 431958141 481961614 769237706 379058592 413403810 50982055 996029036 965750162 23269391 713910046 334033566 991358348 738751924 154968491 842102156 341030316 846252635 80884821 653271991 528457423 477674431 802668529 43784871 375796713 672092037 800980461 834651919 550671996 280438620 504305733 135645362 507495583 985581652 332934494 663532303 327929241 398135913 688434489 74431929 753668797 696207134 375168523 451883596 29062865 286896450 613679100 209748121 252824147 960236734 587580604 446846813 49676754 877088810 753007271 12071622 207117661 270810387 195174929 664770269 548551012 146990031 98864134 897028402 559198419 714318756 946608031 386603857 207791889 442020508 249488824 367094055 586145681 3945621 806831781 406557819 320944774 526884787 26887217 554607288 659882879 916570878 460619136 392432839 874859688 762320137 367057563 854930048 757144216 416872209 53284075 851197412 992642844 846978699 517753232 599914546 495392047 602600651 963364281 269943846 109454299 911811539 804563260 198668684 890651619 610066313 127835948 378558118 826447891 838747145 203477906 370995301 430414722 532099642 648311057 18513807 641753702 132335776 549080977 111855023 374419627 263515564 103498819 662279531 730194217 682044369 122307561 352107450 429481429 129409210 27341117 424024750 322868082 509885520 355915115 529373515 673196443 947480809 840750990 167711019 110310606 827203724 238049437 18652243 840364474 489449714 226636738 645259609 174489223 970387122 642750510 683638000 864702640 50889233 707701592 672892276 867063816 4721140 25036582 983812669 995801449 790364406 244807804 963271950 485738809 397436773 482854553 414047968 19022110 65571215 148037660 472770817 233071924 416131810 470951148 139772492 900639390 816349718 78623778 603249983 901180444 265534385 864769500 907447062 897229609 189996618 743440582 722246307 264695049 549049603 303169929 592958879 414002871 358453982 869323375 682132201 620337597 239507672 775378221 894544936 37913351 420855339 553097823 271534560 902714268 714426858 831692558 675987897 439495386 671641710 668737167 795606635 928389479 560290734 803770139 725386334 485369447 771114786 514590936 950265779 800371546 205575994 833041734 343274109 75252243 885120724 872908091 60543009 387251240 594029147 714685569 425292596 120676837 783933499 999789020 663189643 388938399 705113757 580676885 871021019 996096256 335555797 498927588 846844020 276139876 637527492 8218744 755703506 755683963 3144528 214908712 910498171 121469461 555439895 439091262 555924624 399229242 984376127 612953852 985075120 89190353 148810038 46917824 426741421 94671875 624702415 717861700 72289803 520221549 604205549 828549464 973966096 590001614 530890015 321243872 262502182 555545576 245258651 639531758 889209580 605661622 364061998 518046166 395096441 884902479 678484461 774986256 934051680 833952663 323348850 808954060 907669345 945073288 33507822 438002419 130699680 167823928 42846154 431316296 960292049 761052650 414208769 475342702 251946212 283694339 723350123 993149998 670237670 628563926 220849441 45707725 981273544 64925127 238086666 30268953 138697206 821758314 277750414 224770584 989762030 718510580 458212611 81189512 431273406 805290243 730861675 18998425 761370225 355007928 23130876 721229756 244352065 147385840 331521998 92598404 883847358 883789700 344754562 501658433 669891599 898713472 608416708 341182878 574619090 335030291 846353903 458429669 757073575 949245096 254794559 807532850 520289378 728493287 295056158 775496410 489048859 20984539 647457007 721443846 878225546 776196421 441175692 71181916 396115839 28229623 936426276 256616586 772178993 950689629 918937287 511336883 13955837 518732907 611763794 399556252 621846506 950713463 164451919 282389174 435619513 279537360 939806072 697535492 8661459 541452698 588028727 562598895 709226170 213534436 686999381 163307365 942626515 561921086 740874365 220724991 828582474 983679945 244914131 14230973 621983717 890128932 393020437 330236345 483140838 307200184 564685384 996958406 894599516 570438073 234934265 328868578 834679552 785800606 74803631 381696932 388496712 151908337 12986875 723573998 301286863 766738445 215406610 614283227 922443192 574623790 751071129 572588243 273126426 495088984 398002623 451814770 246192201 458887861 292531125 94699428 154356305 158305047 779241651 307623190 486250876 404789375 497637452 350394785 648282949 905596838 68114682 885876880 379928107 677181416 464527138 410648655 509860672 981459558 766697754 502774380 900893613 616469554 129867360 617244785 132348702 46999390 699469825 740214820 773236572 201438303 561873330 943622564 187968515 491992579 499265369 98567476 774162254 553600737 502185954 749067403 995816629 688487 651776982 902541772 619422231 448838376 549054270 959399633 874137885 92552670 548848020 412655323 973932493 894518247 620694302 716617868 787639011 847616935 633898312 679492691 178252197 503151141 385113394 550667917 357714015 992793405 154026389 455008139 141500704 829165710 719180640 214916720 386382314 945475377 805422603 679686288 438590419 781304471 150590393 316100892 169137030 528728435 36009070 278059150 535098952 653326363 287598804 770855963 445445333 63227147 443802859 423508574 517202893 513297575 958090815 551256912 443834753 304203949 419247259 951134104 174260134 50913130 848487345 361618605 856985559 301634100 713948113 799184069 385867287 15082196 399858661 289677424 731376016 6993691 803393589 107571282 487109971 7629389 949533857 948862861 202126278 809201354 392893773 772569627 968261376 288693570 446296295 433999913 847330526 604117642 770367283 396963980 541579150 654893864 492601950 437461532 553926537 577520528 753906822 259215840 334794575 147701483 135826070 623727776 108902429 965024873 215909601 716311589 422623636 723496085 402031545 738788984 92971957 716776973 470412066 245836240 902436709 31065630 16461167 55959580 999854910 483902843 741258203 308443308 697055643 640695208 999170984 672346653 535966150 671691124 966846277 635648052 857346891 886512723 284046712 31183471 89736999 275595785 301156079 813684303 972863146 206050620 34830535 465692232 576282726 117627389 914057106 625004474 941647248 686080507 297536745 238102670 463125397 495366920 540008182 947281012 778069650 215854116 662750727 976888774 772488 7896600 575364892 326223409 702572300 145535329 89756543 704301305 734782301 345615277 807903939 980066246 288804938 13458068 994852375 192331873 147419734 806443629 916231955 523270276 964433422 361006619 909516231 350543741 585400551 607669187 34243421 299298192 525197474 122905292 734787555 523195535 612641026 145850156 767819577 963498242 207471669 301458700 705271947 640097537 249486362 294932986 884542527 175113789 82571635 21118249 107388161 980220250 246435407 637325334 861358819 972290714 830982181 217826343 363013675 792416337 173767454 686636480 369491875 153176800 388344318 886098542 27582067 621675880 425569688 699874033 782385669 765108550 940200350 474013850 752303183 970439365 817009542 162341008 821082157 585714753 654253584 530991552 210424342 244396321 856340262 543108369 832504608 191404714 437847336 171868742 593553672 579544760 75907841 119080577 350860839 604723237 955722889 166371374 914945799 934384553 695970784 138363078 266908621 383427543 327936511 531628254 536141518 660493446 824881488 373153304 501079462 129824691 919960483 34486320 786422094 992769312 774248214 563567339 598841816 454824217 327459482 577649764 383784945 530221416 172304109 727478679 473598831 993264744 90864352 583304599 206808566 167610825 557716666 431963332 374686501 483121252 271535935 241387158 183780927 323049085 148535202 835056783 383798479 601292933 744505481 888931172 177676765 294655917 250759349 552923318 177116265 489098836 732883138 914718657 636508224 173644829 392766899 2687687 606142692 264390114 477107266 987962220 573775209 724022 368371189 490879679 173030083 480321421 655847907 927674345 359460679 342669299 709317674 596150817 660311173 240716713 332948092 481158717 726774548 372644291 21619942 163000588 575029641 241623295 207645751 715209091 436674942 664254153 15585956 304623356 944419643 17492376 233004323 192114803 133893883 148225523 140451692 731297999 490100539 41225653 110582717 482477194 628930943 250596845 858258259 452778085 226121603 915841013 726785101 629472029 497439591 187699729 813282551 903906026 455346364 164838508 730748272 32944555 76864140 896040101 159461094 399238725 472754307 193165244 719976256 851825856 67808774 488317354 199625099 490985451 984644892 823169816 479539283 631053728 945093908 509589741 378540664 564531468 179485366 20064788 219114186 533024503 197917773 207142691 354229727 968173822 88123030 629874852 796900503 407135347 443356684 446544834 721802872 756672500 980856228 500040949 629450573 645336417 719784851 592737946 392100154 957638818 349176694 868369427 414134010 478789833 956085995 327584542 811241952 581984035 186014035 58685432 161374708 60654509 998334315 759743654 705067154 48423934 988798687 586419636 118454714 137554694 282300434 674151305 904068793 627882795 952972179 532760785 598618709 203349036 921185747 309119624 843242850 843773450 597010476 975009356 371026349 827281800 847654808 315974159 311650176 112727494 437086457 330071202 971793135 861273366 594280560 83162406 835939956 219278592 274665169 162612370 931498698 90335787 796039138 122926991 455584348 598938849 825439867 229822490 392245862 362245872 870369581 445790183 977134014 495573373 233246 19830954 656962992 716248612 989503682 390642900 311667077 947674505 825899636 671827476 828943830 911534283 443422171 232063531 32912840 419255123 587294256 44111562 969436653 944680360 456194881 504575124 468425410 225361887 748365984 163238886 476891638 36360478 372592945 205846241 954917772 92340283 268522897 48500525 862045857 502468349 544515605 705313977 4172942 565846301 597063990 305627986 304298676 513935356 961893262 39638373 903248412 406283918 916943954 933805133 549469184 574723211 551235152 791191244 877636100 902988289 650646060 300826939 669927084 935917784 68307855 595836382 236625052 175994553 299573001 284782760 276978441 207714176 209153447 354550608 352799545 746115969 186921395 589021405 263823579 917259541 248820108 22307373 465182965 393475273 136301703 770000017 445617044 52900125 131672133 619624851 887616407 229474777 646418941 880871916 258791075 232885014 300044948 403568575 909741852 793071597 722483676 411959402 604579032 99533081 279752574 472088223 967409569 927659511 520664053 172535224 46505533 511939728 508931523 970119104 648907617 185357795 582994441 427582167 61254607 674586657 870306295 953243878 205165593 23595629 765363122 128357162 284811723 814638922 667591194 917075661 118548727 822369498 755528419 64866184 551392984 176028613 746888453 522602438 826644883 909940189 938751486 99968349 168825204 969089030 240323826 125307845 856233111 405540560 478149171 606062414 21008488 230767811 195356152 317260041 804653300 580931029 280498004 397609749 688478356 822427651 429357194 44402998 923944135 258483531 66509701 511614760 449406966 153989262 579461925 428237246 860011189 681244316 161000498 281611872 362877753 64773661 561520659 825215494 94724877 497035249 546698340 880421872 659398063 747538601 615439851 479125886 789775869 631661401 55575148 36861209 141221851 368846919 517970010 668086608 291814171 227068781 130877653 260134965 990250461 681780169 912035678 786718662 761842780 281401564 3181543 897521636 839854621 918621801 415528640 31979238 841354494 784931857 615491422 211858435 743252181 859798796 977738277 997591225 115152620 746169267 524539907 765060768 55130942 98618156 450493905 719947568 108197494 284204105 999239432 195044439 521079161 93186989 417771033 847691396 285688548 685873771 16920452 995345602 443431126 386204328 856139968 293126036 341925164 152955236 845319508 659696344 385610933 499875010 802896584 283225537 410412702 145268520 27286440 999597117 932811470 77411447 799589677 300171964 864741790 582760716 115132141 157575359 842971880 560122724 367291662 388408382 719476363 148081032 149419064 631978722 227463111 485919716 427812002 582839960 754493169 557903255 746419991 414686265 547754133 743069518 622138595 607469506 40918899 81277924 36630056 726686499 869366820 351264006 955322082 84235051 154393366 57951498 517711505 729009883 554587005 313606867 666002441 872291006 330360965 333521101 876685663 959546842 823400566 559592766 1296838 792784984 891184927 562355992 869824590 407142944 280857078 177240517 895152815 559847690 209835118 826470353 564332021 376784682 118552775 157598889 792632340 501854066 406533476 645062379 466186785 446825908 418506467 470437372 163569065 210863211 686313796 464287554 739555421 580707247 373500993 104175954 759666220 414123695 716611880 558550775 112512628 507521842 708589722 807109573 880164651 665409513 657627663 671670983 788208918 730924025 809371428 92854587 462920507 988140520 538803237 581050959 351516850 563512245 223295649 218386277 370715228 27570768 43650418 938664839 240933954 897092518 169111522 511206239 443085355 429327504 960834617 199188868 839249881 353214806 919313075 131124379 707166215 473001854 603541335 854465185 92658022 680669483 924849157 159415762 589309890 813702461 859714818 673403415 659251202 538965384 229085608 913485996 394306573 152057093 381573491 152109177 891934967 81071821 122856078 365756945 339666183 991077353 763691962 722524585 190238027 947284068 555491911 456615316 263006447 472892206 213477910 102758790 861218984 754001095 651655123 465038391 871339116 200771599 68678940 898346280 329694475 948439821 322700996 934706708 410366700 685475527 223878837 114375689 970620413 307449004 846352107 521662648 142928907 75880053 979832134 347858464 847492327 407194472 243721775 831017280 153595167 516214246 891747788 296346221 710368513 94856996 93391247 473836449 234986833 333613781 523509819 494409060 927594524 849139009 750133083 987581421 844931718 162350187 25684415 554671475 668462587 89912789 146946367 426827671 684764124 541941923 470182039 173312124 489204867 211739242 789163743 19940989 228663801 629435225 852464733 929037547 58979133 935450424 545176105 678556762 930842044 503216657 555633569 155358403 590281128 844253388 364902843 664708955 815754005 951408458 248659779 506484675 702169049 462614151 167602059 800938359 397243049 809270706 764774440 728510282 722225866 106808899 236434774 845918393 329416301 957084282 795446196 627581214 47647018 937151446 761178400 457257784 496091297 763496661 636399539 619184482 309909988 22930690 975884727 226407917 818380124 550902357 975712488 981939665 339390316 601828251 826745197 501546304 384089538 805866297 752665985 490478564 384327772 439897104 789256607 373817518 141190337 222334573 262252205 345920172 359371180 54080667 184756407 270676849 992600688 427155090 721867386 913580046 813672471 776523867 227752249 94985478 912334321 64036814 12128342 44626462 664725017 911804137 636437694 449120996 734699544 970875497 571294574 642975350 31175450 923245959 257766005 594483301 369071938 438498540 285441532 538841594 708599191 855203678 530298656 573340814 783657000 107655509 431918802 639033798 853995971 900651448 79716030 239685000 258746457 530820734 784354985 748927014 5946276 379786489 69282952 373023412 361735863 899356796 68240685 143274776 672212187 876273986 163760752 35329436 579431150 639694762 272421862 594926839 502581297 202161725 976325151 688899850 316756741 181203010 425610458 740735167 413186205 297017675 226102401 988788109 834152124 679674579 999976506 745681624 31448577 650384924 903202340 15946259 472810687 49376693 175565517 601145449 255076779 15415756 518860907 724430213 753225501 769191384 606641783 506267555 649912133 225498214 659627627 77926403 764523791 479072758 287259477 569365453 42265281 545356846 214063213 606528739 749851609 359222123 609641374 252016603 97193168 402819136 627386219 643684439 663773862 859803101 418380537 334355475 893797167 915372586 13930943 761304440 549957858 486488572 842202485 601207495 805545121 777354746 830293973 91941463 268014955 282759617 909124584 745884823 349826962 832072756 101547851 150128234 134191789 28697510 127309312 630875052 325530482 644694651 432358020 800947336 321436295 584124944 329645850 890556973 587017247 264833301 116905776 741221604 483530445 369211159 891817196 352480998 39525672 198810295 391005629 425970474 623382854 860991295 142931449 36097866 641936023 524275622 860707844 691622458 776306846 370508540 343350745 302632155 819288691 158324492 670084955 684982014 286214924 977942709 823038923 39052797 649551949 923724442 106302954 156225128 330957492 12805555 499907318 31169837 278264824 508612844 649069985 409520917 533468224 567899875 142829007 811450579 596950568 456084882 973517660 189571969 508496852 58136530 967886760 479482185 148460734 209372281 560575862 436207934 315743004 368614047 58873926 311212934 646291581 867163287 895460756 18487386 892459775 946285784 1235650 678370951 563788999 70213299 134932046 589644789 189280746 186042444 952892514 824011562 947819154 928458336 409603033 234101752 357243331 964220835 751146775 793633147 135685148 261399375 551496771 363251086 796627333 926016691 501775532 312996818 872205383 644985996 273666914 187820424 793502041 970747496 321158660 447169953 130494500 864016006 598019956 970157068 150749652 45173486 396876145 634990414 533449646 767468454 117102089 73376330 917898200 497961060 296009690 873600035 111115318 266259775 909531561 267640047 883997991 718028295 250972411 74473545 950069305 695985612 215255337 271879437 320774363 975792986 611443358 330974894 652247938 901313124 378920827 259624499 820367467 989511903 672893349 712240828 169731737 601125531 287331306 323250415 913557263 915051553 407698683 936313260 282979771 381088625 376732209 127170485 220680916 95861050 721730034 646486384 681447027 839461901 254659026 131170880 672985043 259240938 277660080 808107056 60100252 107844051 122851015 616565943 937288498 919193322 574428638 289612022 973923007 697398016 159750793 526453834 408965596 462390716 85538444 135828161 364289368 936596985 896489680 806322760 490340187 144491265 874434516 234972226 559679120 313574438 870669141 116660957 446583609 150036413 235881962 701298109 66636954 938160922 608763234 956504509 400634048 575724347 678526350 392595390 18155062 904504520 261036536 159360651 619955473 98554658 168264849 528572004 503140932 525369465 582691599 949831811 772012721 601516581 938382565 622389531 110875182 855431433 171461057 451049533 33971715 54705361 863010829 485179538 103346641 833995506 647541117 999775874 831283563 889770418 880179669 370365209 123927441 675866597 589144981 10905098 814303161 823214722 445509896 921925840 373166164 244892633 104054729 748284205 449502030 130973664 682790417 653894387 455841977 203312188 627247092 125832819 77133273 467699579 392092937 267327561 85017523 370895908 762189132 686662701 390325286 962186487 871498106 228759835 229300236 528004613 873993240 85321765 927907787 31799999 673935717 850900351 493418401 269590782 295251467 657769382 148571259 665057204 923829241 279588592 375175124 880205003 768712529 8173334 779042762 127334584 490113333 408645623 412931105 427166779 167541948 425270217 972939968 968522061 981287042 818768956 463286195 689987907 784034308 895312464 351936302 586127909 371163231 782141341 119016482 154101601 187571712 706888924 76350797 487523814 362969042 830659897 538762079 644070868 572733899 243162263 897152942 588646460 882825972 124983831 367371565 434198628 933160391 645716410 827498645 737633144 474167379 403835693 270986622 459252284 494384749 136959684 461620301 537788681 444001236 23020613 380057475 473079276 467523475 238636742 96243211 246506026 210354807 685887385 92459731 992811809 213468394 208658321 349135234 555027529 339261445 820393465 705842991 84290458 949624664 547627806 174505834 13610770 112828890 736771637 827989470 316477669 664204410 251759729 394967444 825879189 879034172 155718675 682265207 401392162 112996069 374147270 513797764 616390481 777102204 665596142 917684764 932627637 10738532 51222624 635547664 387059134 451496425 858740124 555836931 997532879 12325683 280437549 483754143 974783830 521920643 683705290 641524553 935919657 677449560 235467287 523914433 27110045 59150697 699459677 461427353 409082790 39193689 650979176 467064022 509328700 14243984 314335524 281389099 322388831 402930384 41523586 818668297 317392312 454185970 202172964 989010577 315043174 716317433 876308863 565545820 774924788 715877996 439392938 981422774 845704232 101996685 644761989 913686723 749132168 661390718 894074509 348323502 649139048 697362561 479558609 358578277 520901985 669678441 86663082 303137593 718436888 195796429 864806693 752132076 116643314 568368263 584174519 539571320 697585677 973569797 226570264 126614967 535979456 80364192 968218573 266961430 93875878 635891041 816670006 632033879 886681666 958614467 469382557 936663772 337271124 109892504 396717214 58185708 991092180 255125390 406881410 25588783 30847248 610801442 551153087 595117232 724359874 210772926 146238118 886721226 270379525 652295566 227156215 283444409 885220042 370536814 315007287 68493774 224868755 718287677 904377449 628865422 249329363 767881622 331563105 910867221 673392730 875138994 989688793 100524413 558199036 166363688 485279872 129086981 242368788 340827763 192011449 794145983 844638830 195317463 504977295 340413401 185977791 840356591 731865617 875806991 701532462 800952944 305408193 509381568 650721888 687130397 481640606 614334897 980788068 314846579 903466266 946286572 760909679 237814320 775108599 95957979 635077808 947808850 493867394 611438363 326200947 765036084 532787107 437041378 699435442 776186275 122516068 258042347 90096276 45328190 583562883 410882691 696790781 378585284 144529844 743050434 165192632 635081652 649407788 229193837 424363274 604408924 393540805 942604561 438790303 760295439 961474679 480148643 743023543 522149197 493367264 795818863 269098399 169341199 391013854 746204507 955584487 386820693 396938723 432688758 674705190 810568004 451851220 665637727 999490777 893563303 445489749 842013023 673389772 898951623 244266250 239925640 908900259 325453463 286365874 920862556 106381353 76002361 867828938 472114797 201280437 493928213 283022218 926295785 117784479 766821271 674250708 32767930 146057514 746239184 195119814 607709211 344196905 172263499 65357892 104949354 240126201 570175210 539314895 587305082 564349958 813002472 714047990 709060687 936311034 984580309 866227570 704213739 922813593 955449836 587977497 245363165 475457638 681963218 22555716 991507084 4557359 339959905 805274104 289493295 998899821 925490122 446059718 16521107 913675281 204920005 228751885 801324645 310517874 196592919 156161118 403687165 532698511 586158306 49771559 268909145 115300979 149075595 839124402 716653977 946151008 951985051 59583907 536515606 174337502 522349102 247145221 337899481 161825998 990376582 906557091 977825130 255118091 616468478 776788144 205391981 295246607 583979730 485929239 99842389 287044521 614499953 349700970 282529164 632819940 964746345 637812880 284627642 311382954 286390213 576209721 250330371 429726150 338643121 397539554 671223702 602378197 621527375 972060464 511663670 98752676 943864298 897510864 177933608 972017670 80677057 244340959 232117324 217254977 604875711 23475300 956748716 825100104 203389761 391555202 720061466 374891212 428759850 958562136 846285120 72994966 19509658 253462584 204332304 962360798 216562060 694930784 394916546 100780742 912168462 664403256 940408586 908491652 205664954 658244063 658486641 790334397 835148031 314713926 582171525 640513972 903913545 955468183 781885383 57099795 952663049 996029197 358846108 868564145 322110114 664318445 662491227 175377691 538297539 204174967 495312394 331675225 995517053 22339817 765904629 455738537 845360825 507808138 78442082 166898607 813790246 830102751 984003198 316595846 859144549 729988846 141087013 8041271 707916609 859510140 525206598 818349250 144825738 797190358 39421046 99513023 371424497 711214366 28308330 216250272 149687913 934316888 178282392 709543161 809656638 182146906 727332067 543809052 860281127 150426686 794058663 43486792 408835894 714663340 279093349 892297807 215527251 896408966 598312568 821258758 965681438 39886640 770338988 476302183 444196099 965696370 737134963 173804043 625516964 665133895 66964851 159320025 827241511 169926768 184403164 302921976 322838785 573040246 450892443 376060872 855913112 989212630 684601840 886812869 832370376 343666614 112899056 385617811 340061262 896768871 441458427 614980235 578783614 121933645 172178393 694597641 948651219 338069714 83035290 183469359 682277152 563337492 300801579 4906789 175477615 408451946 758882774 413452802 235743719 619880048 460366185 882916579 718386507 213614139 934644639 352925015 954275325 862204154 516301876 790273546 658019179 438062569 88631946 122266297 348980114 313031750 627621373 370508666 598486592 525490510 679439380 453649680 764663664 748594877 52304551 441288307 459967783 842739086 891435908 329676507 100508408 25535934 879452702 148692392 703625182 742283594 17882545 698072821 515390469 223164451 995244577 778893245 470522828 838353839 904856780 864598026 890356509 569489681 377275381 991625595 886629359 231847406 917042060 976662259 601701439 770243947 932815994 973618084 149668603 440284531 169645581 470296854 323561487 170342961 423302133 484346805 921808511 230115668 400697404 947988616 7318299 293175334 49862966 53161626 209120252 398741212 397317586 598797792 673273491 415720675 498532360 811401620 660518705 202752311 721483922 743833506 509863048 470789090 713573659 413053271 426240136 199605888 624699929 731789305 609572889 6418954 835463586 695345810 142443263 502306580 874424624 826292686 7316653 809840624 634316600 580350783 840630498 593877488 339821628 171570476 162094235 536918337 879627070 833486143 864091716 450626684 510216676 343687514 14626542 234346643 930479868 343967413 212573927 736950742 743872744 955786127 97592958 421865199 44728832 862242739 501552207 762535270 441477946 38989266 207283472 817445312 678097846 909035623 261530595 876126069 320091249 630457523 305876105 509063385 867030159 3196383 776584147 558397853 310876287 471323304 470046903 774738498 861450435 200179408 891916851 432306598 588594329 586364219 242323239 971054558 797898898 699185366 281599960 77005786 22265512 786834063 345274375 910823713 910674724 990836209 990219704 651471186 470259259 995419527 919382884 474571901 957467769 419151693 111755858 664794305 351790800 184365704 701601864 909133573 56107873 569809972 49296782 795139995 908293580 516047463 864556396 348479056 755792729 739782152 507373900 442292038 421155411 553601957 60286967 383841831 573562216 804016928 422615136 303830802 905808317 976217466 191110028 533080441 510225530 477239061 390284408 333629277 680444772 801611735 622855284 122535266 359701112 753403513 585704236 671610955 371660721 423155841 629265404 983616294 536909004 648032121 476793193 217180523 401377790 432714612 164543052 114679086 468943664 614799881 809161055 506302565 842716927 169417598 322144490 584364229 498452709 801567261 749637560 82730846 389802381 261731927 445407111 955444720 235573227 48928960 996571921 1621807 881253519 591132055 336123096 465674553 392845779 260392482 657122830 53575438 201374915 167072774 573730674 984838439 948378345 864434766 529582871 791468202 980629110 403696988 502060003 875177101 899598925 228679342 461844164 986748956 705891636 935144702 479562987 914284479 460443529 84514222 23557182 717762005 252700019 642901594 170796653 812258235 94526769 526803222 557501710 704281658 316303855 749218284 936810688 90715009 388976234 780213970 481253946 930100111 95026742 321176828 468537793 741764173 910912043 880777351 610154573 445893842 808492808 163566151 428981461 194322945 438522238 85492744 858628498 55083114 795735109 448775051 278176396 160150185 53758164 849415383 285313681 215163155 261708853 485230706 67557707 621246836 702403973 153147599 143437774 720832202 809020439 471814212 762249162 701399091 810017142 521581412 75146985 310027911 498536171 259178804 499295242 937439200 627651850 111105711 774316800 302405281 761913333 785950540 805976547 409593210 85252827 957901598 702485386 702391346 285329526 34347280 844494937 713842943 940340508 488474299 580147885 237527041 226391930 315423423 548604399 725979121 353580891 273673977 967700020 986897283 110865427 192513670 314234682 837550741 697429882 399872369 891624852 113473126 482477675 245885366 929356444 584574496 359797141 214819122 244115718 81905537 531971341 660516959 231240495 161116354 594142106 376963885 723174350 473457420 49577905 473375725 831606377 110187011 781256867 564742906 62997636 282664829 116907388 343409780 274216259 500477212 209452732 554192449 458785199 800252051 228512386 643008755 255984091 577493232 63355622 246613048 874687593 509436444 263008411 828182435 16039228 13295228 732328074 494949633 186806688 420340074 336713474 472852180 61228786 806561488 934923564 104334223 440866724 972881855 892111340 493347022 161235457 552345682 620417209 311435187 116070979 250456866 423456737 477728887 482276531 238025356 850005494 705362792 204573371 820475542 340286904 211531390 691580751 753959942 200042954 986251195 91546753 424351505 543826933 360942875 845066673 227030533 535443937 247247642 745511247 940584714 749922779 134499080 968939119 875399582 25211831 592994911 512272470 572814324 49588132 65448458 975882166 572850487 934646679 190856919 427499069 991687830 578313625 427755135 56252512 291303347 739834806 193055534 34523357 52823708 626194716 462531239 34761435 170241803 408363705 417195981 656350610 617815416 687353699 317400514 871256317 541483166 323556174 84829837 687096284 315398025 311176938 296890121 595029932 368210433 920435990 63315647 682324983 81569376 638179786 129004596 604987170 177701787 136792494 379422626 581716319 902533161 361509255 579513610 540840540 191462201 407588166 408767433 267426326 48287172 349424176 20195579 276502881 440222500 805615539 602842679 201176595 751405219 340919060 360744065 912959537 132032394 91941614 569579084 546192215 937835353 42287434 129333459 79776558 933818035 15904243 21358697 100017314 425726933 90997062 463770376 113685680 754797949 302834659 738065556 642007881 895146192 671282459 759849029 316238100 508103245 110678961 542679076 767057190 912500271 870007048 166499834 783841000 714434076 160188331 964341373 548050029 785532407 527416298 248375203 339235053 979004343 355346260 518780966 755389762 742129104 117373583 299114483 945176512 176809452 207102483 606755690 965199720 464062554 634111076 35352117 417191350 395302050 412805634 549870894 924008563 130664136 845441968 913541688 295541042 177731124 978217187 711069441 55559970 11762353 255460726 222818388 289237743 144979987 683926287 500396359 967731832 587156387 836300942 177161954 982417821 489788944 848887250 733507723 432684211 606842419 180405189 5356744 281637985 841614199 845639120 568538953 535151252 605968238 183442144 432660056 402910215 474230657 224196097 466552641 52433246 967896845 252088370 494347095 700943331 142912507 903566065 262920132 312503711 485534025 769570427 398036260 540465432 725395909 495116813 617473041 26149104 952862956 155034461 489758055 712998400 414197063 684249778 702241680 361553030 609421047 231738068 601725250 172880531 694413263 761319723 294475443 175123825 4822849 943391201 664643974 537579407 757914898 889992723 352054449 468787973 104377606 427807799 303667716 480810296 431661758 94110404 476574915 44521567 199965363 236660424 471521163 903847708 526398128 638834984 10287735 351031517 857831206 685874607 943349863 368723362 970796267 34464965 698026169 706874282 932445707 682527964 207520156 781211407 555419386 38913073 312276504 360394136 764016229 10558873 306891948 466708806 739020974 880638149 917774884 518772426 693728330 19324998 337338559 253875712 632122576 349590438 789563761 731265652 735051509 98543583 590465975 166243555 389320428 821228219 961173953 688487824 191797985 795130240 549876452 843057041 833534202 585012092 937536816 794674370 983070080 722742823 114159237 468587734 550880336 864459672 183873313 52017549 532767823 141039243 786096131 599399200 753326761 690301133 519176235 543817922 953310228 454043074 578231970 33768134 608778995 735783331 646723205 918851870 587619630 594925709 68356682 610591138 609847254 637771218 496791988 150961077 287689725 977051794 935592185 507675437 515155118 647543489 823326300 490802410 125329037 485619572 652124251 707919454 963161594 910685943 781655459 591849736 562170911 137822493 639319807 758632611 389126028 497758842 926430125 988914597 345370348 484840409 770225772 566257697 680462823 838577066 941281355 497207155 8267300 856795840 468356355 405489932 913256376 51359030 543194171 904392981 133095436 571349323 853083541 352689617 313874286 299549696 775551011 99214620 342959249 890817118 163347199 746218420 869163165 825124469 679931995 688633319 301581115 221525134 529504440 640710894 78628624 843965091 189382417 919894937 624345696 523957079 432500703 588186963 419660218 128855697 590605521 838007831 547429259 323803068 664818305 795718577 707719694 694282886 896561391 440208372 877671250 921083961 513903329 755807449 347339360 688806182 486387103 533300666 110719892 790361483 593366816 283229314 420962112 682672159 286566720 15512714 936774689 191462480 123397278 162375818 57695374 504937508 246251607 191131066 434115368 999663461 138052851 686550587 726810931 67252048 965551983 647343353 175291679 333813878 487322139 496854491 241438941 568490885 892666234 226110202 452476389 762320312 316213069 281004778 730586222 180264382 649566545 747302851 653136060 527839764 212630615 202231635 598214242 40414311 125983404 882376501 198261423 842297339 702367174 652145492 437163574 238579419 276304289 366816584 853485560 596609450 755132241 984044472 115375040 43418354 999199038 470029951 367003561 681420166 150004672 416667757 310270597 337615086 222721954 411677843 487757993 680383555 450992188 527445153 968506481 741017639 921588960 72752551 145881087 403765434 965840087 669089829 495010423 335176536 512319191 151424281 678540007 686991004 246034990 652545352 210150292 820988242 391374111 850583756 685932856 219534580 650863952 432067415 666883279 135647466 34267697 178173626 434338875 12856787 12148189 29851748 509642743 463196147 903074488 564026580 772302774 470483907 186843411 880550328 574311077 766601097 837002417 553531426 828346022 497999591 909060860 509274530 910745112 177714725 484210980 837649003 989218079 617826022 813030383 269163448 853854305 61345302 643143196 55533008 41720453 205628104 428763263 685548591 78392719 840429443 100432209 43841000 486260465 462376207 792755023 128974177 950912535 178510373 835064790 704809194 972217303 926617 74845334 704574196 746955319 738714182 516887966 345411871 144404968 536284695 152163079 368307650 628407885 274074688 972007050 976544846 548860038 175055287 16558674 343679576 546862002 21746511 699320252 139114750 402671515 265061414 466330890 682243218 945182888 280480341 150404346 41882934 604546345 984484126 193303143 28991922 645008157 383395392 196417409 630605404 352343400 301877816 648882648 917853542 814603583 308576590 590496812 268186681 245919147 635917388 563875942 210880006 291317935 964314420 32618919 698544060 900274012 306535879 484386526 857658229 37651898 56789948 804008910 469359218 619184410 159913957 468070015 195248598 965729314 847261000 327168284 582654474 53108377 983849277 644774377 768417670 398625764 20223722 905609637 248284689 784853396 26529607 881534866 951182638 170553535 770799892 613799797 586462337 367076873 356885861 7527538 113027068 476519441 400140908 4178548 126527135 542257273 127770039 732532765 510596406 194343139 720074179 899681359 665139493 217115994 819065478 423496162 629859891 718414547 447712363 167168363 22768161 724616879 92497193 877262833 472198809 146435920 204187939 116898049 188378594 954514194 703373937 172687793 225137807 197244269 79925617 670418087 301092184 37585954 807237484 766364834 329564678 795560170 112092561 146440810 709861531 815946831 222673364 918742609 940335445 169827791 833605751 165878064 284911521 251691903 308654300 250668222 873111627 345450444 708472155 622030446 649911947 383311884 367441132 390491204 854281180 224127595 572474395 565239878 639952931 993536145 359882462 157136048 142111365 577329487 397340303 659753258 573224161 345336851 633085424 564193493 111098762 218313294 59664761 205102422 179233692 417102688 187457462 737603979 920542551 296947527 642179390 618444840 939420677 939446687 156324852 6456474 50560536 226906157 324707081 211002771 921894521 528766493 90352422 459813865 741404145 239346514 138703318 978280678 616960861 721790902 75919767 910627569 771463138 416395074 158484433 124154114 636687712 909599568 709425860 537897765 641145981 391000314 564970516 45110981 83281035 726526227 140392898 203330906 554728499 523926642 247884897 171607307 318482348 188506200 495127970 143981730 404531958 142484043 639074908 60856363 601832215 649204352 877762997 530103136 698991024 877216971 707423851 663129917 854148279 940790584 156161773 246173003 744111474 117858953 487099927 432322044 162197663 891905183 462370207 935317205 117474139 653918179 954199508 628181065 661066256 223891243 725649309 959122816 292374138 256907475 190226406 547360698 506498934 338274365 697024047 851659768 102712333 565083217 498455871 613069526 679970279 855088024 173097357 113296534 854135588 617169951 450075476 393635663 421147133 526985227 303451409 958903081 799833547 939840738 397298550 682551300 447125928 973962370 456621588 173263432 984322368 210455199 204717115 983906509 870528472 318554961 916053787 172032529 8306305 976725957 269757878 182254514 682050585 644014212 316610940 866230160 813518319 943370492 993404376 451135946 894197704 194397068 499970212 572420150 357850191 303131236 433941641 349642147 838031105 827825932 134149497 807227880 923404984 883817087 975078825 141518364 56738637 681576790 282299283 89157850 638357267 774577630 504855254 29031737 560203777 494775167 299413933 148629178 234175564 991505813 208125129 895528613 518083453 159431865 759602835 675916164 698717040 887963770 697675931 279756288 381050578 710023821 919539772 683217143 603489474 216139567 835563154 917193971 672573177 358486409 924505653 479156956 848005631 219538147 679958399 731181066 757698049 804228472 966031748 183303301 801173482 739635717 957780692 147066310 862840027 431878173 967893241 722486097 212024782 86244679 790946129 924403312 658257996 425977280 912974612 345714657 347477166 705198800 657108562 895813247 298439960 194975665 970630266 166320215 859233393 21536538 957215703 474443597 613712514 375010643 506152609 718217848 949950884 139093529 739897198 660980758 481537266 613421910 921822444 537747346 533095830 962733069 253193224 434664855 126967031 507367355 284375946 296294239 335091928 37424391 197520710 785071476 96461671 628037717 954265520 740559811 834457752 845985820 35944790 753212237 328316700 895873446 144612741 966399638 47652747 766017866 621707127 385018953 940729185 424993695 535865589 697309532 635278055 344346981 65382919 70801835 959141285 324457681 651025704 970144431 601801550 478367848 561727833 420868812 254800619 941705485 519429526 589953752 604347305 928698307 881005542 546719784 282511446 589492136 629226256 991780754 794128045 436390280 268249937 576816712 480988587 865583588 562209692 795101241 954677165 909663488 705157051 348620601 293136931 739754324 954090823 585352635 95176083 262083155 279551579 227064846 461409617 845633661 220328649 710713110 930149770 664626824 233660436 108708293 497182723 96545964 265062741 679708712 384915094 782215840 828781949 440156866 92725914 386050474 237790852 72378882 512545177 685416590 133958856 405411873 4625779 693799755 250751340 86662672 676153919 113645202 770806842 544542159 271445034 226557387 146555505 288160023 27671626 262406580 332788810 488100629 213802881 215335977 234968484 679237612 108931039 51661999 535990614 443171131 509778185 989021533 713000959 125399166 811931665 267241866 152123510 474806314 900739084 318751654 922291653 84097881 322716194 890276940 85072970 327069020 41616709 667554707 794847893 212534105 50902098 351699959 902605803 389971221 483012574 734642383 453548769 246565997 906706309 249075939 808267655 272129501 516560354 216087207 322023562 478226965 770446911 924586296 942344443 484323292 140294059 661164275 106007101 884405391 155919066 870485918 863044094 686425527 558706846 181643491 288988232 862159590 375477874 745221749 707435969 863592229 903984953 500959541 161117828 246303341 678605329 837791224 153993661 694559331 500252011 37792865 609346717 492845017 651212897 186910702 566747336 997351746 529209590 427407728 7878230 741577462 657773881 752597040 684800238 160447010 35796938 339259453 329503540 725878671 768440503 546571601 100968386 669005652 107592828 469678219 170343835 454002472 264613648 661918361 785810693 231836483 272527075 901794871 829442225 311055887 242066197 552588789 910470799 757126156 120702090 520121885 279730028 463927979 452741764 51797134 160847181 24784148 490397903 725640684 117729697 259253424 652129810 731369402 212190550 160294505 549598084 679776852 813621647 757887026 707629093 984001055 315300489 346350713 825559811 459468401 559408993 913508874 528143724 837373441 447912800 5547799 76303526 614507369 722606183 224226075 698398370 929371937 538364957 116507548 910182243 362801619 751717728 254783832 593042840 687959991 703725696 888529613 101840395 29558504 660667776 174858979 5803827 486561460 920067363 213819660 536873542 995678448 196750878 135170377 79408321 639525515 542954541 645265498 809531875 782985792 138484906 549138658 369471259 993394373 686710950 585037641 300911408 796950225 86291554 997189698 516482398 118478574 862921278 766518720 57248380 173840873 448625162 483068236 852178419 966902881 790481745 691708734 886659886 165359170 992785386 821812183 84208901 709421535 520934250 91759834 924047995 936404350 447049960 785686919 220205186 291928792 623377356 574483647 711238693 130468902 964356479 570498351 318015 790898045 504593774 679909917 84077675 86222060 748986469 255311919 771076572 797447479 81705868 329336235 566523701 91564989 874918730 419504040 235020128 238709685 139724964 296834311 509974416 233125820 691245014 384650885 234397474 745163967 888722557 558968674 111945188 348001749 75306359 132770444 485197603 914868308 657218351 805442237 213998173 775347058 243914961 200617 967418615 805937374 815725632 477354442 472280091 791481489 134024025 561197704 331607095 798905108 374957789 512834205 379765207 864505477 733062915 506215702 799910479 128161884 995977924 637546738 770862846 625416055 384863632 136504668 739509197 155916819 738440436 928094967 933313278 588173776 565253195 854117188 773626327 16461195 324872416 241210134 758429359 974893362 658856497 614778780 7876318 504382499 701493047 899441771 617793566 596472042 961079823 697491203 994061145 222048168 953304362 103619182 691719059 529449433 986559304 391591184 568809727 157215508 209268521 585320303 203740729 377249818 805169939 58005678 240756876 144885341 468815487 332859718 531160884 321472975 533102715 540057327 266138774 657600395 458609029 92462020 804288300 733909852 444014662 805098378 45895877 12795673 65415648 445709568 985314170 268248947 968285490 846323738 37988740 421220336 144061785 810018088 827098665 680910990 153046706 196396915 577941852 440827799 564489151 813543204 770015676 179515946 254648396 151258438 83269335 964769288 347455380 861580321 542031703 271445593 340989774 987598284 23934828 858404977 270720105 729147609 331002626 462639593 67180650 139956092 861659273 485777060 235304217 988152917 748996843 582443415 344554129 681761628 221565094 88396661 12777065 2242408 649835115 976431118 482871288 925590936 137444227 652123879 329193891 344603958 25608158 373370736 127764597 833226331 976199543 647993413 218647218 934320026 217384105 289004924 407008810 116753317 650843128 45879762 354536064 62166187 624865190 92422284 587265953 123028000 856866609 806500057 78295214 668602915 546021054 120568705 481199328 802024025 623984678 119737521 205213141 437721859 796722511 410350972 457580379 894059413 205433986 176077410 851849975 728838278 987529918 870013638 786990062 626147573 592612183 961719004 194555138 632351056 24249479 146835331 485315523 607302754 851466034 381574795 226968516 743732188 635596490 118711690 85734887 282606789 30439530 73126092 819355638 710859395 726957182 334837946 128333186 744465003 107361438 859755192 732868623 517925788 195878911 677291356 995211642 235636333 7075188 601373780 920252595 246334996 765081454 669656449 588390397 567542930 784967031 696748052 988301771 932526234 778317021 257935827 858557348 907833540 123461251 221206489 413391463 688202914 161983642 457190851 921451763 546750418 879341834 952174462 146135529 493625896 688600134 527730559 559599366 632635666 951388637 278887213 657612961 632615933 340531110 829411087 847515978 881609923 991289806 579151909 307643931 400959195 830718471 330400643 325564894 591064096 772619625 73051511 223857174 534915567 322981477 228335889 955062008 20945817 977792522 265760473 245266411 118337158 106078265 630390903 929604579 896213264 589412143 708892853 460351169 978848482 549186740 48097925 841421118 719017940 545296654 969043901 723637741 59697201 819407288 110383561 557673335 852772574 793017850 955030403 826909686 439995771 919304741 111028592 845443704 925935858 35936913 812283782 369015809 825964771 916486615 951946435 26190763 652621211 886199062 873693423 98149663 458727834 678268576 677303840 161537196 24178887 863678763 601014379 760060878 964387055 874155183 738010659 474696672 109738595 12073411 231410526 518457973 527078138 971302500 467339549 463699140 652529867 41694142 335199064 261547503 83232050 835470450 920917063 488430896 414277751 829077065 693030987 327189301 743579360 52258771 257547793 917259046 889923401 808329575 42401745 736364625 204280350 73040125 703564869 341270948 555799139 222103690 921351696 248091354 733940725 825901055 343161473 679816875 139182940 199944884 292970267 457929310 901666317 856109782 759912701 547143215 977336142 916782350 630701198 491622587 770047987 662046344 534456224 460312492 692876637 282798720 26759873 402866357 407157165 66865521 341972227 188191296 594782780 495548648 691559557 86857339 921901787 707696134 288603068 25348639 253400535 921871156 151566299 355429079 83466772 294619448 482733047 544607408 119868571 557645585 786215426 760598737 966964703 92873643 378991576 864266625 576198721 439217325 954331636 375254423 172318823 763447224 305512079 77575878 50275070 118607543 750582438 221450347 218705752 502215022 932789414 945859715 824215621 157271393 306556121 640399779 426711953 306406357 977971417 197490551 296434782 43339421 849269641 716164450 705781313 827549671 546638484 334103695 920688847 244280199 489421172 861868808 303044425 354096001 532415138 314295374 7176338 38456573 153802010 700247123 498388873 780832663 656158952 534762830 538479634 394336667 558746046 229031103 757699129 885511996 502670693 237667372 736440296 684604892 76777017 145012868 731321599 913469747 865066901 795874260 180216848 114411046 42700379 733927498 934437195 76093236 50413671 134481072 508690699 667904024 628418005 130692302 990074093 742614842 438419928 855943079 305770204 960874160 116232057 432151085 446302350 279263095 995216308 198332351 554817858 907108357 580372394 187459969 449951021 18500054 315439570 347377970 936096860 635682026 630558776 59385968 733507965 490578569 101635981 734863466 249773794 901508145 833998365 645221001 719855330 191172672 918890651 456323991 894104010 831679782 616494047 948955787 20660405 521867863 675048746 742111957 30864070 950227794 811040191 691152942 604555601 691382300 836666775 697815672 554838666 881882170 857969668 221296292 163540025 809836153 526211402 607478946 117398916 936704838 834782351 682896301 865760704 389920149 122391521 498645280 213183388 336352518 188929877 683145050 126975721 749195630 657495728 461134110 52608358 792347346 592652925 980530720 223141131 382592130 993720597 673337436 705203350 116647459 4481345 962266078 990528475 362973635 200821007 638250260 290172060 810628711 394296198 44300084 412471900 4138817 946852666 435625587 6450559 425988094 499553465 230795276 511751175 441755709 155600017 579775324 666818241 613352182 911297962 182977161 80134383 173261469 344943333 337743883 513119433 313406954 42923087 383389054 651615353 294929622 461073970 742291590 878517165 613779448 150223800 67823241 357168784 526609243 577295761 558628479 119653049 50500577 726232455 821946463 529707024 886941114 406389539 983036799 455812745 58077082 399384814 394457369 512918284 187932453 508324611 356740921 168726436 421897936 157156214 17084523 772437019 355211401 142152880 844944148 567013832 490937857 250568803 845802428 960359221 109252432 846651045 703551543 833338209 760118904 549589623 115525455 769376545 876925990 562585216 178973736 685513814 473620592 20376417 248863342 643163623 713851558 666951267 138174006 150116654 130287771 225265023 415376644 4495363 792201682 789404869 376851907 500801962 715367400 231442381 566827271 668504722 293287125 199904297 113597545 840655870 683533732 625552958 875492834 315845408 276181051 722735667 884743152 953862163 901268463 669631211 554888221 662268057 973273796 228790040 823731048 335689362 184952445 758882687 624295040 716031721 384232137 626973351 14725592 601098913 176618804 496152628 388438114 610133425 439788282 286572101 730684557 839473321 528471770 932981276 326620713 302814642 289497957 593946723 565343014 6630630 338891186 201771010 606540417 653533767 707932298 481887148 480018540 671404865 583672399 737993237 329661772 783866346 633613422 740511794 492028038 742985963 28551625 49241024 961802249 504759477 335088087 454207123 416957363 29982952 126648329 465808842 422718657 854667810 981957821 544648821 456454422 4592535 762273024 473524163 592955630 779508951 762674267 814233948 716719889 773181852 426944891 608123822 818909577 766945991 798376507 98991204 439948712 895817173 224846117 571278867 852586892 55326006 621141945 106235090 675294055 862878597 425292657 589226085 637782446 955822553 543211637 234841976 947464567 210803055 264706048 875312657 744653935 179037390 830210154 670347262 80379851 186390966 555606834 955308926 557852991 463321574 460101072 292113834 658814427 495331673 2419426 809685279 294907946 25813472 429956180 220244864 388897531 747478071 137493048 612070460 366708922 861715470 521903566 660147983 995895256 659407163 14041576 416420662 245624551 171152306 849737723 232135945 329429585 548297353 370217116 946438814 348747574 112558819 763569939 431843252 998332766 742696093 100033110 347431417 179333684 196228233 453204234 997177639 913286178 570043823 293511515 858758748 935832844 620762047 333318989 543851530 579240413 166918465 928961748 524464537 938534859 285210538 429027619 756481658 358395994 7929732 76604032 105501066 775208623 650110926 208522221 824964721 237294603 195396089 811425881 916417853 403280361 178940465 511336554 575988392 520726282 138453243 302073988 231935621 441503261 802791600 73857687 887819717 110069666 653303676 172154365 105186553 54679358 971518516 770714221 955377227 416867863 143087430 945350177 869939790 414337270 635521706 135359265 508565228 791576192 337213678 69226460 83075942 583178200 694041645 586603895 804349433 970692327 729885603 722732810 70791499 173913182 887874543 961943470 568087030 980164656 518405795 395186680 201151345 549658985 682887648 721366467 29073822 608878023 178234487 249398922 619577893 284139839 762203741 734924532 319083790 813241622 32175084 203314053 396218958 498998940 509212640 166269488 784125394 429559732 751732747 309963867 676395075 659412084 226809644 198626040 890711628 50981842 355858617 217376009 923914165 408275451 266980207 858993556 958591612 632776990 407370185 94213237 869788087 779693875 462985289 322273017 526336026 167386009 663676462 329361118 568997915 996219917 380983253 776437639 83584531 631358737 431461146 146549710 245645887 772792711 695522980 896610159 733182467 240864096 844507268 160516583 970674968 458332144 967403600 683434714 196195233 948500979 285458537 128368876 631372147 610528243 391533105 492710518 299137447 399121055 905807198 585913192 917185482 981077962 147520079 326438017 214097157 639376404 194274941 947843653 664837616 115107870 744442999 326563789 316334662 742410737 266614569 567175038 952153566 744551422 973160348 771313127 813956607 706201923 58807315 668649884 209927127 816981344 595538399 486074249 285813705 624178175 97996020 540749284 222249321 529861551 982101482 481922521 590513125 43534700 818825448 16344603 728699020 386590114 736051455 578351977 602650228 866090235 942758686 872907688 406950560 105348290 303244317 358548096 158575593 343007056 43765762 518980035 732747680 484564400 93561873 535230334 505952779 394720234 154634657 229162475 175829106 169250474 154374377 793319690 83743324 545863240 206455087 648040283 835854158 723117705 56191679 949230548 56482580 586265928 463301711 866816695 587788097 489939622 572460212 48442774 618970224 78433605 184625335 873811920 30681432 369484232 502487253 140483934 603785778 936064831 817802655 788089953 450994632 528755149 477102980 510277867 190734160 384821843 690605046 294103264 191861181 420226900 553671969 708437016 229508125 692697532 882093316 999605841 461521444 310478250 748275156 991061615 468280102 389857398 52456040 379744729 975664385 393524235 328212578 785721441 835254749 155171562 202410146 829045778 360631318 402551040 99178634 83074296 744595515 322263463 156762297 642707859 357285781 775215380 864057715 357617729 636323958 362816672 724157971 389293364 525544263 986663459 467542569 58031514 289282796 227761386 104602306 902220486 262020110 953421680 352036932 997628228 631131280 610041107 281507568 669391934 618908824 741048519 150325293 787999410 708939783 339756620 533287637 32485524 751787665 876963395 942564348 921902043 157382109 152551117 338041286 185918382 177043333 298622295 247727844 830996837 242144500 996016348 528592176 702627518 854870247 15838123 630675867 35563925 18631412 890327388 996387975 422397756 852641277 595597733 318075775 416652117 241113445 998137111 739096723 867557717 925788376 784763667 367938879 239679942 912989639 248341487 93309056 778201134 221306787 253764260 296692263 671974627 315163651 823484884 960212325 615619841 966437132 899587941 360342344 897377432 113467505 221990663 652143370 778236849 85798474 818387167 498816566 596361584 758165969 685487839 630322245 105934292 83334086 348077199 308958389 137524858 757097935 205055777 791560974 733256037 707306743 39391959 291545849 682891572 820811762 907446208 831316472 546676400 305570447 853217070 390147870 500082296 608053659 808153905 105576999 881556097 464367299 757051307 415960846 865415376 763787879 325376099 549825439 476286573 86893915 434221857 12905051 410460440 597708272 195266910 815383848 525692189 934512111 148446926 383822497 777109027 296538198 653800393 148278568 727049471 686297397 126538509 622339602 825770657 424682366 181503512 134341080 191561054 43202692 397216340 331158267 928574333 939255139 136044784 596242032 846628757 832400560 740301307 769741081 569638175 662288540 329848216 696229121 338666652 490327075 192595979 978111710 978979391 938757122 532139247 333583770 389967681 797211800 836318584 856832192 924085298 651353469 909688109 973900056 931294161 407445027 831262534 771587701 796176030 498593805 891074190 938469105 163660768 107773987 668530022 195344244 364689611 370001399 886383412 19194505 692527860 518071135 756659095 53511453 143271632 619311924 704418200 408640003 604094393 163459654 304256959 460392990 935135483 557693425 182542433 482029539 25583799 113340093 930148913 147172985 490760606 891463180 28341091 856347361 729562082 986936001 739924484 674043373 702124467 937289578 545080658 115293111 537063416 919889323 510700956 191104156 512953542 918567731 792187986 41656286 60407845 71866299 157826374 177222312 547088691 887889832 158079213 800469153 969627105 626842968 230842877 802012815 615988763 781313207 78008747 718861291 905621469 352718750 481103704 172835054 354200170 879298174 448578017 367573952 65852051 664801015 883862629 116005749 542930986 959456326 970418294 344703017 731214822 23279408 632959891 502812883 857931362 109586959 239651157 315129261 259237231 324546724 965298318 383193204 717008180 567095330 20388207 566354301 120847610 720885581 313352083 353602273 77952112 816604867 269026222 944980051 698772985 208110855 533066383 940617154 462993376 446031418 574681192 339367718 19079680 181993723 301418417 909557679 303920791 827962453 732959199 216577817 15351936 409376623 355255746 792541770 452322484 44225976 677647492 785302653 68045778 564667724 750949627 709975344 854904483 486067243 315738474 533718144 942179906 646656576 219112526 150319962 838436297 975795284 285323633 644706865 592907048 40854175 478524805 426221540 731308267 854707909 985447103 38609678 28291313 835676093 66272663 945243853 488276916 928499645 854258939 153670213 966497227 900045987 85592019 973478754 703071522 680653931 138091302 940036475 616080310 291416346 519186265 372747079 243911493 431088570 118271967 423363868 140848538 473939759 359468607 793441309 278118825 190164615 295566013 241795588 202286655 74375643 407436359 602038762 269584027 808722460 453430257 513077441 183252592 191086028 907134070 747781623 659366491 165080990 127124828 738803671 746729520 231597621 288446270 851768558 700116714 412192079 946333176 564833480 105995367 472214358 455864722 313056982 908161342 403061482 771675143 795915938 755053102 936192136 637155948 122858845 363980357 604775180 128373857 664673595 472888603 546526000 92243624 443450852 263817296 836383098 639688217 527621697 897917427 977052642 200372285 127262918 567482007 519742363 421863734 741630307 726905466 63043654 659307465 526942211 744345710 82784271 557260496 855314445 688187383 745792408 286231477 858734446 440992267 464274371 65275615 372641560 924956651 708689187 916714828 71594084 947088408 127555681 731413018 44144189 865990776 875700232 915377350 187518641 630953528 586165758 66798338 569007288 694498424 507209555 710199648 532238899 766510557 180089848 892309479 128929956 818721356 7613236 742006844 656175075 581701987 364416962 419215951 754203962 447436517 734493152 341877863 410045285 176941123 808018027 91268164 795482629 551685633 223440540 929731254 708950544 24220482 468619602 167706988 985071252 251983273 450143260 132230127 920891903 236952614 793641903 98363175 9652344 710095359 445601549 732496466 545467726 415621747 276962633 389565954 650377830 514614582 250820326 861439694 312321581 954867506 301946442 244177112 861959944 453581670 831425197 725807113 295164235 738687469 962952314 802207886 680448376 548941166 687354527 67733336 107339727 488082195 932806838 204444906 564300671 908945615 19875746 935718675 25465216 885445014 749389499 998214980 574221542 227057412 770311328 99743952 315102321 421854911 108848651 150362010 946664346 442004826 305096746 575852187 120703981 398513155 1215946 24502521 642877953 165636233 274981106 376968582 914180475 438718006 681706633 29207345 389828013 85831241 736197041 590652578 145946306 142609024 271346198 46361559 456671388 930630755 127448778 258731680 533331560 334708677 944145631 330153423 800456971 457315776 978132176 272938038 827732276 663755411 995797864 315483328 335501209 560670124 747932480 953120004 353746443 302452361 805097934 970811349 428058983 736417217 823504251 784626872 655108587 695312293 211953081 203841594 504660297 301587143 876624357 734544957 528607804 523149948 764937172 445467623 307804534 229144169 320670172 532330446 163575116 927145095 464549753 946017829 722118214 68148918 95533907 413706205 512554207 629054796 509262862 851660425 415071467 212971804 458288088 394767577 795367549 287741162 355853302 139265275 810804057 449727406 127656852 689424515 241513208 98964399 17465760 395119089 356003043 350620171 882684317 936486532 772848294 421687624 621035111 603264347 495095003 993916464 428423637 483435176 611882158 582463813 598025183 409113955 965510358 171779151 879690926 263165892 842831893 717366436 569831364 327226042 701629585 564430162 536764395 900949636 617310106 786436253 189661078 699719441 738136161 789466823 692069567 430375418 487512567 969381028 929882549 361953208 487264231 230619056 240953945 277397537 704457230 349379567 598323678 446264323 515567857 901162708 221651958 621550296 310912593 113034099 460120140 589097967 603019703 27888994 822075178 308317719 821123355 512607411 922102739 161134385 45417580 159107618 14993907 832701472 81153180 861691459 555103753 638819470 642888311 687199887 956342432 903283534 712671911 631292688 952771847 358296465 931445424 309455633 66870429 494379678 763159808 983447208 740191699 789143064 331497413 80188132 871706771 828712965 932141685 969466215 599755634 493931460 224951171 743419885 601234981 163845705 517881744 197118201 86699103 730610811 263664507 755385697 699091765 92027584 916463432 749777642 590497650 757469242 836124275 175175614 932537401 103807870 924622323 366412626 306452779 782774751 33874588 234394598 303612369 792878629 327900810 454663026 28820166 452432471 203116140 28451829 309009426 406155307 303947185 31137088 816798440 594353704 705222325 879535938 732576684 555261505 658250818 820235462 536946459 786081728 367160687 632386421 802507631 735559427 471111757 860850519 724617389 954868077 370338265 675458624 160455733 299289616 705935036 104505772 360190978 291277012 567856583 798195709 552511894 933281266 252386696 396722007 84523056 294004438 207748666 178377440 189837825 723157242 473227499 548803283 972910659 384179078 784535674 505125053 316187285 534065545 147570511 395817216 945185610 862176195 755665233 265870790 446526720 373395264 272423845 721467648 752611344 232686998 458090435 445208878 513649914 189133033 838891828 571292578 168188346 948562985 59310352 762571342 277231504 390008825 507527661 861447827 185665034 867915395 311830834 172299040 753672520 472501299 357253433 157577561 641325135 996564144 883546895 693404239 69244289 834725223 565145772 155184758 709979924 207274688 809167045 66105888 527115482 901315046 545574742 452987223 18103866 979323361 452481101 584073890 918765689 530239916 966967209 211621988 416862301 413692212 123230938 347253157 893507580 663083331 690062481 293864304 227426296 460516525 213678111 678490058 441385894 18322881 489980591 556759228 821638019 639511809 959044118 333670935 870231332 437140063 431761344 653502137 216565935 717578911 686610780 78244805 219952718 209614 281287058 965198731 236785765 204600187 255307664 85097247 637635970 586526529 129018148 115241832 664927658 451379088 176425963 718747780 850543535 965766944 372052599 513471411 565509891 943073293 645347522 251986972 589233229 466144227 244294343 559093910 249511791 926555156 25996258 7465258 62511498 36408469 144374154 449268662 891506669 722390217 446997749 808770594 973760599 932707749 308883980 847117379 512019650 919731844 172392529 451893431 757078565 644177314 763119058 159905810 19526338 11175932 179295958 434574482 163349837 815204419 41122905 65059040 599915015 437498556 695986995 240560716 334464318 994977854 91706099 736196938 189398902 193677914 2025797 196371362 797734013 56485149 596401566 699489210 39028072 431874095 430542325 468905052 206348911 381343096 257704529 948997570 93431998 390278057 121206239 81627116 962590926 996746404 799212995 69921891 345623167 754743576 492171654 491056093 567031583 116449411 945682975 420862763 355848463 122441402 426672678 513999263 369628401 638232013 988936692 756342527 46665854 170255845 575637969 118163137 201808367 570627818 313066652 420450363 225246 805307985 955403562 784264933 440739480 521448143 44327994 334578877 273085627 28849225 503821659 819533393 687205899 354670160 467580501 511533274 744067153 411268289 278771939 997180782 809059287 361335065 740053171 411854619 968033060 722688635 978435200 552318683 466189945 257740465 938140277 114506126 97628298 646909587 294013569 914572741 545201832 247549124 966029279 653074545 258311757 695938827 36150918 535403754 91832290 412655914 819414789 441119768 285079062 41872959 866362125 855723651 101833366 443636556 836681007 692834795 561425440 940641357 297891770 108264952 29156547 39580602 726531213 641682048 153411031 816842042 256237674 54648936 767464272 552545059 622508380 303781914 385888845 618731389 990486465 328866206 414430580 524141040 838704515 590875766 161833464 691043965 588580177 133696324 358342443 487150693 739981429 102978607 778207932 993379138 985189961 39119611 14053580 154792232 615775894 338194436 350217550 232123590 438538335 377957380 564585613 349417506 33819244 924890871 632918123 148090048 792920982 904614007 98830177 802337240 909697670 859061747 862001359 981503450 192047841 524072103 432322967 876915761 34214361 876530895 201346917 432666227 353643892 592658239 127645758 495233778 92843282 853750998 436978503 443070710 577297057 585543262 510105305 301013904 683158324 266177339 257518477 231587603 366610272 892905969 87137653 583190760 707343947 493086805 686090915 687358662 67230240 976122446 811035751 508518607 681941369 868224480 318643962 294440364 368238289 302289188 716778036 372425851 352553563 783427620 564590834 287445345 952070452 887417842 125297034 513722652 237275981 707544023 846747434 37961450 431211417 638627604 522595835 33569915 444430027 497395069 682929450 156951430 370665702 677999650 683750640 180566364 839144473 892970955 334997880 117732380 129765634 784782244 583618999 893210092 168571571 430315293 51211277 116073084 641737579 637799174 64099763 113271308 253188079 73224656 659048211 780855860 679076875 87727920 541424705 189007561 713455024 237303300 984254385 566399100 659714491 88550490 925126382 460386303 519549192 959369211 763476239 88508439 124230136 618039548 470243213 379808359 902823046 755963894 370765907 211824591 840436496 24879952 664538479 590795316 840218924 584400088 28880072 190554889 488882921 810186099 236022013 982892494 239135509 702606224 489605626 557783998 302896731 235578999 726920323 191677793 899453208 171176584 334744152 993788167 79747575 40881889 947273962 321899720 791192520 940193966 298205250 513458417 552319310 187204839 327416029 526312956 656588662 164821545 259490799 628850160 645712583 215948255 625471173 242339216 174742117 51417543 847131303 410210291 28945482 531491565 365405609 762840991 408380251 339246757 236550128 480893788 3597804 641903994 968429067 169920202 341372249 784795506 68995449 378941588 672549904 323547261 771392489 960431921 597564428 613269811 183097614 609767215 240766013 825425348 795460231 754470955 555305150 611424326 644001915 765881408 241715871 295022691 853880089 17681589 19512938 729296507 724330545 88418533 111367360 30391472 372391624 482623168 412905662 709079910 272669476 5439898 361509740 150337559 315091965 67570893 79994395 994766001 870426865 558778544 818792743 268208580 310994693 215264739 162098904 400658060 52072486 44843562 334617122 11703649 947981351 369921204 243238617 984980799 538353006 828580507 853849843 894343260 55380494 87645866 709495317 621860145 534727197 222611824 564063558 148272087 986663687 441166276 75813494 532904090 302972671 825617288 428762765 976992057 727290808 547147698 464084337 425178940 131702277 978305281 869125058 368329091 335436598 286725664 302466255 189705625 180924698 35390775 489697337 302146376 754760707 642583868 40713356 788277932 336157424 115862156 981258085 619492440 503343064 967461881 550116710 289833532 780537909 355806175 714174697 876198578 308071152 214085039 28291465 7867932 956201712 304538481 382060525 348031378 466327746 763611188 784806796 927334136 191485807 542917413 735617877 683694531 830249361 613577655 394032654 28747582 253328966 883741877 281865165 51190752 43748356 142353182 162138094 297999397 719627502 301382454 338333486 289580172 260287994 571793336 94162739 392612338 477699818 322248149 276155809 813613616 446308041 98725508 493017377 289080095 377603841 223906624 641026948 422980525 952616410 799319519 651003697 311350024 266113034 24708040 586691894 157907562 737586824 802008314 708529495 398852492 230737114 307056057 942040530 995435801 360120225 15968073 34450380 432593257 409272752 989672349 974194685 484371316 152383942 173386514 650510907 245091790 974926821 663623166 611162531 769194465 991394323 277798357 178723197 483401482 510021928 643051776 500949707 518420966 205650793 937704194 181308919 400081353 242092870 111430121 288807020 794563132 875373822 30755082 40841631 61526515 78264944 476601661 204894814 270530278 9381166 80400061 272576769 404916330 7175208 986809571 459942562 558445862 613107413 579180161 499345865 196573414 661306668 996536113 636584143 422042035 538979001 166947879 480608352 385298012 732221708 898864101 293152339 886349998 850632180 322550401 535545102 289172294 294493802 866069454 770432032 889078732 546837690 322777445 564251737 356087988 108092232 306205613 360184576 647870358 950891859 691426905 737420301 612899834 458137870 285316233 654444460 957798705 875404579 626308895 186147842 541458866 130858174 215518217 847632192 710131803 512270238 989357275 633271648 88007934 187935743 896772572 311997313 176281402 257515883 718010869 744851600 356912562 708922763 500993618 877657690 723826 539358299 401479570 733244316 88606275 350105734 495974094 879175738 292209658 854432324 456217561 556604713 556127262 443109383 438397016 225854037 289532998 224924985 983039802 460840729 676360667 670545011 902025124 424246150 316066353 442324307 756483723 814300524 187039045 714771548 303574846 859838282 290965696 132167095 797915569 787172507 620651470 663348655 352424316 875843395 9846123 796731729 375281271 334561873 230663160 386150886 240644077 9432496 66598552 382029536 443279987 478241293 968422257 532189201 1507186 720186613 635715158 613090258 351840213 902951084 468364362 255712038 769811163 775187581 47074428 379107809 391033458 535781242 111546531 449476824 155711705 361588474 386169468 556841205 141771094 886640702 213231739 482789677 663335916 271339854 345794470 462850954 999458719 672085924 192491703 558742259 108269968 965260532 562185811 858352362 491073905 400232981 874454329 511301733 76362469 955917519 86012057 160187407 728070860 167276859 389040837 592203562 897568387 60437335 764484282 951700429 168482401 687609090 633370956 945664533 899540483 979587846 5564758 555049536 381256289 815798248 535238062 531318411 464989597 81647952 203402945 159987661 243328771 848958799 451642410 267041694 232577431 277429969 511715238 749033965 543817524 522043050 757906538 43832453 298363716 802710038 97869277 217019919 803134114 704553333 759392113 233562654 167267609 96589213 602861850 293818041 267984018 957863748 148695264 942073007 492725485 697905844 847074660 313740289 937023649 272926810 86397233 114087506 529011291 296893583 328914905 945467391 779324347 90964595 13766233 812818440 698693289 576999602 576866346 36215631 19967044 261843980 316367111 509158119 468249153 867153256 155727687 447001079 140433640 16166350 905337604 685978841 616581047 602647713 276798223 333992317 348895049 193624150 637885461 174423412 666234710 606809743 208905932 425339556 235852073 952261581 295107159 381233770 893528532 940449374 586592824 643884478 444327399 750456041 606086014 695275145 701640697 486271060 217976460 520162502 292894924 737562089 535562752 57814793 660566396 604624867 306539010 371681516 99827396 92856102 778549111 403828566 317120269 727117868 484983471 804158016 699556502 749066848 334283254 133566233 704149054 158350780 679937523 215619969 535728211 426146537 751050821 261906872 256832311 932510711 308373298 22149566 173579807 863197 867611951 981445326 47304094 560859946 685556625 627613907 860735177 12901379 202322275 994414737 438001749 523814765 671558117 670945224 885676473 228578374 661130456 991784582 821375810 631791026 199524746 899370497 4679167 899386033 351885852 862817643 119104937 479512311 615513109 834395394 439372618 470529656 244405403 168213987 789082593 55520352 62164096 535968231 473986765 369675451 426047653 362825980 699143480 998040468 970487465 674117696 581555267 908152972 105191398 376443975 51825451 405501657 649983478 141621284 75565087 714503810 642952182 408816304 626822016 658260252 703092436 673252055 365306643 967853130 348693280 833195020 385533918 941828575 88298156 959009244 113044456 163950016 558461663 612059452 387824704 169921943 812825553 232980685 37073045 250615678 475646261 472031578 848593776 384218058 552382070 771220060 284269364 501767183 878343492 404316645 199229909 134548717 764235316 101196458 112056514 424723110 428099004 708044351 353368462 397225420 552953560 717557053 326287361 486049582 858980073 495630589 284382103 47994025 665590635 796615678 390299768 485912014 287857974 618077170 73694651 786457666 879029847 868321645 855843231 13254582 632688441 113668631 276683903 963409232 211896896 99629470 494312959 771743669 932902222 27816704 644499440 209118093 972585238 223271029 217032934 769410838 763107288 444213546 940294716 468627073 805110713 166603625 178630480 518718839 39535382 547191582 392291872 510326473 651441671 464736459 441034658 168954433 951456919 90803850 708071812 199715293 612825970 814719457 920094426 351281385 122837876 353274285 715992815 546909265 131650194 900269689 746310039 527745251 956730088 759444679 481858495 996795641 426646818 995295190 447999113 633511378 937328086 335507325 431051720 957433763 603670126 418144346 888226149 405202890 921254971 521466626 702352410 653688897 277810799 4395114 74318836 845182373 930913440 77318412 567366964 146076299 271265941 493201386 16061152 250495757 346687563 210435450 426932165 917675143 721932909 290215713 145288346 640040420 769835687 156896239 157186086 336192661 22960123 355452186 673950874 588794968 961494202 878303750 489473388 954016433 602315965 473165332 556244011 975973236 136926546 208730513 767936661 379541390 707485419 746665551 860972014 45111909 390075907 211553572 103925171 424187616 707647401 331136872 945174304 444512507 818041543 288302598 845782516 454259808 632057584 785052163 453787102 280674573 295215358 676657895 898055547 880746716 88132040 677087659 889864804 652579354 104679052 484556540 44767927 10035660 246160035 834767694 623050141 910615262 765423764 235228627 362562812 184124342 266441666 969822404 638876772 516561306 995135205 719356719 887036597 405370734 505980171 160559708 580351786 141058938 895855205 187261968 465965831 934798431 50185629 710770971 140257662 91505739 10947614 358214811 880979667 827522844 419659042 485318920 762297672 16610545 253324825 867976873 644067344 804680714 756034702 405964482 446727023 829964620 179258282 382784499 940362829 26773798 417250930 434526070 381113612 122058557 506864964 585615314 49180123 948059990 79596346 599485326 439190182 209421286 325416743 942080957 421087562 968141694 801609738 486988216 465848580 506412057 163868512 789246158 137495794 178025110 409869511 444701525 203984717 310684381 450485413 277889657 428878565 639473957 3613879 984507520 490651247 109287737 863379136 767693465 474489705 750079458 414246973 638866341 139483619 566347443 296675453 52293229 685940474 486950685 311433274 793431322 3860538 619446170 173274542 645901033 156855505 309047745 470382448 187655342 620915091 675577157 599579307 201951078 458196824 310170311 452319159 718573895 187237903 952255982 916399582 225963265 67886758 313931131 337389501 612383543 33918384 673479041 503350277 465971361 761910057 417321328 566986218 124176698 153089579 18318528 602900846 251083254 4941693 503482305 603165223 178830263 529489268 40673547 280817772 943026860 554821153 865056077 793964158 586955469 611444411 979421569 923728497 503029204 328963933 809959325 895239680 250211912 937762520 984401536 923479921 383946138 630665871 752456693 27848071 101036381 716049206 814081689 951239285 229814635 581230315 537819632 266177032 956148636 146563773 382298992 440261509 774778073 655516824 621004337 360894327 859182528 426220402 785186290 507328800 831539188 703483053 845641088 357416672 914912348 495657233 595683478 12251372 599906069 681948096 253312769 305626078 440636950 826515553 876549703 837041944 556024714 730193155 26778586 970888690 374113625 685695767 987054969 9999017 813827889 300011823 626181632 527239160 326801512 249746366 355902985 41876476 435343493 329605337 333592653 429894967 480963551 916959883 418087914 265247631 249264611 273998137 327531855 187577270 872172862 680463489 494464869 530316101 625624718 684190446 693773952 300553334 720779491 187757327 694319319 345347278 770311324 466740906 42309505 375054512 345689041 193401059 286215280 593348388 390820074 289581812 89196807 486515861 693395010 60695586 34018597 892070745 566099240 100875116 950793760 564303717 59819133 148034769 619645386 863976483 841220202 456601061 682156693 981824851 377992489 255734406 415145228 44066446 200777137 19219648 740434056 553330161 142770365 462246478 521177279 489019806 234499246 249972670 961553070 302334910 298250503 919469191 637445235 783615024 251792121 387549470 59065161 954141776 346379415 775188261 786533368 890468401 848865421 224520266 153772481 503070535 618439434 241494496 389173603 6530021 177403546 882122018 155262702 450255265 593563145 14171212 576956915 30777651 547527214 568009968 138849451 85780350 78984735 462365654 202572019 797935619 216869211 63617720 65568594 451227610 422370577 188388730 649428258 655589069 351839734 199667146 255759410 350664554 599202568 882305163 542018075 281685031 910197428 174157533 283548525 152158995 354478941 222725115 914512415 182056877 124209003 677899474 561092528 87984320 144996936 309817390 705355300 226346391 539811825 462020877 136253232 225667632 110762253 697660264 232183365 10999565 517024928 799085770 54984343 933055801 268428048 826820674 573630370 36878279 123487562 910874398 533903442 174340767 233088198 970133022 425080867 355536418 200860809 750155239 189722032 285727918 340009414 438923783 26626486 239837744 393332390 615205967 781615381 832515324 530153821 507096812 287426197 694463008 383945835 471296087 323791725 898023649 718790792 421822961 353678299 832847458 164908701 118739524 883165542 583749568 198566842 92377417 949347868 598600813 350639837 686970881 99324409 336918065 464129099 933678531 812673900 62986541 429380547 11611814 918485239 484116934 805654872 689136522 339807555 191208216 689152612 181390357 483481997 440674750 990807259 543911786 922078659 727261366 691101831 347032707 179549069 908126159 460248687 163324498 497289648 403059678 45779474 863778027 624954343 23896890 301715459 311867860 346488435 345084639 183858425 501574966 405886235 105212789 567492444 412747503 327028027 446977581 569137059 48062010 429070172 54646839 530104678 320917724 64220175 614583687 542704855 429552682 930309548 169296328 700600011 795438649 115204845 508111083 98574660 535355849 753702335 712080507 960523415 179151797 466779679 301047043 25712661 307085664 141121374 707214173 476323870 309532165 868557134 194417401 142305530 907584180 488107243 542558729 216702189 548395779 202058025 513813164 589409985 655276132 975415814 264648028 609098564 382758968 923968757 77109735 373425181 574144437 625219975 698451909 274341963 547771374 782784845 720065902 143072333 377536926 211855257 179574890 956259597 105648612 719907387 190359396 42313696 453877703 205994799 768810191 676296572 757678736 411015161 655411341 894308279 527924618 172390019 696842067 982322445 972807053 836197064 719416889 726701232 600396788 401176185 738172092 563279006 402180790 109372991 918137231 360257786 573435406 301280300 59739597 244810325 864900777 720307963 863970178 92001241 130345195 628831195 28402672 629767537 722865063 178098911 441249771 782271021 651903710 863195388 510763806 772592396 460971508 509645780 958974332 710680638 917500866 319334252 768066221 120889196 243591754 474045770 584677719 819215250 527608182 159965512 607809242 91610197 38458730 268242630 215107693 864602095 463242773 255742112 714053757 616095716 73505169 257730941 402586181 188651474 985119251 125400512 223749553 224697928 325539360 996874366 427703648 644760329 688904326 947305147 224396578 845722932 480322068 159201832 313717453 331906446 306085961 704235697 45608401 542991106 864039665 743858252 473977565 223541623 927354246 301725096 998261704 191513658 920489942 488267893 619065849 944424044 562755051 528461450 644589835 890618913 406572248 255170515 558846401 587940995 591133823 730751559 784599175 489778721 8694334 426479853 849914110 228967094 799945766 740755187 925144617 747561778 809037690 962945826 594413538 636618511 765363851 764981279 574528228 926105967 762102981 21771228 57140438 781309390 940402818 289501818 463792544 134374160 283199860 399607324 865815259 692110720 592732053 408583436 829373973 796297130 277574050 975971762 307368277 789727511 695513179 326511470 825488877 958909086 675705074 107625220 352502937 295414464 121426203 726847452 507275424 617978434 282816226 231272312 973508918 82832180 789437309 232681010 957130254 180295904 377711130 936071502 95771457 814517679 163174092 458209797 211740139 171290020 951475815 405228870 521125268 541152255 648514888 336529643 426704223 57623574 90512050 821036474 300116020 372092219 646507881 171387426 661666784 158902933 428703956 141368470 877359583 461004402 84509634 542241692 616998650 531600742 941460159 633311070 429660761 408982817 29650461 715914950 174816664 870276672 88775472 29008424 14316935 763552109 454967396 62093038 993229019 196241524 771566048 940729988 83965039 105702454 660303470 882142261 946849357 676465359 31639485 953392739 819960015 79374485 689359515 736798322 215763874 321141422 26286244 754894936 958096937 595906238 496314013 453445487 808577696 986635950 8263787 528349727 834713247 52416476 129110235 351198529 310527207 962635618 775426403 775888583 190221613 515553817 164198107 107278143 509925796 631048436 558584455 625817341 952731858 775958309 340488301 236872927 210303106 3694347 545778403 578993728 21961125 719523831 606477673 718029415 872222655 359754786 728886324 606408215 94984120 947574662 851840329 543736793 738782474 402368148 173191256 942958239 307367535 223314507 514782224 996808092 115879183 928671662 634056316 91444592 57038643 826184166 108080519 913401778 292615841 751982249 613544455 676858288 560097688 350404790 712944664 297042753 952166285 756555793 861524593 405865018 348327148 269662149 451347162 847582220 142835319 798942981 986209968 516590817 43227682 341520116 955382533 739777127 976648869 866656643 619297111 951580233 834355306 62891177 533643920 551408118 738233802 865190095 429894252 702823616 164327551 304299764 832678454 713523946 887067142 280874189 500845726 980257010 188773142 127122065 670579861 95297413 876990662 304975917 379796911 862670129 832722917 611107867 868530064 852300860 263363558 328856587 345835069 513835608 435014465 413126758 724055963 441330155 62012825 181009333 625997908 517861678 555570850 727590030 316190453 592028508 575072685 31873377 91675442 473317797 468229078 853452083 178404103 929729666 471058544 267516433 234866161 912963554 939595108 46454080 360177359 732904761 156308271 814826627 585714105 348332008 422709009 685043592 876013986 105562716 76544574 458711487 987222283 29783282 760721861 677590662 21155574 819669080 475433502 341459784 638602958 931252067 129207526 976372835 720618440 167147592 571687522 483346016 5982749 135831840 573139014 390344580 613788961 114991315 204947956 479509232 37074143 463720566 102846750 354360203 865944132 642148789 98800192 368830749 864268329 949598761 380375524 772270842 834128072 704655795 305539388 938029097 807526020 356941199 133432523 735172155 852028001 636081700 593192951 272606258 255445241 972935110 143344373 777831970 361331225 895386982 110228675 100148839 331767211 961327965 735967419 769003875 816536253 704906307 30686493 734369370 669590877 669159461 59203515 184258389 280401309 958342865 669127152 912634559 818842580 397113338 709028208 63218916 792863401 273754440 394276989 418624869 579209765 856927404 892371895 303675785 54739112 704451586 559240767 536915122 533620266 925806422 632174593 240068235 768522340 168273835 240719429 602315355 637476962 10851442 594992916 209247423 678913033 446331051 112021107 690015873 138959478 646925780 807660416 556478836 850759391 266281968 769536836 80143615 395388245 383568344 383974658 949100294 164838295 895958981 902866545 312024377 661203202 401792959 436201577 741865200 142534182 746619482 524010592 255606358 155867523 503657710 617423227 527725651 109304541 736745664 29058066 412853727 918423620 57861075 400204464 12608795 471274789 67902941 751312816 55267762 565333397 643163483 415576371 100354802 490248064 19171037 740972650 56819601 589199864 632227949 195797854 916706106 233881470 367708208 965115525 929214938 632245080 705451600 935023822 702061003 978188595 381425207 378886973 856766357 188675775 940902856 553124002 560316969 339611405 550714251 220225005 568816323 285163461 64970554 66103965 940311055 289404563 594863358 204048207 812135404 807645412 157135143 218436613 961701760 672924517 435145627 839925727 215485856 75064811 175569211 174040097 343072523 572374763 934962409 479001588 359115304 418121495 306690370 819583959 165857078 153422906 405558502 850986476 698249895 744107949 210629204 853552564 893501912 822638238 190231469 993817739 188014206 920686116 139703339 89554259 933933333 644622024 665255735 777115989 365691729 681399780 376479197 117955454 948055894 138902767 520368206 856619882 822988408 575692954 174432694 183817839 291687826 826791873 829761786 114886859 798421178 211367819 2603415 894382130 34963811 407312882 541276764 511900040 106791296 719681642 79684292 901768420 68405886 158851719 554161609 565914798 98356305 112353529 232134768 266378492 921332625 282608292 786605505 711170385 728711328 64744690 417631183 648674939 33781083 411737834 373835431 445513774 820767454 292971881 202167652 785213353 194748955 841898490 795047712 320648041 694424375 434527892 735200218 685633074 331232187 145132608 840755513 514901199 967775058 241435606 807601899 639294967 899033754 845285416 865540084 111341236 960576719 962757336 431616080 117536499 287913365 231611452 85815979 261526219 90835952 206211715 311525859 599548724 125739989 727221506 263725423 69006906 449775407 358159471 947243522 490587201 654306746 827648598 577446212 515314490 814251402 115366324 479090453 674828879 492519449 904806349 668551109 132421539 634413162 132232786 234931363 881108305 752907231 33300019 194974459 926316261 729310128 764249711 120904235 423611964 868857247 604360539 422842849 645147757 970615944 950839748 376184402 930577756 374708237 582730832 432959992 799075537 662829828 271200927 498922859 743839646 977321094 157602886 830961379 423308334 882503513 600561769 828011714 578145363 559761190 793975768 801090192 691568390 742320843 424377207 795532407 716902472 525763806 166181025 562754156 916956710 671921348 192653135 942875412 320165539 230329871 644839343 541727968 855446897 14564078 135729312 652289269 512028375 681753917 785154260 956089387 11964301 275288090 660779429 725479074 720605197 139361253 537013683 306387226 361559820 398646466 525658417 815334555 242707540 237575642 240851056 656848194 619401904 701049211 43301135 741267190 748615153 265684341 703632898 33400797 981148003 268426206 428415812 244585086 413381523 811385614 707286067 841879710 312349782 283271449 664699709 314925521 745416441 188400480 236386629 829848689 234232717 207399202 480808773 490835057 46031240 561947383 959732009 370887153 544591517 774765387 577891928 489004676 179968362 238331534 608268126 770018907 524768346 931445034 219004811 810603292 496433138 217726086 840191609 452636099 467820762 217893389 863245888 737431712 816623663 434758421 740506924 963979582 901319646 430579134 412553194 24040724 652615913 251467274 153225990 663086042 585693418 861430502 229753076 29926296 86473957 565873206 973095458 337887577 229123056 795627023 251188198 250984190 950634362 252670963 240857985 158389354 438347757 323860484 231612272 105074419 225256417 351628631 955298181 54376951 479682628 329443623 456608549 111770527 265366095 876256187 767990368 611981166 899884040 951082319 815807545 632216869 140956788 849880308 532669366 953801486 417646006 126459332 161095637 164207611 352724819 917113970 80832053 495096684 442355598 20150492 379509394 837290011 924750874 452516916 965701800 889303002 809916243 337791336 421798416 111066788 256039786 576649123 612997488 229648422 303806445 778565846 21472139 64170883 383825193 701991430 509259567 330561979 531537770 442722255 530629396 229819077 658278468 759437152 996960166 21538556 228776202 261232366 840858830 137274054 278535852 78384389 505719748 825426187 390051850 37516197 78866424 495085808 350094909 613552659 726567132 481062951 360054993 439101107 890397074 393879015 247709780 184708881 755571537 231067434 816180409 97681408 701750333 947955054 342096976 807573849 377608571 40169086 536415494 224430958 692670780 970264997 227058504 972173077 123987798 871467718 931452867 417291628 185931226 649498051 519663728 434616817 234866233 733643563 987390298 790086903 238087144 368690375 685663686 293221094 287190913 817087788 841807025 644591364 520119404 327559732 790571172 864459278 413439484 729472919 533786210 778978109 283457953 374461564 246372877 743558315 342889297 819898294 397345199 416700809 405704670 421581708 545416147 902188523 743743473 872381785 501073101 940946269 900082122 798007873 605935563 252919827 281704756 339737208 8130859 349077985 351994427 292597201 178607287 973264435 471666483 101709344 724158480 852166308 229164367 694942836 637094308 567697601 484645853 131992758 678792541 236419438 566160020 541730294 503308423 888838036 587470317 783369083 914645145 337868620 811321577 756861451 376479963 94869659 774518894 217394649 670415671 682427523 280838466 580657953 972133818 926117108 952212900 121040346 534696546 624731842 303486475 497597718 76760491 465395365 693007992 665035112 734142602 392019604 540197282 840143136 872313421 90439068 621697523 64595237 898395696 885113350 179960547 399613728 410333488 297702924 532572798 474772767 960669021 671186339 156863469 890165590 206042079 614023457 468815395 762589790 752162156 786337291 802135420 979808024 457458784 464692768 561300914 385887942 480672595 420607151 582322130 644792011 79225574 998587745 79911389 628916296 723914410 320397714 16632813 420903902 496228266 752797181 7135095 970784275 710557121 256663797 897411019 669279526 976398683 730637967 462931704 210592546 323000568 940157426 130330462 412904489 518380390 607093720 619493962 949445292 380724964 267657914 42336983 904352342 400271723 848602529 484272913 96643334 437393992 452746802 185066928 479368343 591569592 487279996 653007484 198326639 764948270 576934466 956762024 246286866 68607875 936896850 479757737 645643298 703316318 594599414 458003743 870316906 121673602 639597972 587056264 951067384 477435149 490170836 851737717 283486328 293016646 180586493 779064557 737469558 54529328 874310414 969066952 867825841 12860583 652696809 231066957 38056254 286844317 119026995 85378270 716216120 209052637 527950045 904324161 310009068 325421444 608168712 612162498 148211566 132626408 187603967 476059877 260530399 397192737 137217828 573204872 805294848 332594567 383986959 609107370 245756619 824204898 11854329 172252232 780148759 86996615 243200566 258537515 855487449 426769140 220164263 523872598 102963932 651632175 644100328 672669581 651510740 304037527 664743368 762636033 764139676 343626229 288154955 518448177 370095146 194501604 521815486 615863071 777177495 289522132 329315893 164079998 694269396 794953857 370333584 197229619 754679108 470019497 614015871 586799325 637895213 135131848 883711960 410757206 430130995 169306140 365451398 25657387 323403598 17559850 443640362 543009726 893283214 580502463 217833173 776576809 129345407 686585408 11960201 18830333 645386722 290853595 664025121 989981563 105247043 45958734 885381833 247916758 552705043 725132862 624732242 458041047 654160134 7671946 831273313 315325854 951652405 945733356 511300132 43399856 476350290 807842097 948531206 318192578 147560241 85310767 520864672 842564660 777566798 773388626 537201650 926056508 263925359 834191950 848245795 169188270 818341733 574550238 945465100 594878561 654204515 499656919 878885989 149029763 323685935 385876096 158921471 281138348 152027909 842049177 190967103 256014159 361861027 259739199 220264927 846015759 86697213 730290237 36036141 396182943 811716052 273383204 624931913 566747618 307494497 830619689 275453934 507867575 174956113 183009105 499356322 393483330 466638438 560375252 681494351 741948520 535921232 839539518 779142172 413185657 429794459 520851497 718688727 520816727 329401233 108247885 328059824 741400190 663047843 470117683 83982855 483510200 350290645 290985274 144657904 457361847 641735954 309757971 759210273 577175489 360306323 588748534 359752821 752606671 900057544 185029983 20304353 328628415 569056335 931165911 218573388 841368822 796803879 585848684 766936567 47901751 195368891 911368083 762663429 319299332 609246472 33385154 726049044 123749439 730068376 306774348 219763344 731375414 29346155 412762556 208426305 847728071 759258898 954640590 215534728 869388021 158296468 822706126 76729664 443648950 352302620 708501496 52769714 637317798 38351154 157827723 997417051 404431316 381074966 849809340 993987980 999204296 555800338 659985308 918109886 636084506 607861346 701393677 21441593 458501178 204100819 657995845 533938336 794017921 984684742 748407122 380023088 988974349 512420108 816827167 543180920 78869402 92164752 83140056 396290341 529894862 329400268 744468422 13336552 174156343 508645898 155020621 198414559 152825899 472235906 465438179 262186567 782907165 615799817 928061165 216900885 525475454 695665798 562740433 865330392 380123798 556837877 281955461 305904450 259416147 777192787 803699526 241615866 623400121 232598581 589728313 621051494 665378147 622371971 91115652 823888980 271752575 656731370 219822675 424082869 264806685 593909970 234480098 941586983 398028740 269624532 235331289 97586425 896475614 144597266 701671187 756897078 129500590 73666006 450703279 658608580 464092108 587581636 821921547 231512928 585070786 900514293 237491899 245284933 326157135 391461642 51985849 845433240 503244148 148134010 426958922 497050156 962842526 745595620 451457421 713370268 935619176 393151227 167329861 420266684 508245703 92272690 976443598 758815970 752548639 132682396 342253380 550551220 178262043 627459544 95915666 720534391 63176275 451036645 761060984 933175735 90277131 515798271 628719095 384162612 87245958 281436591 595570417 800287200 297947443 757395012 13255732 534038618 163260873 32078943 968075147 493453766 571313041 835551153 754945284 252667821 934900646 515585051 891201070 949744087 554569592 166898795 143159952 917531419 837790724 148363699 267653778 192499143 439390578 130463447 424518667 961096639 387362338 672082906 211990000 421379987 176238988 812907275 495996674 699027429 960312726 509454638 153257087 922223191 704701913 172671222 703143510 893607138 236196285 228250733 206725816 69211583 4723906 860245815 865363073 9942535 247527232 664257343 254604473 311061409 339216447 486487599 402025707 669562613 3774944 699261650 621645308 116024300 83121859 488267958 946678206 305226664 478784059 891482055 359441262 264479919 214642850 736946449 785270805 901335390 81532718 783377977 576576327 114294868 458870151 466098292 252822839 345702653 225803023 34587275 181719814 903046781 566789532 956055464 231326822 493733748 916364409 112357443 274882122 5355602 560867432 905264636 937263406 989812943 333431496 780940680 395492944 216070086 824297326 433692141 176709488 260148589 840117931 856040611 116610876 591914784 883180963 394483263 421227125 267100691 730128407 346095941 697345834 692661551 610593782 16308071 965054887 158958657 762683881 134190823 736196038 311922745 479095831 627898775 316571263 977692442 943486739 716267352 85656896 242190131 688449047 212863234 341306472 748218722 530182963 560911402 85933515 560808679 937580761 40046837 277417506 757084127 812732148 59236450 737024459 616664468 946113679 718708284 853377371 153445884 665859668 325733393 28186575 298315652 649849063 681103245 91383819 926668018 73401606 40865809 15061629 704980532 864899922 551015592 734712988 936334771 234848727 443065432 451189143 532526244 651497882 332386472 248088321 201827984 267937036 404609734 97496124 886842794 418958845 965106238 785004833 628832855 795220493 554479581 337198221 509644474 462318604 945482427 942010306 54353471 602178415 217845180 528187046 229877306 663769488 784241405 484043570 424220856 107893721 428074530 430861750 99841151 209974627 985492021 416004361 268517834 450140708 475943570 378109859 386232753 752086489 635927249 986404859 835461999 131443944 48665080 403563725 898151717 362712883 259517179 908894274 357315873 746792401 934435943 384365806 787881215 572042282 542702106 43208170 930901278 519367721 581514681 972629694 218535358 258610985 394774676 502423105 373892005 26813146 899765860 237579796 666540854 382665613 221160125 773782176 135186075 575439588 917702154 643147029 928945877 933186186 171845648 171989775 314216211 718756263 372829995 435756398 843960240 495647473 271572698 114185949 716131717 179031576 925694572 295757261 196345476 302084557 443711151 174677126 807616049 369970982 23092251 94309187 840525923 906401701 616615887 277027195 385073613 395256191 112120072 242423274 891214975 764822320 115944396 399658239 730882846 244406421 496877599 579773359 823330064 68343817 567522798 836161258 12845482 935372156 143363921 773122183 6752816 697732329 647436826 999037859 637485339 618762212 186352208 1569556 778679115 823937025 885715602 949830203 818585512 740931213 890343493 628802197 787322735 394302549 893615933 991748864 733182324 952323790 615768013 643147655 560984876 933238255 144096327 329419427 479828287 233990171 663842223 36023467 101236774 423233068 373468275 79489627 458422652 116495199 469850450 834043923 97349108 986012359 7495827 905825913 677075605 942121856 550105039 336826753 838050925 260223592 931389015 954796824 139169476 719007554 225493704 882671791 829213524 803010651 622292795 162163403 582834751 66649465 771375205 327167961 256647285 369650661 727572312 4571455 643791756 968602592 587036737 537667159 843809327 476188295 815728217 54545664 53024641 611896031 193980216 799423275 459504991 973378905 429479337 748087479 933891235 728363133 779593327 817718522 525526943 161159223 390932244 727409380 78405951 970789746 905944735 532442687 199242397 987720039 643489963 23535247 817818179 445246928 931279082 744570714 823234494 464697242 936320911 498978627 302369177 629967002 979116516 979440415 115305739 664786322 979184065 738591940 500052845 201180552 29989894 949090862 611646698 558274687 92575516 769301758 231200557 453969878 281228618 71423106 591599116 909791647 575771329 820613597 457827719 911713749 679548299 192391908 592909903 203407427 613756895 75218617 779472965 823461573 969281618 175667092 95575504 259713226 235960765 80610181 789318604 197976191 185960087 613517686 709833888 764823580 187570138 820875397 659717743 141289708 804040201 929812013 436146379 202460250 848518340 375567540 136182371 598239696 998104094 162769279 535642448 29695601 82789406 409009490 455470440 52979925 801136166 247358070 986943509 539318994 478912636 518495464 170220655 823868918 915518189 642942326 385902917 851836376 329749393 939486422 847008462 654055808 428044424 102911700 599197477 437440545 186662660 851185920 760662083 338232617 527270635 939024728 806667734 93126688 598584646 955297975 440348060 275751978 64910356 367155384 332318618 946966471 6695683 888904649 449298178 689230528 475679408 936568576 227335702 542881878 157442451 163890106 374471456 811333494 158409353 986872628 278260007 248952919 10567839 344916983 561160991 919177157 442394768 871941945 285831005 279648980 197009881 344928446 491342176 949537425 235697379 429180433 495266879 229833879 968893513 750550823 952082282 329427557 415747542 960549710 718069631 319761858 609146716 870024629 828609897 491363698 195850622 438331220 531882725 301753197 424459607 455086200 110093433 665388269 872016486 733914044 938420895 886790892 131259822 968612606 331186034 719687912 748095893 855650760 231485855 586994563 423390217 973190868 149392884 574437019 770012115 222728572 402485551 805372403 297063590 789807415 252113398 608861202 832759305 847497430 979556304 273158962 50905429 714463155 943569077 349855781 928881675 974638245 756329219 920331134 512342166 297464518 803865028 336089462 80312288 262388896 194064090 797589639 797557273 707779009 104095405 597788150 246786622 159372776 70968496 978580241 783060834 340733877 817644308 546917371 39977466 284726111 746744839 866184256 600807257 610169421 889594762 40648549 792110235 701702007 769858562 343914664 899924001 680344142 817966404 254013180 169505621 875113306 808453762 945024008 861451063 104445301 958785120 747020873 531573361 799432369 384566078 574643116 347167586 378254463 221079028 99592521 968384291 551692114 368017597 840294894 433256336 451204779 876976151 442615371 647545530 954756287 261244812 182304655 522715590 265892364 2662739 242221043 856129800 383912731 774906893 742372113 187503989 59411434 700398579 344674784 459707821 374317806 177600074 157830199 376050310 218010168 968486444 469290940 690488825 60574433 673335131 189283711 54652992 98195909 880461560 617403651 747846032 80885686 553063982 98018062 576946087 276258125 948536269 430711907 481795247 696557866 734501422 857583008 95118279 43026289 362956453 323287626 563058509 344864799 810536717 208885778 867517004 80369788 803436325 437426061 332744411 487233187 459835111 891874992 431829785 220111084 186506788 584409539 480902172 885434298 585278714 842452521 678292121 64848662 55776475 775879437 623385646 429407060 697773060 481801752 492218403 54843815 854111046 310565638 192709151 81443095 648919162 725340093 506368320 689761737 84506011 635884507 108466595 107311330 326510975 197798800 12125931 428654893 397234142 259988076 353027952 488278622 1668396 670046548 952811801 122351410 212822821 50690929 673843349 834910521 13260123 955733677 494972082 72094211 261371259 294480147 782901268 740841974 167837953 895688466 953726187 390240887 473104043 269111600 480348483 489275632 323873699 731626488 310670434 208084600 562314155 929333342 262360836 86050148 342453031 315632116 637330348 655361048 469815259 351961124 83185047 318458120 798032647 881117738 404524033 508451492 338517979 149458120 965616618 351486846 840182194 857322969 697228933 724815114 581455764 741430745 825236908 909987712 689739209 536272467 683719123 798381513 768754424 340382398 675163966 649375045 748260265 48531108 454683238 768262997 153913239 322633968 981257242 422438763 381340866 953048364 565849669 585039660 736747742 715437273 787570180 286074399 25389661 44199373 613766755 727797801 218372659 737655620 679089054 66426166 122081978 589903054 104805453 823081302 440187343 395248328 433213486 779103907 875901057 38143136 728863221 885320098 533805112 764800510 207702564 277141323 979437224 412891682 319826895 870095312 42730699 661912177 487914644 372555917 255336118 568696188 231995847 485249653 64346078 576080322 266803948 281855087 388101862 548557676 993825401 296271314 300569819 458749757 269349403 788001764 590209064 987627705 640864660 389968683 249935316 911048111 674893664 402818766 544433683 285441535 985515669 654918318 320726851 17617899 603402405 99446275 471259407 930964552 748514507 606461184 458994274 863591886 348661237 431196226 963669313 739048734 549189573 261516912 770749643 483596704 965285828 315531246 428340186 380061605 340672858 48673134 49965346 912393920 531203471 272747600 542815714 742906298 495983789 83155193 474355747 261621009 604229748 172596564 835970758 420455499 676744644 351548919 974041805 465593102 614115720 406219601 466242418 219942633 264596560 69849424 194901255 296597879 607453356 36126290 344483861 181254785 164535966 435401890 739238 713526932 795164550 813253150 919076774 918328172 379299734 945679344 592011713 36389922 852186490 373119601 679136050 598672812 749005405 143230484 660557757 572402056 680304605 425104014 905911014 946422046 281154526 286446991 868262827 402081628 290088615 698007320 850493235 685574529 840711243 316954476 632104500 299109274 899128297 782792889 356889707 249439335 643357490 473643947 276635813 61873143 580563528 418915894 80158237 218553691 499210549 570831367 268157378 266990378 238682500 606963121 105502309 323060977 476872587 396383887 931530120 90627103 580808849 900987813 833219820 608152521 975279331 277463073 752903981 193356461 543802349 979825803 55890141 416553106 81065264 984423238 830713175 78063265 875475867 430924186 243243557 785637366 463361251 68181833 65343129 480277069 636848451 38303882 240140634 699577841 487507803 346745127 936859942 564422074 820832565 849050566 630110233 340449096 45967011 942620354 167305672 365981762 740978985 460682324 847085037 304465505 980513496 347612377 125725249 965364559 201628701 291271579 133749877 391834471 313073628 556201575 866147199 613405622 150702661 851021032 827160319 888133045 893730447 976658304 363925673 156421867 801853037 942052050 995870391 878061248 838240216 599943063 760283985 950820753 425017525 104877496 77908942 179977191 719602308 381781843 346084685 435597997 583981846 44426167 678124245 718951560 831498145 675680691 324667570 854128919 552278178 667309914 729039505 531462552 59743902 458717970 231070860 846181727 665201600 864294441 66699434 767535662 591117725 283205439 498704305 266102179 516896366 273011546 865385320 895715228 908383889 688261597 920696722 811596453 317804742 453491789 919337365 217899344 481453774 192480045 359301064 826401701 611060779 197790027 941850548 696705717 732289421 561352168 208472421 683192676 905377043 931281443 740399856 669752676 800959462 151708996 775575977 998955897 908735148 594801585 483887546 751859543 337670106 56103241 637425047 36188928 39033665 319647598 326920136 240051219 736861467 301432288 786108479 295162056 313417947 260590482 275467455 20867224 639022503 1499842 399302399 524623542 54249768 330033327 713348445 40758409 958118524 873044771 81668636 316673578 38671953 533318145 205123200 455666948 327164221 923429060 395855598 478573863 635470036 947593858 196231442 395641602 652012230 778983258 52168632 109915149 298235035 88726857 292390651 762217654 116752850 337285390 487770279 715719224 530254925 444397571 306631311 922117169 985456743 632462466 236026404 805320532 350583985 321466691 553957858 500149725 576207590 235876650 258335644 572918361 900984842 224158797 895378100 611529089 514263781 855833157 494179321 325577125 440670667 962240148 683336427 760472564 60437134 129871542 945665120 821605141 701399577 64057316 579284020 291826711 316137174 6939020 191271330 93638296 574860093 36939117 484097911 289489231 305473261 513197780 298997212 917418267 849518276 403467367 524767455 485756325 579352939 656305284 624408929 821977604 731929220 605015273 151202455 633377294 793092163 271808206 626562265 590139793 611913551 605476008 87729302 787532766 593559259 233404543 626197782 673314019 592319202 709209230 566016457 847209841 55710041 16087064 648262140 377512722 923402632 649048959 548074576 804255514 377451643 700045144 396268484 277894127 625095270 405848381 503104699 359694204 205274383 132288504 696666904 827893853 152603123 18699373 69029031 9382923 308209098 163131958 311175605 678517072 260366138 42010766 139614094 609034361 120095851 805444135 938553934 692865746 242848926 418890911 999608143 806777886 353926756 132324053 377088294 955766861 191885734 974977127 936191870 89820901 373795544 472363459 365736184 257638024 856899168 972329224 138550005 946212879 669933205 687897087 5428840 685703465 805458300 474464047 649624964 665863446 791556324 122348447 723605239 768097688 482882420 483784210 229726672 129425347 814408248 243566506 722056905 459430981 992691872 249652698 570214911 393735211 501673106 184255858 605103991 788674815 370586093 356443286 815664053 875493761 673635496 858478839 568663442 808272047 99633584 485721617 917166841 866396680 616567685 413418150 386567703 2380798 676278976 125243372 526539612 669039824 872148170 14353402 365668786 336963611 704881746 453774160 635481656 722436069 545606368 399426123 234883007 871707057 133184900 775120237 857151938 626136140 558095546 100947688 861969241 973756467 796547159 851548293 175615881 356501231 596070220 109208513 533790825 561342600 159800247 740305090 297078959 294117247 463552247 692488201 983660509 20665985 314197729 534517468 811290594 383648153 316871290 152921535 519009874 986805450 47482121 800291491 751752850 864585096 156808760 341414150 450347125 522424434 582469035 436787790 570070808 146424379 260911309 103009685 638742250 857565825 230804417 695207186 664512439 444203972 275295724 690954096 794928588 193810929 622124032 606750644 965005012 147634583 910394182 175581350 521964735 767176276 195638543 907272114 220709871 637921295 253344779 448635629 616339833 390551090 983203475 310085696 340096943 439629609 790782232 920745740 479171852 306761470 326370986 764272786 361705268 124157058 790539792 961218667 112704684 671312273 787324912 389445446 552792614 983721757 368210127 48022506 356997594 764387347 354637298 756389869 422433350 465827609 176114172 71262730 473494062 829089591 269906377 885610166 507058157 197224012 411087859 103974625 414015220 228717917 765421227 633570989 127868370 202756448 691337094 773532084 259519040 622576910 127086779 549547488 398604055 988399676 160813141 905860419 594726496 229822566 793522635 544404533 624491421 444044046 740994064 472794350 122534689 466563760 950745488 765172274 457437904 73802109 381786514 685226216 874008695 855523020 561877274 239335965 781506644 209450410 772463237 458298756 203653997 758929056 500353806 391756776 537624227 573812838 94216107 182592719 727170816 655767007 145513385 323218484 102339117 46951539 830329965 896726330 335070712 566877122 822763123 614815501 736741416 573398300 491482289 537797394 683032709 807162252 154453798 713571934 264148911 703533677 792205591 363807814 609056132 868194152 936496667 940385226 318090498 88597703 243982705 93973950 502511703 273444877 605024918 335056438 491754144 745195841 578431241 524769171 16625816 57743431 150119956 317957119 837956394 980034127 5953114 999613878 914337595 891641757 465170859 249170541 942605380 71141395 278351004 593879691 836272305 593995592 962639568 794716973 344419585 257946592 995781035 587064107 400140036 751944702 913219322 135735661 460072695 213943153 21669881 997637042 394608679 317659983 879122563 344454160 434623539 147090810 245234330 295030313 745689995 184492004 501794980 490799595 621480867 65977023 277830324 991748743 827255672 246439726 11222102 558438313 797907453 861611255 537203512 58065844 766404586 843330782 434666672 221080528 769617560 825226647 465977030 44046591 430752929 761312168 517095057 723165697 733232848 743918891 475875935 806078381 191359980 832049804 439683212 346321581 28769748 590946621 854849280 656796505 369783673 751488258 798032105 997796362 170525013 433900363 957585282 533313446 31118416 313969148 957125147 307114277 101205065 42509569 490929338 559226085 405360263 298702232 341666583 719829914 165287386 950650658 785621185 912112256 171025651 882937572 380177238 806060221 835047843 76824008 491045263 533644752 489047847 994081981 15424385 311448450 581862947 623894056 38832322 207019361 441761036 321753769 86694334 66510960 808615375 135032909 341701504 311532723 574326992 592307244 964520981 368261682 139014896 89698807 451180980 873288653 61134969 132605118 864161506 469108189 407800193 823557028 532915775 292388540 75886435 535285048 904041033 256929622 408102548 298369259 774052029 62222757 284898579 916146489 290219609 303752095 910252879 278562428 875390638 850393525 492592188 832672749 448746489 352258768 383356787 597265072 967443696 682545588 515006913 412420685 221607821 643031268 801726240 978802147 507501863 51219784 637322565 633266785 596379746 364885507 789826899 787763023 495888606 666895141 25583664 18238682 335959440 463237632 73494545 95305520 577422628 702800783 306342984 435770201 655309000 234142007 387121186 741866064 122637970 724746096 446025739 675169329 400172031 496628394 229588421 951009846 828747886 789145378 736997755 840716173 887491165 600844095 757329068 863666115 328763046 314735483 828446724 669956291 114739709 407283325 132123588 173207303 39471712 542615116 411163999 897354128 521845740 687644550 264609158 522671938 312282005 860403318 673797664 681586590 602785953 463550471 656427285 577334319 20521651 146322320 45464714 889298957 484454287 75573149 934954175 6492413 676800352 700679999 520039452 203820145 596893929 443334477 128827982 574955798 218656602 12084073 974366557 655752255 220113150 735388491 264639127 659024013 483665260 754056910 569078841 771567168 961825722 258121612 892692081 456024926 144866246 592277585 106394761 550912239 349208497 633268756 488575938 238035791 234681816 702616652 232468908 553263079 29091585 618203722 210713858 494145787 536341527 705619132 729469704 387134467 248729461 799582911 980556845 716454607 361481030 371674508 327382194 99964643 100995945 536321135 456106576 293343321 399002768 282638430 460829828 632906280 310939905 223792915 997541851 310195270 550981164 358816549 912118448 153094300 685820666 295090884 641244550 791100690 996131047 660569695 125250644 566466206 626184149 478979344 700735776 527091454 717360793 355627965 99141028 823007284 691867583 470450738 512437093 85932695 972215683 671359933 204485033 649430259 884887602 719244913 804195653 229025962 674175793 880064830 822721647 216746467 828830967 660494051 557855992 320784183 598233672 62560768 933005508 9970057 642237093 455977541 534104661 899629549 541780956 927355697 269427136 820530479 632892354 957171852 312609920 773301991 339750331 601242264 895079964 91746663 651319222 977540452 910600831 778502559 55052931 666084917 166106536 80863191 484761375 938173993 177493470 369213798 463465029 625673345 693351264 248987360 489003188 635746503 27195080 292884513 34556746 437711808 519878239 119033036 15706747 826441300 838726501 965637096 809267995 868015481 78209456 969121023 173387693 53836002 529098971 356670025 668878869 13496223 691186889 542584534 11554196 193884218 911864783 329104953 127221017 861914530 172049872 166421468 769954095 883464616 909938489 541316441 905669926 545194837 930308955 140772201 368860009 687516328 239831304 230567788 636642965 964273877 591872991 125241265 646467806 382387009 671124023 501458783 497861579 374956048 958087011 652734755 80734065 39267211 185569366 676489575 864025110 874480702 843005000 650954691 601123817 401781493 523107676 662165307 283213248 581526063 12174671 937502561 17908352 396019398 43385777 995281658 939978513 552981822 904042455 328720898 409090059 481674235 245696885 87347350 977551934 224199653 245500937 396058988 683359083 51378338 969404299 538725788 145726674 26630816 726844281 256695682 795506702 808187765 961050890 437892493 320361916 192366295 61974450 113325623 234543265 143983577 911657325 151273589 305629292 938700722 990577127 435431619 407891492 94075647 725507931 884040566 672172632 277112668 904142453 474923067 94410401 814423725 901852386 77882892 202334552 307328287 840040823 166166011 364882218 117169596 329145882 959252793 289373024 666542900 712905813 723637537 919556066 190245866 956972830 517441632 404628554 780074614 398670800 787515268 606667266 343972554 165696714 681735898 838242467 652780044 880123877 57699110 969820690 33665846 350403722 992849619 795065493 945345594 906269396 92813607 345186735 312730255 902291755 345366563 376871143 790393897 898889351 250645920 248731690 99254110 280938441 722524218 417799789 379489874 654830009 481240902 274517484 860664063 643630394 187868398 90452770 14197291 791190471 784588804 988807250 792501215 481778092 494003125 895464244 218322305 289259927 263448891 812894656 581551285 789434331 698826560 621368687 265010951 526340528 312165051 350224968 424898084 273055435 942928458 535809200 309333288 585435937 344280554 201526708 58282192 50918122 318462798 100164529 189430738 577643745 279624037 121563257 584367091 242925287 83075336 240683129 498030473 499128664 542106658 541521178 977729294 124900668 845131627 854437397 77612987 602864263 537364077 38874793 787473223 839264713 194416902 861933932 428407245 465215254 379898187 971132987 763754734 240354125 708443619 125653183 14654750 56480978 431289935 373406334 557952358 946706287 804855519 318876656 364310457 416751168 272094461 739808823 341637437 378035577 827793590 159953931 714817113 400578552 199922783 494299839 715835559 636699103 242790967 855031387 897497301 503240580 668900814 29782773 307697766 263434344 915780096 19604832 546328027 994890629 159453241 715605700 767675559 845408987 744936945 45692399 103693142 125594672 462590399 917352610 914505578 654901105 395369058 696209977 837085612 355967853 687664667 978012561 464151090 725459389 633911947 111666126 110912071 461828604 264775420 925505868 193331270 431382864 402128789 581999433 502463156 116442424 949403139 913801244 697843008 977801135 103362944 618940400 831308914 925893358 38874366 532494787 703423908 20715538 783002555 558719423 807532213 195654585 432651019 753849571 804936229 245624649 331633966 841562893 212544373 221397325 911026511 268004162 43515521 309136740 364366025 711898705 238460615 327165087 528653940 283779067 835807978 399077498 896136272 104038334 143797042 119037468 315992304 330009489 910988411 226215115 82485424 718562110 811756884 510251150 845471919 202089092 817622267 977304844 868258724 414093335 357137367 19311918 970214276 741308250 275788499 522659098 741034943 93551504 530565091 566076865 654089665 931108377 853149067 991353858 151632298 123365560 298221805 544183899 397050203 596998705 41972408 364998809 690552969 313685204 20342818 174603611 451169410 570887624 448244966 66553825 799632537 372787416 954048809 681141245 709740276 272633965 620717166 934950641 793162062 187893062 532482075 453840886 545576007 508695905 729027143 531484695 816754056 768032059 804822338 796053203 704990111 335623714 963254323 315686946 738116843 696223131 374012661 714948577 326846423 134948565 656135379 105071218 868367838 195465080 402839533 396866247 788872233 304238252 370553548 518154899 489747855 510346728 713523014 634731582 815153815 167943033 479595715 376670222 437533058 542519038 587300611 411933616 177800186 601393903 636200447 264140240 449557676 113902138 147616978 17347970 123529712 832270630 998153071 736075542 109345320 633331096 184863677 689349478 278670780 709571574 290672670 251597218 454135567 212037261 396509052 719654295 756408152 781830282 431262083 699186809 836568328 782411948 211254958 859716127 733968103 628378996 363833012 513715307 152034950 79683610 813507339 38597571 925541535 505966642 574974982 357806666 938135881 360300273 338101897 643675035 262415288 45479979 343149915 262635644 739551203 781979635 729005043 680646202 983572838 436960193 257588315 646286415 846470532 340838836 96746651 104934400 128084000 396981078 950947501 598804989 70162337 930724929 505715357 906385870 49455531 352007263 246943251 63856577 971595544 823394760 415582990 513168510 928224722 719268908 678599132 826420052 184673706 209394513 157242708 172462331 543565114 341896435 523076143 631457032 309349205 235340253 894345486 686203701 680015718 195946960 353402111 584474704 975407817 780271149 243276628 19343489 820061858 580717108 478840774 127240454 257513982 388491226 852027233 529878995 692044429 945281394 751148742 486232370 26368745 898390371 867808110 436739525 754137300 429147393 386349505 174511308 899136753 978340372 326125778 395334050 664903418 370356859 422742110 218808630 394625493 204571763 83260114 131434884 298932640 535592306 666037818 444463392 15590208 153475251 694731867 517405432 312358333 70436927 244384239 227769376 896925736 674132273 459981548 920225675 58364648 508411788 254128857 453370366 869029545 190887985 725471376 13583608 597868221 350240406 732890135 908611741 10326175 375328455 668019100 220210834 850147587 394568565 389518942 1718852 127306246 699674596 62864970 169131343 185810071 89988552 819493522 359389038 930145663 579726783 706228022 138018997 562178519 824414024 402901298 138699225 918101605 280058302 352199192 248298554 742609522 227121879 876418953 663270515 811248759 483890451 67016113 637822713 584330311 304332828 545058113 534962002 907442994 460331308 987091987 427498211 754535381 691889157 885853828 92774973 226943634 668714032 53226605 697453501 807943946 615736146 27543982 953566206 725246394 118070668 926639081 314793735 463577715 152381545 832899099 698091228 544655407 997598495 542733732 781702857 267442283 684364403 593445947 722795375 151420332 845352286 896780160 7227450 640235069 258195986 719316835 413959783 621000151 542618821 583602346 745632280 128114990 472709530 988149579 754761176 33495082 772439149 654399324 475077570 481248046 354439199 755286550 98636521 75382194 489572902 292486290 426938828 268833613 799569885 338049289 61975132 711273706 844792210 830349715 579121992 832562373 570349918 857601004 1390349 976237345 751105509 998546682 105436882 735669634 2036762 519901628 564981161 757038698 575695765 404826365 789264816 72151796 411780454 97225515 278626337 487535581 141892305 177099063 254060362 441323401 298022905 155509046 731168844 474131934 918382127 452123455 310100448 555440492 685187827 470734949 445537040 218772067 444822753 581717145 220096637 154914121 895733709 362253834 209353208 990906154 331726198 2304994 264769760 952165164 146321134 366499607 213843254 523062631 992753890 808220283 372450793 520077975 880231223 535809428 246585707 556044581 106190722 555461411 966007084 624681028 147523673 944817744 919210702 979405932 102965807 886672349 108197666 490621784 109473288 616838691 485543530 500843513 344938228 613107475 164554628 124509258 163810371 183009446 467097280 57708797 146131100 8130084 879412336 178978653 462658967 222875410 21170288 672466870 300216565 999974820 23886906 666903555 414760276 609530171 52748370 735337472 60121148 470444324 843061721 53613264 335824920 871011527 57340269 902926648 239090591 166513015 574349031 302006451 273561953 993732163 112517529 177365022 425315811 123473737 187383885 640381545 126756797 423876233 411684577 982452569 426249176 621035064 136655123 206989109 212976995 624263807 119476760 574799237 519772517 358932479 118114931 708650537 492595753 879178214 644254819 827193872 709448139 798926863 988706797 285574733 782226938 954532153 830932 193406412 465641918 540264091 131066872 373063263 314046127 767398874 284909981 81881127 584719723 842610834 419528538 238205861 897142627 438796673 389793566 410549057 598386108 805216080 885015389 548539809 975430046 476158520 799401314 729574763 786330001 163140641 782622768 729487529 265220916 44513751 754800218 359823082 291653680 167829628 977793623 37094752 174193136 576393266 479856441 734750050 764856479 47639162 123121696 700895624 161477899 130040070 595223933 752047048 776767202 623475131 293984147 65993112 293510105 751505708 56258340 565731935 958536556 360598309 412882433 604476434 645919697 866738407 549984603 896524126 597777406 62220235 871628237 223332737 524969825 263275542 194602851 270573568 217038587 911304014 843772225 853533559 157090418 284149502 44793547 462415362 385097825 283483049 123937162 6889949 16466966 407420971 151371511 466943378 931955078 139063951 168497733 336178679 73929586 548556406 894503420 816927301 13414913 549421931 443707549 868698220 190589615 378809683 302719119 816337691 551486488 249730463 540229100 668787817 209643127 355433984 67902960 288923452 843752717 756854793 644377698 470473723 952640823 224848068 127657549 226244536 845185083 710700382 775046644 244721014 693766537 449807335 290601842 584786472 833550080 327970885 258656495 447268482 413309097 435625832 34205428 183624794 905198500 641910093 987544589 910790575 902352144 962156009 828694044 965535371 102274122 712682518 780760907 430039845 472035104 802067119 129105525 614837630 432478620 986640262 885390608 298420534 741520280 141196756 897649202 53964084 106277803 30457854 37757700 415433962 219218051 754104610 141241151 38817177 601293314 431132680 792924338 89507679 228187950 275846331 88245483 631495121 814772443 506564504 872056263 731705197 730254046 971252963 969199355 486246798 526268996 219041069 96487964 996988278 100612359 456785106 837718295 569962552 275978097 184528775 372241287 640363035 949003230 343954795 339056042 554286387 689708869 74371080 557931724 83213870 898287491 892060562 95175796 990683545 486774075 385821174 25597052 694578213 101868227 554400743 256937036 846722628 604813404 577437522 637318631 897663054 304815576 491686663 800361959 152960720 275938169 805173032 782115939 364861551 430107259 563794269 56333426 41287955 987143624 851221276 503591421 367096053 630615645 581927699 314367566 717928922 453052096 293402020 473837156 921040819 617775896 196149960 728022043 313137947 850315568 50553328 318846323 908433333 915620013 124005832 433778347 437552122 533133292 859174760 556155977 226962082 303557259 998632964 394212018 19053691 221647868 921184966 381221585 771309950 830359628 735940408 101948875 860946908 865117000 544798857 134500213 24346484 498578721 467650002 899224107 470230756 468748911 230627118 150016773 491277358 604247408 625130291 23814533 532708772 787850903 544701504 147616529 43028339 195628650 715036269 254267998 630233473 335883775 916780002 218577767 859436301 835724904 610073076 328801666 355243165 379646329 31511441 364127118 697629689 719470037 277213483 584166583 203756406 889614127 46241943 887162905 970427768 534405390 539469433 412075747 983521858 785767228 705274757 998294726 541190276 870918698 577794575 716376873 248094151 584264968 358580112 694970063 355471612 477999598 213908689 673071678 477730376 594019433 538597558 978388172 458365521 587314373 984342946 6073518 357172456 173661763 25144275 410283472 341921335 591404038 591761323 28484284 243590430 521876382 341019205 519289640 155398893 643374230 852821220 970171041 589973075 805031962 246337178 636117318 926475896 998823122 290302237 980101968 131343964 524388069 54283796 324728677 448806350 203815589 145915707 693141008 38261245 544898446 102089661 477978224 136428646 788070426 172683416 768215141 620013699 254808702 883178901 733643222 672638000 949662674 478837957 3301163 858809499 211589039 520920607 450886072 601454205 325096573 957993471 855731272 236283780 295049724 914336862 566567589 259731194 787446704 71836781 529648719 54855445 458618106 319629552 221568662 227845274 17904275 127161350 944716252 958717289 87464663 971510757 727838050 319957060 615064780 127102294 234951828 943135549 834145584 796231817 949247414 6518552 521116820 156816523 32111873 296751701 318116063 730300140 996829510 465149274 185904658 660738209 882090274 860144412 534614025 581205917 141219727 112615693 749361975 46561062 196818833 575577854 344074731 684070574 369254677 608907455 797092838 703840213 802889227 92825037 426174853 152995708 504313866 196810481 626810233 332274194 922308052 314003775 55413065 559419790 182930884 518439930 685827015 950026977 939088554 555394703 241913286 309929297 215885016 537189913 277988182 1250552 800181462 737851827 73072965 732548605 432699129 50720898 664813084 278285668 166380732 226376280 444407858 890754478 572020879 967041087 438069471 655648251 318446490 253452340 25545278 906560969 292404359 630860635 295163900 283824103 150092928 606218857 594605998 39150840 42641131 701660560 783452868 177411639 73414177 774601575 798660472 330757031 692799688 626876744 737193647 213813735 969193758 456827331 789524959 752810456 520652428 462907987 531652984 934380459 349638820 947762589 271735225 456195204 695864869 949403746 753660663 466738364 533358517 118244958 188913074 586378366 232893767 941010813 967529506 882428694 314035359 357964313 73184242 614503525 851932581 452062836 529941009 476805750 954467133 393251166 780885789 886195291 109866261 504954742 423618798 664732257 456934144 456838101 587603207 649059215 423746325 90757388 55021778 904535340 400967950 256687059 997287552 514719874 365980981 258204132 772551654 534802973 202121505 565530771 631921891 827253937 117475362 254821071 995422870 745743293 536224817 886721633 834297264 134386638 457536260 897502911 502450632 329877287 2980719 471415024 692526542 939096530 670385926 994427327 235223591 542171889 385199038 34380094 695123450 326326731 848072765 810150975 372595339 904001334 639188060 209627438 13779671 65970975 378750970 146206452 771227978 188775450 758029718 791387470 877463366 178640619 472073113 656627684 650966947 887300990 295059302 106739967 37254529 986344775 955717749 828590491 922283005 294221392 486944211 516191027 919274299 938148525 352841771 455989410 4047803 159829784 717641368 18809257 643660499 968440389 739603807 389499093 436751711 59845935 997708753 465823559 993737692 270862189 698908589 800547188 744588517 807892881 468997890 32149189 636400974 783728592 694848683 958088349 572823071 675823587 494387722 122380857 543466656 580322434 56335392 376932632 182210656 507547883 146090545 761259319 940755094 71019816 574068577 279012137 246401147 775332773 720232642 421367949 106898672 52724950 276443642 295019932 275598444 7276675 697156981 368704882 9812212 676687746 112877159 503260273 910063310 762468797 510623631 46468651 620475493 665836617 195571771 787006212 176618010 927496129 46300460 392979047 128722147 283455183 54887400 111980175 626018282 64084946 290564395 86230559 221653973 796603426 756970976 836975768 189953050 944109969 857106171 148534352 39182428 477269583 494472595 115764029 972310824 861193465 970083280 771949351 379499623 255465633 75614194 55183139 551984257 79030110 368110827 633453408 732172706 275237051 572225967 336787654 803783260 70837264 761249011 553599943 826343788 833631036 26469996 958926803 800553215 102866878 298787737 210985654 95029200 855676255 561184003 806402795 456473717 145098115 836354897 127277557 621383815 763779038 693532362 575406220 870591417 424566908 17840388 27192597 201651763 425623855 184044871 645063184 624302871 261692035 248753148 674840291 81618714 578325227 87425896 255753767 375572424 730431847 177217676 758342152 36149745 574070255 336493812 261523564 753097632 391593559 95330838 340392038 375781902 67486685 468231333 673737568 387430845 182048380 164810730 650123939 488963773 770840099 110476295 541242047 164559208 210262940 73922679 787024127 221933558 910394439 539762189 189270021 739298512 295382827 828361660 426571247 564986208 777513577 595136677 708886260 492982729 103978716 244412478 379676793 921561927 638998055 943697270 286924855 610592269 724011873 561497377 372884984 247113931 579634431 100712123 19773439 931916757 361430288 367663168 870451460 163691757 275222926 961739737 724959294 697727373 612282423 87878762 334595295 610753671 334467825 705795541 777955597 884180805 407542521 943208967 50912307 106333908 619717805 131991719 247084006 533558726 286583689 192019400 648844075 374551075 982251710 509774563 195895874 742821342 454524984 83836669 419017669 898662047 815767331 137640344 70322658 705340563 395337653 435200868 839368092 53216622 95034584 43535942 896211122 286122216 476650150 942526895 496102383 269223731 677436274 735711749 810222142 258346778 527653417 290065141 581310101 334666315 461705090 428012124 265653209 742772788 668367368 137684304 452604059 87010757 138798089 239965143 392643391 215291224 688042272 782244528 248015004 654696243 449303056 845721264 792653925 330518949 180804808 885774609 495560478 30998699 27408174 464698823 314956901 182889277 976570573 989179649 387996318 662475279 604253928 122554705 58008401 631018397 327041327 695057999 674412453 494910326 146007393 819559876 499918014 974148808 115380942 436278883 652037197 6492447 193542133 989589285 977681577 669982893 996680086 306532352 488843969 952359753 935287617 478544095 969338078 905126605 698755230 385880583 847892313 345859421 441793520 578926918 548579752 4894623 664232883 229645603 667895193 729465180 971254985 319893045 72325489 703634306 944502019 826345113 714446016 696999331 512885251 77903464 410713546 572551855 41438847 169233291 635549856 225117321 267208679 482275148 430366946 490626597 63832884 905184834 758970258 123909828 172975890 796723435 793401597 893889331 736561400 416327678 906643784 651309082 585618558 965972011 112282198 292134902 864052656 705413139 752116432 484591220 736485821 561679307 777992113 929960000 907646945 574633749 811056218 223177457 44350035 453853624 246316428 182618442 80960107 227670995 626550465 19868139 783665688 477536540 786323816 977275848 751789516 823605458 791905826 375810367 193346669 811630006 987645374 953795555 429958560 370942850 80888592 185161609 461247195 11420765 307398250 30760031 919674685 707676317 410465043 131522781 176341382 647454898 785348326 477032794 698241955 532024176 107938931 620334593 821130728 995132456 162571881 405751325 876053385 461517404 996342848 806162405 440335599 56886575 597093498 764445231 567065294 348122579 740247320 65249843 96277415 750112889 573883512 536041232 625645282 143099578 344077664 407766058 667046380 486103086 391548974 299065473 850262105 736464355 790496628 987769634 268326935 341758852 113587305 355175735 8758375 130458445 587994899 423959650 944021639 463748249 663023208 475103471 356580346 191812488 175806055 285972991 595541390 315166462 481023191 795691036 502935801 111528135 917549299 172659638 401500140 384793587 650184584 554676447 692541728 569688872 275925180 435377581 481459111 30387933 189118241 744779148 397749901 118549401 940407474 939113157 294165652 186515849 709570637 319106485 611922793 280353873 63396627 995057574 931043786 356556445 670258588 645384576 671805017 642294490 499663875 930359080 477393494 108415298 579212136 645499446 107535028 654748669 919810377 621518382 428867534 566144494 284548559 186192426 363680682 77212944 511593155 861525083 502399231 46362370 433207772 239858296 590050876 320484329 896924474 601714662 770314840 615783383 983372757 137108171 747249631 267600493 264557034 649582763 895581835 215299272 160872239 329666491 439646437 265677951 60563716 109108462 546510483 697534312 68681218 399053075 826391383 164608187 362481843 439715516 261046799 505917228 795831115 603535455 150677710 490987234 809254328 653420744 777502770 959041889 810132979 429416833 522221448 759406702 895945192 19964321 960231711 149951539 439792104 756867254 386267734 535561281 202026103 4405683 844684131 524729768 747711305 138139499 485845636 959598698 596608209 442736479 403029778 663930714 367325221 940309958 657956565 886039544 993666331 583240707 542282678 830948174 806362654 434387493 467740231 403420425 529205825 871796530 414416997 947361910 469072094 622255689 491993512 561053298 240267417 353833160 474366053 667261661 910523208 871495935 234032601 348334658 260364337 963034218 750822925 945795488 673022815 515647286 967350003 315609294 455472979 251300662 923375996 696430163 649987522 515017248 660666560 600662982 856707636 921516925 510175951 567626947 271838986 531857268 66032288 521324071 331857041 824167682 320662156 69968302 838251026 601043169 304591304 279312959 907895130 64612061 881089916 843951513 835662499 614388411 74132267 451875683 941953747 707552871 400430235 440688766 956285463 304732186 420968350 751257495 778554284 255083734 26072411 13399763 926494676 993311656 699699639 162110520 33291146 377973657 724781134 144145806 983001855 485467228 256286684 153462780 814906541 652840432 441841398 372016795 269147991 26681493 186167634 802862346 545259774 133273684 797075926 866758608 375361089 550724860 23147333 928938376 243339639 517294542 475259981 646271403 704909916 497114453 644067891 270208308 950274380 184648432 801599170 434889016 872075952 499231549 522306664 681438118 599063451 971399057 517810563 270407456 45252045 90213607 493086357 241802388 283578860 103666653 716047552 882316731 855917478 780867279 558219847 220558525 698118441 543763787 28049215 95508125 711324245 389254508 468613164 345386847 656393048 609053436 448133145 199708152 464171894 207265709 51176635 614927083 909845552 288474854 817844476 452438722 967536871 193032535 714428916 196692151 983389733 264938944 625340457 464962059 381707570 641094653 69935249 836681918 48442830 767862123 441558867 988951970 426503539 242791124 449876466 625331240 982371476 688713953 594075458 863334570 813894387 526547640 787622459 645307516 848211896 27490861 81570234 645659701 114206202 767325664 690408520 393010782 447849854 956479733 439015622 711847749 142052606 401354263 113639837 307353235 111723794 793288541 563614962 847128940 60845895 343102145 158954644 83038394 611723592 242589952 600913990 174561176 113413236 43374399 480806400 594056136 444913446 313529286 799534165 919279450 492413890 437955408 412906022 30037750 222105917 983966669 74566307 687749438 408873392 441521061 486484222 566726515 959286523 796416180 229616588 612707727 232863932 3418218 423197122 415009391 865791245 158476269 757906459 270801322 943662315 831807040 808192943 262853181 833678756 291717259 817014254 811087623 377008135 695766521 922149450 891159452 971481662 835735443 252448367 267604446 610820080 154384961 810519734 541694306 776905158 692690309 29940691 525041055 678121330 676639979 413246502 94258523 171082952 248858685 784716713 462094818 636023286 8924171 815186519 913447049 348407176 87256594 539753621 470872536 453833482 544210069 137056409 359293249 837884938 830134593 906408691 709129421 997781980 268429282 364665288 956926554 870350285 278947203 903067377 534891009 156187474 264080865 925053378 61002136 14333701 452267449 63828206 458264745 17094751 826172668 183639157 197424669 685082281 311638025 357562545 926280899 553394201 633941947 556352884 795008272 975419847 647758979 352236079 307948861 240619246 229708980 323906808 227308663 967260228 225110765 481066268 771177063 835438907 987383916 784502300 858765016 392028019 713852844 747247121 255696836 78193657 876297548 915466286 173810820 950262072 558951648 271452589 451517958 152022913 258173671 332201664 760823082 182230839 556652521 861858656 667729994 991930136 859548830 863098351 606485443 608064758 784072145 200347379 627369994 617909210 177888148 557892555 753057674 477222605 631162994 242814729 619578207 918042956 643902551 108466007 565483701 839297201 337089792 752133360 706117507 499177220 892346256 811968181 665585617 308588286 347751172 736535409 642611898 757356562 948284258 515434175 392607218 282030886 570371965 506007904 930807624 969754563 3965960 318397455 607616668 211155870 229568670 534354556 295220771 237450502 308320585 644408414 754836902 798344644 761204566 594158079 276888603 780587926 412367438 457820884 673572819 701250899 904096558 762398616 264179118 710563438 481301235 803945349 527662870 748001503 301373122 68154320 671048488 50369006 720450329 929054241 237656734 742099854 661201002 71404476 132952194 293797101 476598815 208928039 320372243 202108371 769519347 953447837 799199175 580927807 439618281 799314318 726238550 224838350 644693486 239102808 97865390 778342244 556991017 130396096 742031235 167365061 281658712 347249149 120253545 30265239 466089948 603798134 816850997 868446239 865103684 969020037 565206888 770563693 670523673 627083623 181688312 696873106 708733997 100624964 406352953 823111863 704275819 802621535 676235311 312400305 948825362 426652223 743108332 988936618 944510068 840755440 933938512 231459911 703491168 168938400 297452807 883967390 189164434 853140439 764541075 125726377 928767035 668480154 874899698 89499822 112447109 467511375 55921837 747080579 419788432 173014861 822652394 70757931 183478511 968145568 31623136 64362325 237210948 725931870 564619310 706403263 412524652 461112273 205604548 493632483